[ create a new paste ] login | about

Link: http://codepad.org/TzClwG0f    [ raw code | fork ]

Plain Text, pasted on Apr 29:
0040A19C  /$  55                    PUSH EBP
0040A19D  |.  8BEC                  MOV EBP,ESP
0040A19F  |.  83EC 14               SUB ESP,14
0040A1A2  |.  53                    PUSH EBX
0040A1A3  |.  8B45 08               MOV EAX,DWORD PTR SS:[EBP+8]                           ;  EAX = soul code
0040A1A6  |.  56                    PUSH ESI
0040A1A7  |.  83C0 04               ADD EAX,4                                              ;  sets EAX to the last 12 digits of the soul code
0040A1AA  |.  57                    PUSH EDI
0040A1AB  |.  BE E7D10000           MOV ESI,0D1E7                                          ;  constant
0040A1B0  |.  6A 08                 PUSH 8                                                 ; /maxlen = 8
0040A1B2  |.  8D4D EC               LEA ECX,DWORD PTR SS:[EBP-14]                          ; |sets ECX to buffer
0040A1B5  |.  50                    PUSH EAX                                               ; |src
0040A1B6  |.  51                    PUSH ECX                                               ; |dest
0040A1B7  |.  FF15 30B6D800         CALL DWORD PTR DS:[<&MSVCRT.strncpy>]                  ; \strncpy
0040A1BD  |.  83C4 0C               ADD ESP,0C
0040A1C0  |.  8D4D EC               LEA ECX,DWORD PTR SS:[EBP-14]
0040A1C3  |.  C645 F4 00            MOV BYTE PTR SS:[EBP-C],0                              ;  this ensures that only the first 8 digits are on the buffer
0040A1C7  |.  6A 0A                 PUSH 0A                                                ; /radix = A (10.)
0040A1C9  |.  BB 48D44D00           MOV EBX,Souls.004DD448                                 ; |
0040A1CE  |.  6A 00                 PUSH 0                                                 ; |endptr = NULL
0040A1D0  |.  51                    PUSH ECX                                               ; |s
0040A1D1  |.  FF15 14B6D800         CALL DWORD PTR DS:[<&MSVCRT.strtoul>]                  ; \strtoul
0040A1D7  |.  83C4 0C               ADD ESP,0C
0040A1DA  |.  8BF8                  MOV EDI,EAX
0040A1DC  |.  81FF 08070000         CMP EDI,708                                            ;  are the first 8 digits smaller than 00002055d ?
0040A1E2  |.  7C 05                 JL SHORT Souls.0040A1E9
0040A1E4  |.  BB 88D44D00           MOV EBX,Souls.004DD488
0040A1E9  |>  81FF E40C0000         CMP EDI,0CE4                                           ;  are the first 8 digits smaller than 00058380d ?
0040A1EF  |.  7C 05                 JL SHORT Souls.0040A1F6
0040A1F1  |.  BB C8D44D00           MOV EBX,Souls.004DD4C8
0040A1F6  |>  33C9                  XOR ECX,ECX                                            ;  initializing counter
0040A1F8  |>  33C0                  /XOR EAX,EAX                                           ;  crypto
0040A1FA  |.  8B55 08               |MOV EDX,DWORD PTR SS:[EBP+8]
0040A1FD  |.  C745 F8 64000000      |MOV DWORD PTR SS:[EBP-8],64                           ;  another constant
0040A204  |.  8A040A                |MOV AL,BYTE PTR DS:[EDX+ECX]
0040A207  |.  83E0 7F               |AND EAX,7F
0040A20A  |.  8BD0                  |MOV EDX,EAX
0040A20C  |.  D3E0                  |SHL EAX,CL
0040A20E  |.  0FAFD6                |IMUL EDX,ESI
0040A211  |.  33F2                  |XOR ESI,EDX
0040A213  |.  8B148B                |MOV EDX,DWORD PTR DS:[EBX+ECX*4]
0040A216  |.  03F0                  |ADD ESI,EAX
0040A218  |.  41                    |INC ECX
0040A219  |.  8BC6                  |MOV EAX,ESI
0040A21B  |.  8955 FC               |MOV DWORD PTR SS:[EBP-4],EDX
0040A21E  |.  99                    |CDQ
0040A21F  |.  F77D F8               |IDIV DWORD PTR SS:[EBP-8]
0040A222  |.  0155 FC               |ADD DWORD PTR SS:[EBP-4],EDX
0040A225  |.  2B75 FC               |SUB ESI,DWORD PTR SS:[EBP-4]
0040A228  |.  83F9 0C               |CMP ECX,0C
0040A22B  |.^ 7C CB                 \JL SHORT Souls.0040A1F8
0040A22D  |.  81E6 FFFFFF7F         AND ESI,7FFFFFFF
0040A233  |.  81FF E40C0000         CMP EDI,0CE4
0040A239  |.  7D 12                 JGE SHORT Souls.0040A24D
0040A23B  |.  B9 2FFF0000           MOV ECX,0FF2F
0040A240  |.  8BC6                  MOV EAX,ESI
0040A242  |.  99                    CDQ
0040A243  |.  F7F9                  IDIV ECX
0040A245  |.  8BF2                  MOV ESI,EDX
0040A247  |.  81E6 FFFF0000         AND ESI,0FFFF
0040A24D  |>  8B45 0C               MOV EAX,DWORD PTR SS:[EBP+C]
0040A250  |.  85C0                  TEST EAX,EAX
0040A252  |.  74 02                 JE SHORT Souls.0040A256
0040A254  |.  8938                  MOV DWORD PTR DS:[EAX],EDI
0040A256  |>  8BC6                  MOV EAX,ESI
0040A258  |.  5F                    POP EDI
0040A259  |.  5E                    POP ESI
0040A25A  |.  5B                    POP EBX
0040A25B  |.  8BE5                  MOV ESP,EBP
0040A25D  |.  5D                    POP EBP
0040A25E  \.  C3                    RETN


Create a new paste based on this one


Comments: