從堆內存中解析堆中所有handler大小,並用16進制數據記錄

先貼出堆內存的信息

03490000    60              PUSHAD
03490001    9C              PUSHFD
03490002    FC              CLD
03490003    E8 00000000     CALL 03490008
03490008    5F              POP EDI
03490009    81EF 98244000   SUB EDI,402498
0349000F    8BC7            MOV EAX,EDI
03490011    81C7 00224000   ADD EDI,402200
03490017    3B47 2C         CMP EAX,DWORD PTR DS:[EDI+2C]
0349001A    75 02           JNZ SHORT 0349001E
0349001C    EB 13           JMP SHORT 03490031
0349001E    8947 2C         MOV DWORD PTR DS:[EDI+2C],EAX
03490083  ^ FF2487          JMP DWORD PTR DS:[EDI+EAX*4]
03490086    61              POPAD
03490087    C3              RETN
03490088    FF3424          PUSH DWORD PTR SS:[ESP]  ;Handler起始位置
0349008B    FF3424          PUSH DWORD PTR SS:[ESP]
0349008E    59              POP ECX
0349008F    83C4 04         ADD ESP,4
03490092    81C4 04000000   ADD ESP,4
03490098    FF3424          PUSH DWORD PTR SS:[ESP]
0349009B    8B0424          MOV EAX,DWORD PTR SS:[ESP]
0349009E    83C4 04         ADD ESP,4
034900A1    55              PUSH EBP
034900A2    89E5            MOV EBP,ESP
034900A4    81C5 04000000   ADD EBP,4
034900AA    81C5 04000000   ADD EBP,4
034900B0    872C24          XCHG DWORD PTR SS:[ESP],EBP
034900B3    5C              POP ESP
034900B4    F7F1            DIV ECX
034900B6    68 D2280000     PUSH 28D2
034900BB    891424          MOV DWORD PTR SS:[ESP],EDX
034900BE    50              PUSH EAX
034900BF    9C              PUSHFD
034900C0  ^ E9 83FFFFFF     JMP 03490048
034900C5    66:8B0424       MOV AX,WORD PTR SS:[ESP]
034900C9    56              PUSH ESI
034900CA    54              PUSH ESP
034900CB    8B3424          MOV ESI,DWORD PTR SS:[ESP]
034900CE    81C4 04000000   ADD ESP,4
034900D4    81C6 04000000   ADD ESI,4
034900DA    83C6 02         ADD ESI,2
034900DD    873424          XCHG DWORD PTR SS:[ESP],ESI
034900E0    5C              POP ESP
034900E1    66:110424       ADC WORD PTR SS:[ESP],AX
034900E5    9C              PUSHFD
034900E6  ^ E9 5DFFFFFF     JMP 03490048
034900EB    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
034900EE    57              PUSH EDI
034900EF    54              PUSH ESP
034900F0    5F              POP EDI
034900F1    55              PUSH EBP
034900F2    BD 04000000     MOV EBP,4
034900F7    01EF            ADDp EDI,EBP
034900F9    5D              POP EBP
034900FA    81C7 04000000   ADD EDI,4
03490100    873C24          XCHG DWORD PTR SS:[ESP],EDI
03490103    5C              POP ESP
03490104    FF3424          PUSH DWORD PTR SS:[ESP]
03490107    58              POP EAX
03490108    57              PUSH EDI
03490109    89E7            MOV EDI,ESP
0349010B    81C7 04000000   ADD EDI,4
03490111    55              PUSH EBP
03490112    BD 04000000     MOV EBP,4
03490117    01EF            ADD EDI,EBP
03490119    5D              POP EBP
0349011A    873C24          XCHG DWORD PTR SS:[ESP],EDI
0349011D    5C              POP ESP
0349011E    F7F9            IDIV ECX
03490120    50              PUSH EAX
03490121    54              PUSH ESP
03490122    58              POP EAX
03490123    05 04000000     ADD EAX,4
03490128    56              PUSH ESI
03490129    BE 04000000     MOV ESI,4
0349012E    29F0            SUB EAX,ESI
03490130    5E              POP ESI
03490131    870424          XCHG DWORD PTR SS:[ESP],EAX
03490134    5C              POP ESP
03490135    891424          MOV DWORD PTR SS:[ESP],EDX
03490138    50              PUSH EAX
03490139    9C              PUSHFD
0349013A  ^ E9 09FFFFFF     JMP 03490048
0349013F    FF3424          PUSH DWORD PTR SS:[ESP]
03490142    58              POP EAX
03490143    52              PUSH EDX
03490144    89E2            MOV EDX,ESP
03490146    81C2 04000000   ADD EDX,4
0349014C    83C2 04         ADD EDX,4
0349014F    871424          XCHG DWORD PTR SS:[ESP],EDX
03490152    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03490155    290424          SUB DWORD PTR SS:[ESP],EAX
03490158    9C              PUSHFD
03490159  ^ E9 EAFEFFFF     JMP 03490048
0349015E    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03490162    53              PUSH EBX
03490163    89E3            MOV EBX,ESP
03490165    81C3 04000000   ADD EBX,4
0349016B    56              PUSH ESI
0349016C    BE 02000000     MOV ESI,2
03490171    01F3            ADD EBX,ESI
03490173    5E              POP ESI
03490174    871C24          XCHG DWORD PTR SS:[ESP],EBX
03490177    8B2424          MOV ESP,DWORD PTR SS:[ESP]
0349017A    D32424          SHL DWORD PTR SS:[ESP],CL
0349017D    9C              PUSHFD
0349017E  ^ E9 C5FEFFFF     JMP 03490048
03490183    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03490187    53              PUSH EBX
03490188    89E3            MOV EBX,ESP
0349018A    57              PUSH EDI
0349018B    BF 04000000     MOV EDI,4
03490190    01FB            ADD EBX,EDI
03490192    5F              POP EDI
03490193    52              PUSH EDX
03490194    BA 02000000     MOV EDX,2
03490199    01D3            ADD EBX,EDX
0349019B    5A              POP EDX
0349019C    871C24          XCHG DWORD PTR SS:[ESP],EBX
0349019F    5C              POP ESP
034901A0    D31424          RCL DWORD PTR SS:[ESP],CL
034901A3    9C              PUSHFD
034901A4  ^ E9 9FFEFFFF     JMP 03490048
034901A9    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
034901AD    83EC 04         SUB ESP,4
034901B0    890424          MOV DWORD PTR SS:[ESP],EAX
034901B3    89E0            MOV EAX,ESP
034901B5    05 04000000     ADD EAX,4
034901BA    83C0 02         ADD EAX,2
034901BD    330424          XOR EAX,DWORD PTR SS:[ESP]
034901C0    310424          XOR DWORD PTR SS:[ESP],EAX
034901C3    330424          XOR EAX,DWORD PTR SS:[ESP]
034901C6    5C              POP ESP
034901C7    66:D31424       RCL WORD PTR SS:[ESP],CL
034901CB    9C              PUSHFD
034901CC  ^ E9 77FEFFFF     JMP 03490048
034901D1    52              PUSH EDX
034901D2    50              PUSH EAX
034901D3    B8 1C000000     MOV EAX,1C
034901D8    89C2            MOV EDX,EAX
034901DA    8B0424          MOV EAX,DWORD PTR SS:[ESP]
034901DD    81C4 04000000   ADD ESP,4
034901E3    01FA            ADD EDX,EDI
034901E5    51              PUSH ECX
034901E6    B9 00000000     MOV ECX,0
034901EB    01D1            ADD ECX,EDX
034901ED    8B01            MOV EAX,DWORD PTR DS:[ECX]
034901EF    59              POP ECX
034901F0    5A              POP EDX
034901F1    53              PUSH EBX
034901F2    81EC 04000000   SUB ESP,4
034901F8    890424          MOV DWORD PTR SS:[ESP],EAX
034901FB    B8 8B1A0000     MOV EAX,1A8B
03490200    89C3            MOV EBX,EAX
03490202    58              POP EAX
03490203    C1E3 06         SHL EBX,6
03490206    F7D3            NOT EBX
03490208    F7DB            NEG EBX
0349020A    4B              DEC EBX
0349020B    81EB 32060000   SUB EBX,632
03490211    81F3 8F9C0600   XOR EBX,69C8F
03490217    21D8            AND EAX,EBX
03490219    5B              POP EBX
0349021A    09C0            OR EAX,EAX
0349021C    0F84 24000000   JE 03490246
03490222    57              PUSH EDI
03490223    54              PUSH ESP
03490224    5F              POP EDI
03490225    81C7 04000000   ADD EDI,4
0349022B    81EF 04000000   SUB EDI,4
03490231    873C24          XCHG DWORD PTR SS:[ESP],EDI
03490234    5C              POP ESP
03490235    891C24          MOV DWORD PTR SS:[ESP],EBX
03490238    BB FE000000     MOV EBX,0FE
0349023D    215F 1C         AND DWORD PTR DS:[EDI+1C],EBX
03490240    5B              POP EBX
03490241    E9 27000000     JMP 0349026D
03490246    81EC 04000000   SUB ESP,4
0349024C    890C24          MOV DWORD PTR SS:[ESP],ECX
0349024F    B9 01000000     MOV ECX,1
03490254    094F 1C         OR DWORD PTR DS:[EDI+1C],ECX
03490257    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
0349025A    53              PUSH EBX
0349025B    89E3            MOV EBX,ESP
0349025D    81C3 04000000   ADD EBX,4
03490263    81C3 04000000   ADD EBX,4
03490269    871C24          XCHG DWORD PTR SS:[ESP],EBX
0349026C    5C              POP ESP
0349026D    89DB            MOV EBX,EBX
0349026F  ^ E9 D4FDFFFF     JMP 03490048
03490274    66:8B0424       MOV AX,WORD PTR SS:[ESP]
03490278    81EC 04000000   SUB ESP,4
0349027E    892C24          MOV DWORD PTR SS:[ESP],EBP
03490281    54              PUSH ESP
03490282    5D              POP EBP
03490283    81C5 04000000   ADD EBP,4
03490289    83C5 02         ADD EBP,2
0349028C    872C24          XCHG DWORD PTR SS:[ESP],EBP
0349028F    5C              POP ESP
03490290    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03490294    83EC 04         SUB ESP,4
03490297    891424          MOV DWORD PTR SS:[ESP],EDX
0349029A    89E2            MOV EDX,ESP
0349029C    81C2 04000000   ADD EDX,4
034902A2    51              PUSH ECX
034902A3    B9 02000000     MOV ECX,2
034902A8    01CA            ADD EDX,ECX
034902AA    59              POP ECX
034902AB    871424          XCHG DWORD PTR SS:[ESP],EDX
034902AE    5C              POP ESP
034902AF    66:85C8         TEST AX,CX
034902B2    9C              PUSHFD
034902B3  ^ E9 90FDFFFF     JMP 03490048
034902B8    AC              LODS BYTE PTR DS:[ESI]
034902B9    28D8            SUB AL,BL
034902BB    81EC 02000000   SUB ESP,2
034902C1    66:891C24       MOV WORD PTR SS:[ESP],BX
034902C5    66:51           PUSH CX
034902C7    B5 16           MOV CH,16
034902C9    88EF            MOV BH,CH
034902CB    66:59           POP CX
034902CD    30F8            XOR AL,BH
034902CF    66:8B1C24       MOV BX,WORD PTR SS:[ESP]
034902D3    83C4 02         ADD ESP,2
034902D6    52              PUSH EDX
034902D7    89E2            MOV EDX,ESP
034902D9    81C2 04000000   ADD EDX,4
034902DF    83EA 02         SUB EDX,2
034902E2    871424          XCHG DWORD PTR SS:[ESP],EDX
034902E5    5C              POP ESP
034902E6    66:891424       MOV WORD PTR SS:[ESP],DX
034902EA    B6 B0           MOV DH,0B0
034902EC    80EE 4B         SUB DH,4B
034902EF    80C6 6D         ADD DH,6D
034902F2    C0E6 1F         SHL DH,1F
034902F5    80C6 64         ADD DH,64
034902F8    80F6 1F         XOR DH,1F
034902FB    30F0            XOR AL,DH
034902FD    66:5A           POP DX
034902FF    28C3            SUB BL,AL
03490301    0FB6C0          MOVZX EAX,AL
03490304    8F0487          POP DWORD PTR DS:[EDI+EAX*4]
03490307  ^ E9 3CFDFFFF     JMP 03490048
0349030C    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03490310    68 1A080000     PUSH 81A
03490315    893424          MOV DWORD PTR SS:[ESP],ESI
03490318    89E6            MOV ESI,ESP
0349031A    81C6 04000000   ADD ESI,4
03490320    81C6 02000000   ADD ESI,2
03490326    873424          XCHG DWORD PTR SS:[ESP],ESI
03490329    5C              POP ESP
0349032A    D22C24          SHR BYTE PTR SS:[ESP],CL
0349032D    9C              PUSHFD
0349032E  ^ E9 15FDFFFF     JMP 03490048
03490333    66:8B0424       MOV AX,WORD PTR SS:[ESP]
03490337    50              PUSH EAX
03490338    89E0            MOV EAX,ESP
0349033A    81EC 04000000   SUB ESP,4
03490340    893424          MOV DWORD PTR SS:[ESP],ESI
03490343    BE 04000000     MOV ESI,4
03490348    01F0            ADD EAX,ESI
0349034A    5E              POP ESI
0349034B    05 02000000     ADD EAX,2
03490350    870424          XCHG DWORD PTR SS:[ESP],EAX
03490353    5C              POP ESP
03490354    66:FF0C24       DEC WORD PTR SS:[ESP]
03490358    9C              PUSHFD
03490359  ^ E9 EAFCFFFF     JMP 03490048
0349035E    FF3424          PUSH DWORD PTR SS:[ESP]
03490361    FF3424          PUSH DWORD PTR SS:[ESP]
03490364    5A              POP EDX
03490365    83C4 04         ADD ESP,4
03490368    81C4 04000000   ADD ESP,4
0349036E  ^ E9 D5FCFFFF     JMP 03490048
03490373    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03490377    53              PUSH EBX
03490378    89E3            MOV EBX,ESP
0349037A    81C3 04000000   ADD EBX,4
03490380    68 BD600000     PUSH 60BD
03490385    891424          MOV DWORD PTR SS:[ESP],EDX
03490388    BA 02000000     MOV EDX,2
0349038D    01D3            ADD EBX,EDX
0349038F    5A              POP EDX
03490390    871C24          XCHG DWORD PTR SS:[ESP],EBX
03490393    5C              POP ESP
03490394    D32424          SHL DWORD PTR SS:[ESP],CL
03490397    9C              PUSHFD
03490398  ^ E9 ABFCFFFF     JMP 03490048
0349039D    52              PUSH EDX
0349039E    55              PUSH EBP
0349039F    BD 415A0000     MOV EBP,5A41
034903A4    4D              DEC EBP
034903A5    C1E5 1A         SHL EBP,1A
034903A8    57              PUSH EDI
034903A9    BF 56750000     MOV EDI,7556
034903AE    31FD            XOR EBP,EDI
034903B0    5F              POP EDI
034903B1    81C5 4F250000   ADD EBP,254F
034903B7    C1ED 08         SHR EBP,8
034903BA    81F5 65FDFFFF   XOR EBP,FFFFFD65
034903C0    89EA            MOV EDX,EBP
034903C2    5D              POP EBP
034903C3    2157 1C         AND DWORD PTR DS:[EDI+1C],EDX
034903C6    5A              POP EDX
034903C7  ^ E9 7CFCFFFF     JMP 03490048
034903CC    FF3424          PUSH DWORD PTR SS:[ESP]
034903CF    58              POP EAX
034903D0    68 821A0000     PUSH 1A82
034903D5    891C24          MOV DWORD PTR SS:[ESP],EBX
034903D8    89E3            MOV EBX,ESP
034903DA    81C3 04000000   ADD EBX,4
034903E0    83C3 04         ADD EBX,4
034903E3    871C24          XCHG DWORD PTR SS:[ESP],EBX
034903E6    5C              POP ESP
034903E7    310424          XOR DWORD PTR SS:[ESP],EAX
034903EA  ^ E9 59FCFFFF     JMP 03490048
034903EF    AC              LODS BYTE PTR DS:[ESI]
034903F0    00D8            ADD AL,BL
034903F2    53              PUSH EBX
034903F3    50              PUSH EAX
034903F4    B0 2D           MOV AL,2D
034903F6    88C3            MOV BL,AL
034903F8    8B0424          MOV EAX,DWORD PTR SS:[ESP]
034903FB    52              PUSH EDX
034903FC    89E2            MOV EDX,ESP
034903FE    81C2 04000000   ADD EDX,4
03490404    81C2 04000000   ADD EDX,4
0349040A    871424          XCHG DWORD PTR SS:[ESP],EDX
0349040D    5C              POP ESP
0349040E    28D8            SUB AL,BL
03490410    5B              POP EBX
03490411    51              PUSH ECX
03490412    66:52           PUSH DX
03490414    B2 84           MOV DL,84
03490416    88D1            MOV CL,DL
03490418    66:5A           POP DX
0349041A    00C8            ADD AL,CL
0349041C    FF3424          PUSH DWORD PTR SS:[ESP]
0349041F    59              POP ECX
03490420    83C4 04         ADD ESP,4
03490423    28C3            SUB BL,AL
03490425    0FB6C0          MOVZX EAX,AL
03490428    66:8B1424       MOV DX,WORD PTR SS:[ESP]
0349042C    53              PUSH EBX
0349042D    54              PUSH ESP
0349042E    5B              POP EBX
0349042F    81C3 04000000   ADD EBX,4
03490435    83C3 02         ADD EBX,2
03490438    53              PUSH EBX
03490439    FF7424 04       PUSH DWORD PTR SS:[ESP+4]
0349043D    5B              POP EBX
0349043E    8F0424          POP DWORD PTR SS:[ESP]
03490441    5C              POP ESP
03490442    885487 01       MOV BYTE PTR DS:[EDI+EAX*4+1],DL
03490446  ^ E9 FDFBFFFF     JMP 03490048
0349044B    66:8B0424       MOV AX,WORD PTR SS:[ESP]
0349044F    55              PUSH EBP
03490450    89E5            MOV EBP,ESP
03490452    68 100F0000     PUSH 0F10
03490457    890C24          MOV DWORD PTR SS:[ESP],ECX
0349045A    B9 04000000     MOV ECX,4
0349045F    01CD            ADD EBP,ECX
03490461    59              POP ECX
03490462    83C5 02         ADD EBP,2
03490465    872C24          XCHG DWORD PTR SS:[ESP],EBP
03490468    5C              POP ESP
03490469    66:0FBB0424     BTC WORD PTR SS:[ESP],AX
0349046E    9C              PUSHFD
0349046F  ^ E9 D4FBFFFF     JMP 03490048
03490474    8F02            POP DWORD PTR DS:[EDX]
03490476  ^ E9 CDFBFFFF     JMP 03490048
0349047B    AD              LODS DWORD PTR DS:[ESI]
0349047C    01D8            ADD EAX,EBX
0349047E    56              PUSH ESI
0349047F    BE 8EF6F62E     MOV ESI,2EF6F68E
03490484    29F0            SUB EAX,ESI
03490486    8B3424          MOV ESI,DWORD PTR SS:[ESP]
03490489    53              PUSH EBX
0349048A    54              PUSH ESP
0349048B    5B              POP EBX
0349048C    81C3 04000000   ADD EBX,4
03490492    83C3 04         ADD EBX,4
03490495    871C24          XCHG DWORD PTR SS:[ESP],EBX
03490498    5C              POP ESP
03490499    52              PUSH EDX
0349049A    56              PUSH ESI
0349049B    50              PUSH EAX
0349049C    B8 75319C62     MOV EAX,629C3175
034904A1    89C6            MOV ESI,EAX
034904A3    58              POP EAX
034904A4    89F2            MOV EDX,ESI
034904A6    5E              POP ESI
034904A7    31D0            XOR EAX,EDX
034904A9    8B1424          MOV EDX,DWORD PTR SS:[ESP]
034904AC    83C4 04         ADD ESP,4
034904AF    01C3            ADD EBX,EAX
034904B1    51              PUSH ECX
034904B2    81EC 04000000   SUB ESP,4
034904B8    891C24          MOV DWORD PTR SS:[ESP],EBX
034904BB    B3 7F           MOV BL,7F
034904BD    88DD            MOV CH,BL
034904BF    8B1C24          MOV EBX,DWORD PTR SS:[ESP]
034904C2    83C4 04         ADD ESP,4
034904C5    20E8            AND AL,CH
034904C7    59              POP ECX
034904C8    68 917E0000     PUSH 7E91
034904CD    891C24          MOV DWORD PTR SS:[ESP],EBX
034904D0    89C3            MOV EBX,EAX
034904D2    52              PUSH EDX
034904D3    BA 20000000     MOV EDX,20
034904D8    01FA            ADD EDX,EDI
034904DA    C702 A4110000   MOV DWORD PTR DS:[EDX],11A4
034904E0    C122 10         SHL DWORD PTR DS:[EDX],10
034904E3    F712            NOT DWORD PTR DS:[EDX]
034904E5    C122 16         SHL DWORD PTR DS:[EDX],16
034904E8    8132 1069C0FF   XOR DWORD PTR DS:[EDX],FFC06910
034904EE    8102 25140000   ADD DWORD PTR DS:[EDX],1425
034904F4    57              PUSH EDI
034904F5    BF 347D0000     MOV EDI,7D34
034904FA    313A            XOR DWORD PTR DS:[EDX],EDI
034904FC    5F              POP EDI
034904FD    5A              POP EDX
034904FE    68 7B110000     PUSH 117B
03490503    891424          MOV DWORD PTR SS:[ESP],EDX
03490506    53              PUSH EBX
03490507    BB 00000000     MOV EBX,0
0349050C    89DA            MOV EDX,EBX
0349050E    5B              POP EBX
0349050F    51              PUSH ECX
03490510    B9 24000000     MOV ECX,24
03490515    01F9            ADD ECX,EDI
03490517    8911            MOV DWORD PTR DS:[ECX],EDX
03490519    59              POP ECX
0349051A    5A              POP EDX
0349051B    31D2            XOR EDX,EDX
0349051D    89D8            MOV EAX,EBX
0349051F    53              PUSH EBX
03490520    50              PUSH EAX
03490521    B8 3C2F0000     MOV EAX,2F3C
03490526    40              INC EAX
03490527    40              INC EAX
03490528    05 C2D2FFFF     ADD EAX,-2D3E
0349052D    89C3            MOV EBX,EAX
0349052F    58              POP EAX
03490530    21D8            AND EAX,EBX
03490532    8B1C24          MOV EBX,DWORD PTR SS:[ESP]
03490535    81C4 04000000   ADD ESP,4
0349053B    53              PUSH EBX
0349053C    52              PUSH EDX
0349053D    BA 1C000000     MOV EDX,1C
03490542    89D3            MOV EBX,EDX
03490544    8B1424          MOV EDX,DWORD PTR SS:[ESP]
03490547    53              PUSH EBX
03490548    89E3            MOV EBX,ESP
0349054A    81C3 04000000   ADD EBX,4
03490550    83C3 04         ADD EBX,4
03490553    871C24          XCHG DWORD PTR SS:[ESP],EBX
03490556    5C              POP ESP
03490557    01FB            ADD EBX,EDI
03490559    8B0B            MOV ECX,DWORD PTR DS:[EBX]
0349055B    5B              POP EBX
0349055C    53              PUSH EBX
0349055D    BB 40120000     MOV EBX,1240
03490562    81C3 25570000   ADD EBX,5725
03490568    56              PUSH ESI
03490569    BE 2A220000     MOV ESI,222A
0349056E    09F3            OR EBX,ESI
03490570    5E              POP ESI
03490571    81C3 9294FFFF   ADD EBX,FFFF9492
03490577    21D9            AND ECX,EBX
03490579    8B1C24          MOV EBX,DWORD PTR SS:[ESP]
0349057C    83C4 04         ADD ESP,4
0349057F    C1E9 00         SHR ECX,0                                ; 移位常量超出 1..31 的範圍
03490582    09C0            OR EAX,EAX
03490584    0F84 77000000   JE 03490601
0349058A    89D8            MOV EAX,EBX
0349058C    57              PUSH EDI
0349058D    68 296D0000     PUSH 6D29
03490592    892C24          MOV DWORD PTR SS:[ESP],EBP
03490595    BD 00010000     MOV EBP,100
0349059A    89EF            MOV EDI,EBP
0349059C    8B2C24          MOV EBP,DWORD PTR SS:[ESP]
0349059F    81C4 04000000   ADD ESP,4
034905A5    21F8            AND EAX,EDI
034905A7    5F              POP EDI
034905A8    C1E8 08         SHR EAX,8
034905AB    31C8            XOR EAX,ECX
034905AD    95              XCHG EAX,EBP
034905AE    68 9E070000     PUSH 79E
034905B3    892C24          MOV DWORD PTR SS:[ESP],EBP
034905B6    F71424          NOT DWORD PTR SS:[ESP]
034905B9    5D              POP EBP
034905BA    31E8            XOR EAX,EBP
034905BC    31C5            XOR EBP,EAX
034905BE    31E8            XOR EAX,EBP
034905C0    83EC 04         SUB ESP,4
034905C3    893C24          MOV DWORD PTR SS:[ESP],EDI
034905C6    BF 364F0000     MOV EDI,4F36
034905CB    4F              DEC EDI
034905CC    47              INC EDI
034905CD    52              PUSH EDX
034905CE    BA 6C370000     MOV EDX,376C
034905D3    29D7            SUB EDI,EDX
034905D5    5A              POP EDX
034905D6    C1EF 07         SHR EDI,7
034905D9    81C7 D2FFFFFF   ADD EDI,-2E
034905DF    21F8            AND EAX,EDI
034905E1    5F              POP EDI
034905E2    09C2            OR EDX,EAX
034905E4    D1E2            SHL EDX,1
034905E6    50              PUSH EAX
034905E7    89E0            MOV EAX,ESP
034905E9    05 04000000     ADD EAX,4
034905EE    83E8 04         SUB EAX,4
034905F1    870424          XCHG DWORD PTR SS:[ESP],EAX
034905F4    5C              POP ESP
034905F5    892C24          MOV DWORD PTR SS:[ESP],EBP
034905F8    BD 01000000     MOV EBP,1
034905FD    016F 24         ADD DWORD PTR DS:[EDI+24],EBP
03490600    5D              POP EBP
03490601    89D8            MOV EAX,EBX
03490603    57              PUSH EDI
03490604    BF 00080000     MOV EDI,800
03490609    21F8            AND EAX,EDI
0349060B    FF3424          PUSH DWORD PTR SS:[ESP]
0349060E    5F              POP EDI
0349060F    51              PUSH ECX
03490610    89E1            MOV ECX,ESP
03490612    81C1 04000000   ADD ECX,4
03490618    81C1 04000000   ADD ECX,4
0349061E    870C24          XCHG DWORD PTR SS:[ESP],ECX
03490621    5C              POP ESP
03490622    09C0            OR EAX,EAX
03490624    0F84 CC000000   JE 034906F6
0349062A    68 D8780000     PUSH 78D8
0349062F    891C24          MOV DWORD PTR SS:[ESP],EBX
03490632    BB 1C000000     MOV EBX,1C
03490637    01FB            ADD EBX,EDI
03490639    50              PUSH EAX
0349063A    B8 00000000     MOV EAX,0
0349063F    01D8            ADD EAX,EBX
03490641    8B08            MOV ECX,DWORD PTR DS:[EAX]
03490643    58              POP EAX
03490644    8B1C24          MOV EBX,DWORD PTR SS:[ESP]
03490647    83C4 04         ADD ESP,4
0349064A    81EC 04000000   SUB ESP,4
03490650    891C24          MOV DWORD PTR SS:[ESP],EBX
03490653    52              PUSH EDX
03490654    BA 40000000     MOV EDX,40
03490659    89D3            MOV EBX,EDX
0349065B    5A              POP EDX
0349065C    21D9            AND ECX,EBX
0349065E    8B1C24          MOV EBX,DWORD PTR SS:[ESP]
03490661    81C4 04000000   ADD ESP,4
03490667    C1E9 06         SHR ECX,6
0349066A    89D8            MOV EAX,EBX
0349066C    53              PUSH EBX
0349066D    BB E36C0000     MOV EBX,6CE3
03490672    C1EB 0F         SHR EBX,0F
03490675    83EC 04         SUB ESP,4
03490678    892C24          MOV DWORD PTR SS:[ESP],EBP
0349067B    BD FA6A0000     MOV EBP,6AFA
03490680    21EB            AND EBX,EBP
03490682    5D              POP EBP
03490683    C1E3 1E         SHL EBX,1E
03490686    81CB 8C430000   OR EBX,438C
0349068C    81EB 8C3F0000   SUB EBX,3F8C
03490692    21D8            AND EAX,EBX
03490694    5B              POP EBX
03490695    C1E8 0A         SHR EAX,0A
03490698    31C8            XOR EAX,ECX
0349069A    31D0            XOR EAX,EDX
0349069C    31C2            XOR EDX,EAX
0349069E    31D0            XOR EAX,EDX
034906A0    87EA            XCHG EDX,EBP
034906A2    F7D5            NOT EBP
034906A4    31EA            XOR EDX,EBP
034906A6    31D5            XOR EBP,EDX
034906A8    31EA            XOR EDX,EBP
034906AA    92              XCHG EAX,EDX
034906AB    68 6B2D0000     PUSH 2D6B
034906B0    892C24          MOV DWORD PTR SS:[ESP],EBP
034906B3    BD 2C460000     MOV EBP,462C
034906B8    81ED DD2F0000   SUB EBP,2FDD
034906BE    81ED 503C0000   SUB EBP,3C50
034906C4    81F5 81550000   XOR EBP,5581
034906CA    45              INC EBP
034906CB    81F5 7E8CFFFF   XOR EBP,FFFF8C7E
034906D1    21E8            AND EAX,EBP
034906D3    8B2C24          MOV EBP,DWORD PTR SS:[ESP]
034906D6    81C4 04000000   ADD ESP,4
034906DC    09C2            OR EDX,EAX
034906DE    D1E2            SHL EDX,1
034906E0    875F 24         XCHG DWORD PTR DS:[EDI+24],EBX
034906E3    81C3 01000000   ADD EBX,1
034906E9    FF77 24         PUSH DWORD PTR DS:[EDI+24]
034906EC    53              PUSH EBX
034906ED    8F47 24         POP DWORD PTR DS:[EDI+24]
034906F0    8B1C24          MOV EBX,DWORD PTR SS:[ESP]
034906F3    83C4 04         ADD ESP,4
034906F6    89D8            MOV EAX,EBX
034906F8    55              PUSH EBP
034906F9    BD A3650000     MOV EBP,65A3
034906FE    81ED 5E330000   SUB EBP,335E
03490704    81ED E3410000   SUB EBP,41E3
0349070A    81C5 9E0F0002   ADD EBP,2000F9E
03490710    21E8            AND EAX,EBP
03490712    FF3424          PUSH DWORD PTR SS:[ESP]
03490715    5D              POP EBP
03490716    81C4 04000000   ADD ESP,4
0349071C    09C0            OR EAX,EAX
0349071E    0F84 AF000000   JE 034907D3
03490724    83EC 04         SUB ESP,4
03490727    891C24          MOV DWORD PTR SS:[ESP],EBX
0349072A    BB 1C000000     MOV EBX,1C
0349072F    01FB            ADD EBX,EDI
03490731    8B0B            MOV ECX,DWORD PTR DS:[EBX]
03490733    8B1C24          MOV EBX,DWORD PTR SS:[ESP]
03490736    50              PUSH EAX
03490737    89E0            MOV EAX,ESP
03490739    05 04000000     ADD EAX,4
0349073E    83C0 04         ADD EAX,4
03490741    870424          XCHG DWORD PTR SS:[ESP],EAX
03490744    5C              POP ESP
03490745    53              PUSH EBX
03490746    56              PUSH ESI
03490747    BE 04000000     MOV ESI,4
0349074C    89F3            MOV EBX,ESI
0349074E    5E              POP ESI
0349074F    21D9            AND ECX,EBX
03490751    FF3424          PUSH DWORD PTR SS:[ESP]
03490754    5B              POP EBX
03490755    83C4 04         ADD ESP,4
03490758    C1E9 0A         SHR ECX,0A
0349075B    89D8            MOV EAX,EBX
0349075D    68 A2500000     PUSH 50A2
03490762    891424          MOV DWORD PTR SS:[ESP],EDX
03490765    BA 00000001     MOV EDX,1000000
0349076A    21D0            AND EAX,EDX
0349076C    8B1424          MOV EDX,DWORD PTR SS:[ESP]
0349076F    57              PUSH EDI
03490770    89E7            MOV EDI,ESP
03490772    81C7 04000000   ADD EDI,4
03490778    83C7 04         ADD EDI,4
0349077B    873C24          XCHG DWORD PTR SS:[ESP],EDI
0349077E    5C              POP ESP
0349077F    C1E8 18         SHR EAX,18
03490782    31C8            XOR EAX,ECX
03490784    81EC 04000000   SUB ESP,4
0349078A    890424          MOV DWORD PTR SS:[ESP],EAX
0349078D    F71424          NOT DWORD PTR SS:[ESP]
03490790    FF3424          PUSH DWORD PTR SS:[ESP]
03490793    58              POP EAX
03490794    83C4 04         ADD ESP,4
03490797    68 332B0000     PUSH 2B33
0349079C    893C24          MOV DWORD PTR SS:[ESP],EDI
0349079F    51              PUSH ECX
034907A0    B9 704D0000     MOV ECX,4D70
034907A5    89CF            MOV EDI,ECX
034907A7    59              POP ECX
034907A8    F7D7            NOT EDI
034907AA    4F              DEC EDI
034907AB    47              INC EDI
034907AC    81C7 724D0000   ADD EDI,4D72
034907B2    21F8            AND EAX,EDI
034907B4    5F              POP EDI
034907B5    09C2            OR EDX,EAX
034907B7    D1E2            SHL EDX,1
034907B9    3177 24         XOR DWORD PTR DS:[EDI+24],ESI
034907BC    3377 24         XOR ESI,DWORD PTR DS:[EDI+24]
034907BF    50              PUSH EAX
034907C0    B8 24000000     MOV EAX,24
034907C5    01F8            ADD EAX,EDI
034907C7    3130            XOR DWORD PTR DS:[EAX],ESI
034907C9    58              POP EAX
034907CA    46              INC ESI
034907CB    FF77 24         PUSH DWORD PTR DS:[EDI+24]
034907CE    56              PUSH ESI
034907CF    8F47 24         POP DWORD PTR DS:[EDI+24]
034907D2    5E              POP ESI
034907D3    89D8            MOV EAX,EBX
034907D5    81EC 04000000   SUB ESP,4
034907DB    890C24          MOV DWORD PTR SS:[ESP],ECX
034907DE    B9 64130000     MOV ECX,1364
034907E3    81E9 62390000   SUB ECX,3962
034907E9    F7D1            NOT ECX
034907EB    41              INC ECX
034907EC    C1E9 1E         SHR ECX,1E
034907EF    81C9 2D280000   OR ECX,282D
034907F5    81F1 2D080000   XOR ECX,82D
034907FB    21C8            AND EAX,ECX
034907FD    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
03490800    81C4 04000000   ADD ESP,4
03490806    09C0            OR EAX,EAX
03490808    0F84 C8000000   JE 034908D6
0349080E    68 D01C0000     PUSH 1CD0
03490813    891C24          MOV DWORD PTR SS:[ESP],EBX
03490816    BB 1C000000     MOV EBX,1C
0349081B    01FB            ADD EBX,EDI
0349081D    52              PUSH EDX
0349081E    BA 00000000     MOV EDX,0
03490823    01DA            ADD EDX,EBX
03490825    8B0A            MOV ECX,DWORD PTR DS:[EDX]
03490827    5A              POP EDX
03490828    8B1C24          MOV EBX,DWORD PTR SS:[ESP]
0349082B    81C4 04000000   ADD ESP,4
03490831    57              PUSH EDI
03490832    50              PUSH EAX
03490833    B8 CB490000     MOV EAX,49CB
03490838    89C7            MOV EDI,EAX
0349083A    8B0424          MOV EAX,DWORD PTR SS:[ESP]
0349083D    81C4 04000000   ADD ESP,4
03490843    C1EF 02         SHR EDI,2
03490846    81EF F2110000   SUB EDI,11F2
0349084C    21F9            AND ECX,EDI
0349084E    5F              POP EDI
0349084F    C1E9 07         SHR ECX,7
03490852    89D8            MOV EAX,EBX
03490854    55              PUSH EBP
03490855    BD 12640000     MOV EBP,6412
0349085A    81C5 BF230000   ADD EBP,23BF
03490860    52              PUSH EDX
03490861    BA 6B370000     MOV EDX,376B
03490866    31D5            XOR EBP,EDX
03490868    5A              POP EDX
03490869    81F5 DE480000   XOR EBP,48DE
0349086F    C1E5 20         SHL EBP,20                               ; 移位常量超出 1..31 的範圍
03490872    53              PUSH EBX
03490873    BB 53120000     MOV EBX,1253
03490878    31DD            XOR EBP,EBX
0349087A    5B              POP EBX
0349087B    81ED 37DA0000   SUB EBP,0DA37
03490881    21E8            AND EAX,EBP
03490883    5D              POP EBP
03490884    C1E8 0C         SHR EAX,0C
03490887    31C8            XOR EAX,ECX
03490889    31F0            XOR EAX,ESI
0349088B    31C6            XOR ESI,EAX
0349088D    31F0            XOR EAX,ESI
0349088F    F7D6            NOT ESI
03490891    50              PUSH EAX
03490892    68 D50C0000     PUSH 0CD5
03490897    893424          MOV DWORD PTR SS:[ESP],ESI
0349089A    58              POP EAX
0349089B    5E              POP ESI
0349089C    81EC 04000000   SUB ESP,4
034908A2    892C24          MOV DWORD PTR SS:[ESP],EBP
034908A5    BD 01000000     MOV EBP,1
034908AA    21E8            AND EAX,EBP
034908AC    FF3424          PUSH DWORD PTR SS:[ESP]
034908AF    5D              POP EBP
034908B0    81C4 04000000   ADD ESP,4
034908B6    09C2            OR EDX,EAX
034908B8    D1E2            SHL EDX,1
034908BA    68 7D760000     PUSH 767D
034908BF    890424          MOV DWORD PTR SS:[ESP],EAX
034908C2    B8 A6390000     MOV EAX,39A6
034908C7    2D DC330000     SUB EAX,33DC
034908CC    40              INC EAX
034908CD    35 34FAFFFF     XOR EAX,FFFFFA34
034908D2    2947 24         SUB DWORD PTR DS:[EDI+24],EAX
034908D5    58              POP EAX
034908D6    89D8            MOV EAX,EBX
034908D8    81EC 04000000   SUB ESP,4
034908DE    891C24          MOV DWORD PTR SS:[ESP],EBX
034908E1    BB 00800000     MOV EBX,8000
034908E6    21D8            AND EAX,EBX
034908E8    FF3424          PUSH DWORD PTR SS:[ESP]
034908EB    5B              POP EBX
034908EC    83C4 04         ADD ESP,4
034908EF    09C0            OR EAX,EAX
034908F1    0F84 A7000000   JE 0349099E
034908F7    68 152A0000     PUSH 2A15
034908FC    891C24          MOV DWORD PTR SS:[ESP],EBX
034908FF    BB FF440000     MOV EBX,44FF
03490904    56              PUSH ESI
03490905    BE E3440000     MOV ESI,44E3
0349090A    29F3            SUB EBX,ESI
0349090C    5E              POP ESI
0349090D    01FB            ADD EBX,EDI
0349090F    8B0B            MOV ECX,DWORD PTR DS:[EBX]
03490911    5B              POP EBX
03490912    50              PUSH EAX
03490913    57              PUSH EDI
03490914    BF 8B0E0000     MOV EDI,0E8B
03490919    81F7 8B060000   XOR EDI,68B
0349091F    89F8            MOV EAX,EDI
03490921    8B3C24          MOV EDI,DWORD PTR SS:[ESP]
03490924    83C4 04         ADD ESP,4
03490927    21C1            AND ECX,EAX
03490929    58              POP EAX
0349092A    C1E9 0B         SHR ECX,0B
0349092D    89D8            MOV EAX,EBX
0349092F    51              PUSH ECX
03490930    89E1            MOV ECX,ESP
03490932    81C1 04000000   ADD ECX,4
03490938    83E9 04         SUB ECX,4
0349093B    870C24          XCHG DWORD PTR SS:[ESP],ECX
0349093E    5C              POP ESP
0349093F    893C24          MOV DWORD PTR SS:[ESP],EDI
03490942    BF 00400000     MOV EDI,4000
03490947    21F8            AND EAX,EDI
03490949    8B3C24          MOV EDI,DWORD PTR SS:[ESP]
0349094C    83C4 04         ADD ESP,4
0349094F    C1E8 0E         SHR EAX,0E
03490952    31C8            XOR EAX,ECX
03490954    50              PUSH EAX
03490955    56              PUSH ESI
03490956    FF7424 04       PUSH DWORD PTR SS:[ESP+4]
0349095A    5E              POP ESI
0349095B    8F0424          POP DWORD PTR SS:[ESP]
0349095E    F7D6            NOT ESI
03490960    873424          XCHG DWORD PTR SS:[ESP],ESI
03490963    8B0424          MOV EAX,DWORD PTR SS:[ESP]
03490966    81C4 04000000   ADD ESP,4
0349096C    53              PUSH EBX
0349096D    BB 01000000     MOV EBX,1
03490972    21D8            AND EAX,EBX
03490974    FF3424          PUSH DWORD PTR SS:[ESP]
03490977    8B1C24          MOV EBX,DWORD PTR SS:[ESP]
0349097A    81C4 04000000   ADD ESP,4
03490980    83C4 04         ADD ESP,4
03490983    09C2            OR EDX,EAX
03490985    D1E2            SHL EDX,1
03490987    FF77 24         PUSH DWORD PTR DS:[EDI+24]
0349098A    870C24          XCHG DWORD PTR SS:[ESP],ECX
0349098D    51              PUSH ECX
0349098E    FF0424          INC DWORD PTR SS:[ESP]
03490991    59              POP ECX
03490992    51              PUSH ECX
03490993    FF7424 04       PUSH DWORD PTR SS:[ESP+4]
03490997    59              POP ECX
03490998    8F0424          POP DWORD PTR SS:[ESP]
0349099B    8F47 24         POP DWORD PTR DS:[EDI+24]
0349099E    89D8            MOV EAX,EBX
034909A0    81EC 04000000   SUB ESP,4
034909A6    890C24          MOV DWORD PTR SS:[ESP],ECX
034909A9    50              PUSH EAX
034909AA    B8 00000200     MOV EAX,20000
034909AF    89C1            MOV ECX,EAX
034909B1    58              POP EAX
034909B2    21C8            AND EAX,ECX
034909B4    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
034909B7    81C4 04000000   ADD ESP,4
034909BD    09C0            OR EAX,EAX
034909BF    0F84 B0000000   JE 03490A75
034909C5    83EC 04         SUB ESP,4
034909C8    891C24          MOV DWORD PTR SS:[ESP],EBX
034909CB    BB 1C000000     MOV EBX,1C
034909D0    01FB            ADD EBX,EDI
034909D2    52              PUSH EDX
034909D3    BA 00000000     MOV EDX,0
034909D8    01DA            ADD EDX,EBX
034909DA    8B0A            MOV ECX,DWORD PTR DS:[EDX]
034909DC    8B1424          MOV EDX,DWORD PTR SS:[ESP]
034909DF    81C4 04000000   ADD ESP,4
034909E5    5B              POP EBX
034909E6    56              PUSH ESI
034909E7    53              PUSH EBX
034909E8    BB 5A1F0000     MOV EBX,1F5A
034909ED    89DE            MOV ESI,EBX
034909EF    5B              POP EBX
034909F0    4E              DEC ESI
034909F1    52              PUSH EDX
034909F2    BA 4B370000     MOV EDX,374B
034909F7    29D6            SUB ESI,EDX
034909F9    5A              POP EDX
034909FA    C1EE 13         SHR ESI,13
034909FD    81E6 24620000   AND ESI,6224
03490A03    46              INC ESI
03490A04    81F6 21020000   XOR ESI,221
03490A0A    21F1            AND ECX,ESI
03490A0C    5E              POP ESI
03490A0D    C1E9 02         SHR ECX,2
03490A10    89D8            MOV EAX,EBX
03490A12    68 47720000     PUSH 7247
03490A17    892C24          MOV DWORD PTR SS:[ESP],EBP
03490A1A    BD 00000100     MOV EBP,10000                            ; UNICODE "=::=::\"
03490A1F    21E8            AND EAX,EBP
03490A21    FF3424          PUSH DWORD PTR SS:[ESP]
03490A24    5D              POP EBP
03490A25    83C4 04         ADD ESP,4
03490A28    C1E8 10         SHR EAX,10
03490A2B    31C8            XOR EAX,ECX
03490A2D    50              PUSH EAX
03490A2E    F71424          NOT DWORD PTR SS:[ESP]
03490A31    FF3424          PUSH DWORD PTR SS:[ESP]
03490A34    8B0424          MOV EAX,DWORD PTR SS:[ESP]
03490A37    83C4 04         ADD ESP,4
03490A3A    83C4 04         ADD ESP,4
03490A3D    68 A07A0000     PUSH 7AA0
03490A42    893424          MOV DWORD PTR SS:[ESP],ESI
03490A45    BE C4130000     MOV ESI,13C4
03490A4A    81CE 1A5A0000   OR ESI,5A1A
03490A50    51              PUSH ECX
03490A51    B9 DF5B0000     MOV ECX,5BDF
03490A56    31CE            XOR ESI,ECX
03490A58    59              POP ECX
03490A59    21F0            AND EAX,ESI
03490A5B    5E              POP ESI
03490A5C    09C2            OR EDX,EAX
03490A5E    D1E2            SHL EDX,1
03490A60    68 0A4E0000     PUSH 4E0A
03490A65    890C24          MOV DWORD PTR SS:[ESP],ECX
03490A68    53              PUSH EBX
03490A69    BB FFFFFFFF     MOV EBX,-1
03490A6E    89D9            MOV ECX,EBX
03490A70    5B              POP EBX
03490A71    294F 24         SUB DWORD PTR DS:[EDI+24],ECX
03490A74    59              POP ECX
03490A75    89D8            MOV EAX,EBX
03490A77    68 41470000     PUSH 4741
03490A7C    893424          MOV DWORD PTR SS:[ESP],ESI
03490A7F    BE 4F710000     MOV ESI,714F
03490A84    81C6 9A530000   ADD ESI,539A
03490A8A    81EE BD6B0000   SUB ESI,6BBD
03490A90    81C6 354A0000   ADD ESI,4A35
03490A96    4E              DEC ESI
03490A97    C1EE 15         SHR ESI,15
03490A9A    81EE 0000F8FF   SUB ESI,FFF80000
03490AA0    21F0            AND EAX,ESI
03490AA2    8B3424          MOV ESI,DWORD PTR SS:[ESP]
03490AA5    81C4 04000000   ADD ESP,4
03490AAB    09C0            OR EAX,EAX
03490AAD    0F84 F8000000   JE 03490BAB
03490AB3    53              PUSH EBX
03490AB4    BB 1C000000     MOV EBX,1C
03490AB9    01FB            ADD EBX,EDI
03490ABB    68 FE7C0000     PUSH 7CFE
03490AC0    890424          MOV DWORD PTR SS:[ESP],EAX
03490AC3    B8 00000000     MOV EAX,0
03490AC8    01D8            ADD EAX,EBX
03490ACA    8B08            MOV ECX,DWORD PTR DS:[EAX]
03490ACC    8B0424          MOV EAX,DWORD PTR SS:[ESP]
03490ACF    83C4 04         ADD ESP,4
03490AD2    5B              POP EBX
03490AD3    68 97770000     PUSH 7797
03490AD8    890424          MOV DWORD PTR SS:[ESP],EAX
03490ADB    51              PUSH ECX
03490ADC    B9 80000000     MOV ECX,80
03490AE1    89C8            MOV EAX,ECX
03490AE3    59              POP ECX
03490AE4    21C1            AND ECX,EAX
03490AE6    8B0424          MOV EAX,DWORD PTR SS:[ESP]
03490AE9    83C4 04         ADD ESP,4
03490AEC    C1E9 07         SHR ECX,7
03490AEF    53              PUSH EBX
03490AF0    BB 1C000000     MOV EBX,1C
03490AF5    01FB            ADD EBX,EDI
03490AF7    8B03            MOV EAX,DWORD PTR DS:[EBX]
03490AF9    8B1C24          MOV EBX,DWORD PTR SS:[ESP]
03490AFC    57              PUSH EDI
03490AFD    89E7            MOV EDI,ESP
03490AFF    52              PUSH EDX
03490B00    BA 04000000     MOV EDX,4
03490B05    01D7            ADD EDI,EDX
03490B07    5A              POP EDX
03490B08    81C7 04000000   ADD EDI,4
03490B0E    873C24          XCHG DWORD PTR SS:[ESP],EDI
03490B11    5C              POP ESP
03490B12    68 EA4E0000     PUSH 4EEA
03490B17    891424          MOV DWORD PTR SS:[ESP],EDX
03490B1A    50              PUSH EAX
03490B1B    B8 00080000     MOV EAX,800
03490B20    89C2            MOV EDX,EAX
03490B22    58              POP EAX
03490B23    21D0            AND EAX,EDX
03490B25    8B1424          MOV EDX,DWORD PTR SS:[ESP]
03490B28    81C4 04000000   ADD ESP,4
03490B2E    C1E8 0B         SHR EAX,0B
03490B31    31C1            XOR ECX,EAX
03490B33    89D8            MOV EAX,EBX
03490B35    68 8C240000     PUSH 248C
03490B3A    893424          MOV DWORD PTR SS:[ESP],ESI
03490B3D    89E6            MOV ESI,ESP
03490B3F    81C6 04000000   ADD ESI,4
03490B45    81EE 04000000   SUB ESI,4
03490B4B    873424          XCHG DWORD PTR SS:[ESP],ESI
03490B4E    5C              POP ESP
03490B4F    891C24          MOV DWORD PTR SS:[ESP],EBX
03490B52    BB 00000400     MOV EBX,40000
03490B57    21D8            AND EAX,EBX
03490B59    5B              POP EBX
03490B5A    C1E8 12         SHR EAX,12
03490B5D    31C8            XOR EAX,ECX
03490B5F    68 931C0000     PUSH 1C93
03490B64    890424          MOV DWORD PTR SS:[ESP],EAX
03490B67    871424          XCHG DWORD PTR SS:[ESP],EDX
03490B6A    F7D2            NOT EDX
03490B6C    52              PUSH EDX
03490B6D    FF7424 04       PUSH DWORD PTR SS:[ESP+4]
03490B71    5A              POP EDX
03490B72    8F0424          POP DWORD PTR SS:[ESP]
03490B75    58              POP EAX
03490B76    83EC 04         SUB ESP,4
03490B79    891424          MOV DWORD PTR SS:[ESP],EDX
03490B7C    53              PUSH EBX
03490B7D    BB 01000000     MOV EBX,1
03490B82    89DA            MOV EDX,EBX
03490B84    8B1C24          MOV EBX,DWORD PTR SS:[ESP]
03490B87    81C4 04000000   ADD ESP,4
03490B8D    21D0            AND EAX,EDX
03490B8F    5A              POP EDX
03490B90    09C2            OR EDX,EAX
03490B92    D1E2            SHL EDX,1
03490B94    83EC 04         SUB ESP,4
03490B97    890C24          MOV DWORD PTR SS:[ESP],ECX
03490B9A    B9 01000000     MOV ECX,1
03490B9F    50              PUSH EAX
03490BA0    B8 24000000     MOV EAX,24
03490BA5    01F8            ADD EAX,EDI
03490BA7    0108            ADD DWORD PTR DS:[EAX],ECX
03490BA9    58              POP EAX
03490BAA    59              POP ECX
03490BAB    89D8            MOV EAX,EBX
03490BAD    57              PUSH EDI
03490BAE    BF 89580000     MOV EDI,5889
03490BB3    68 11580000     PUSH 5811
03490BB8    890424          MOV DWORD PTR SS:[ESP],EAX
03490BBB    B8 8958E0FF     MOV EAX,FFE05889
03490BC0    29C7            SUB EDI,EAX
03490BC2    58              POP EAX
03490BC3    21F8            AND EAX,EDI
03490BC5    5F              POP EDI
03490BC6    09C0            OR EAX,EAX
03490BC8    0F84 8C000000   JE 03490C5A
03490BCE    68 57750000     PUSH 7557
03490BD3    890C24          MOV DWORD PTR SS:[ESP],ECX
03490BD6    B9 391E0000     MOV ECX,1E39
03490BDB    81F1 512D0000   XOR ECX,2D51
03490BE1    41              INC ECX
03490BE2    81F1 631B0000   XOR ECX,1B63
03490BE8    F7D9            NEG ECX
03490BEA    81F1 9B160000   XOR ECX,169B
03490BF0    81E9 45C1FFFF   SUB ECX,-3EBB
03490BF6    01F9            ADD ECX,EDI
03490BF8    8B01            MOV EAX,DWORD PTR DS:[ECX]
03490BFA    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
03490BFD    81C4 04000000   ADD ESP,4
03490C03    8B0487          MOV EAX,DWORD PTR DS:[EDI+EAX*4]
03490C06    52              PUSH EDX
03490C07    89E2            MOV EDX,ESP
03490C09    81C2 04000000   ADD EDX,4
03490C0F    53              PUSH EBX
03490C10    BB 04000000     MOV EBX,4
03490C15    29DA            SUB EDX,EBX
03490C17    5B              POP EBX
03490C18    871424          XCHG DWORD PTR SS:[ESP],EDX
03490C1B    5C              POP ESP
03490C1C    893C24          MOV DWORD PTR SS:[ESP],EDI
03490C1F    BF FFFF0000     MOV EDI,0FFFF
03490C24    21F8            AND EAX,EDI
03490C26    5F              POP EDI
03490C27    09C0            OR EAX,EAX
03490C29    0F85 2B000000   JNZ 03490C5A
03490C2F    BA 62160000     MOV EDX,1662
03490C34    C1E2 0A         SHL EDX,0A
03490C37    81EA 6D3C0000   SUB EDX,3C6D
03490C3D    50              PUSH EAX
03490C3E    B8 A4390000     MOV EAX,39A4
03490C43    21C2            AND EDX,EAX
03490C45    8B0424          MOV EAX,DWORD PTR SS:[ESP]
03490C48    81C4 04000000   ADD ESP,4
03490C4E    81EA 3D8DFFFF   SUB EDX,FFFF8D3D
03490C54    81EA 427C0000   SUB EDX,7C42
03490C5A    89D8            MOV EAX,EBX
03490C5C    81EC 04000000   SUB ESP,4
03490C62    893424          MOV DWORD PTR SS:[ESP],ESI
03490C65    BE 2D1A0000     MOV ESI,1A2D
03490C6A    F7D6            NOT ESI
03490C6C    81CE C44E0000   OR ESI,4EC4
03490C72    81EE 01000000   SUB ESI,1
03490C78    C1EE 0C         SHR ESI,0C
03490C7B    81F6 FEFF8F00   XOR ESI,8FFFFE
03490C81    21F0            AND EAX,ESI
03490C83    5E              POP ESI
03490C84    09C0            OR EAX,EAX
03490C86    0F84 55000000   JE 03490CE1
03490C8C    53              PUSH EBX
03490C8D    BB 28000000     MOV EBX,28
03490C92    01FB            ADD EBX,EDI
03490C94    51              PUSH ECX
03490C95    B9 00000000     MOV ECX,0
03490C9A    01D9            ADD ECX,EBX
03490C9C    8B01            MOV EAX,DWORD PTR DS:[ECX]
03490C9E    59              POP ECX
03490C9F    FF3424          PUSH DWORD PTR SS:[ESP]
03490CA2    5B              POP EBX
03490CA3    83C4 04         ADD ESP,4
03490CA6    8B0487          MOV EAX,DWORD PTR DS:[EDI+EAX*4]
03490CA9    09C0            OR EAX,EAX
03490CAB    0F85 30000000   JNZ 03490CE1
03490CB1    BA 2D3E0000     MOV EDX,3E2D
03490CB6    C1E2 18         SHL EDX,18
03490CB9    F7D2            NOT EDX
03490CBB    81C2 382E0000   ADD EDX,2E38
03490CC1    68 54400000     PUSH 4054
03490CC6    891424          MOV DWORD PTR SS:[ESP],EDX
03490CC9    F71424          NOT DWORD PTR SS:[ESP]
03490CCC    8B1424          MOV EDX,DWORD PTR SS:[ESP]
03490CCF    81C4 04000000   ADD ESP,4
03490CD5    81CA 79340000   OR EDX,3479
03490CDB    81EA F8F5FF2C   SUB EDX,2CFFF5F8
03490CE1    52              PUSH EDX
03490CE2    BA 24000000     MOV EDX,24
03490CE7    01FA            ADD EDX,EDI
03490CE9    8B0A            MOV ECX,DWORD PTR DS:[EDX]
03490CEB    8B1424          MOV EDX,DWORD PTR SS:[ESP]
03490CEE    57              PUSH EDI
03490CEF    89E7            MOV EDI,ESP
03490CF1    81C7 04000000   ADD EDI,4
03490CF7    81C7 04000000   ADD EDI,4
03490CFD    57              PUSH EDI
03490CFE    FF7424 04       PUSH DWORD PTR SS:[ESP+4]
03490D02    5F              POP EDI
03490D03    8F0424          POP DWORD PTR SS:[ESP]
03490D06    5C              POP ESP
03490D07    B8 F6020000     MOV EAX,2F6
03490D0C    83E8 FF         SUB EAX,-1
03490D0F    56              PUSH ESI
03490D10    BE 1F530000     MOV ESI,531F
03490D15    29F0            SUB EAX,ESI
03490D17    5E              POP ESI
03490D18    C1E0 0A         SHL EAX,0A
03490D1B    52              PUSH EDX
03490D1C    BA 91340000     MOV EDX,3491
03490D21    09D0            OR EAX,EDX
03490D23    5A              POP EDX
03490D24    48              DEC EAX
03490D25    05 718B4001     ADD EAX,1408B71
03490D2A    D3E0            SHL EAX,CL
03490D2C    50              PUSH EAX
03490D2D    68 564E0000     PUSH 4E56
03490D32    890C24          MOV DWORD PTR SS:[ESP],ECX
03490D35    58              POP EAX
03490D36    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
03490D39    81C4 04000000   ADD ESP,4
03490D3F    49              DEC ECX
03490D40    91              XCHG EAX,ECX
03490D41    57              PUSH EDI
03490D42    50              PUSH EAX
03490D43    68 0B400000     PUSH 400B
03490D48    891424          MOV DWORD PTR SS:[ESP],EDX
03490D4B    BA 10000000     MOV EDX,10
03490D50    89D0            MOV EAX,EDX
03490D52    5A              POP EDX
03490D53    89C7            MOV EDI,EAX
03490D55    58              POP EAX
03490D56    21FB            AND EBX,EDI
03490D58    5F              POP EDI
03490D59    09DB            OR EBX,EBX
03490D5B    0F85 29000000   JNZ 03490D8A
03490D61    50              PUSH EAX
03490D62    B8 20000000     MOV EAX,20
03490D67    01F8            ADD EAX,EDI
03490D69    8910            MOV DWORD PTR DS:[EAX],EDX
03490D6B    8B0424          MOV EAX,DWORD PTR SS:[ESP]
03490D6E    81EC 04000000   SUB ESP,4
03490D74    890424          MOV DWORD PTR SS:[ESP],EAX
03490D77    89E0            MOV EAX,ESP
03490D79    05 04000000     ADD EAX,4
03490D7E    83C0 04         ADD EAX,4
03490D81    870424          XCHG DWORD PTR SS:[ESP],EAX
03490D84    5C              POP ESP
03490D85    E9 2E000000     JMP 03490DB8
03490D8A    D1EA            SHR EDX,1
03490D8C    39D0            CMP EAX,EDX
03490D8E    0F84 24000000   JE 03490DB8
03490D94    68 5B470000     PUSH 475B
03490D99    891C24          MOV DWORD PTR SS:[ESP],EBX
03490D9C    BB 5B010000     MOV EBX,15B
03490DA1    81EB 3B010000   SUB EBX,13B
03490DA7    01FB            ADD EBX,EDI
03490DA9    C703 00000000   MOV DWORD PTR DS:[EBX],0
03490DAF    8B1C24          MOV EBX,DWORD PTR SS:[ESP]
03490DB2    81C4 04000000   ADD ESP,4
03490DB8    FF3424          PUSH DWORD PTR SS:[ESP]
03490DBB    5B              POP EBX
03490DBC    51              PUSH ECX
03490DBD    89E1            MOV ECX,ESP
03490DBF    52              PUSH EDX
03490DC0    BA 04000000     MOV EDX,4
03490DC5    01D1            ADD ECX,EDX
03490DC7    5A              POP EDX
03490DC8    83C1 04         ADD ECX,4
03490DCB    870C24          XCHG DWORD PTR SS:[ESP],ECX
03490DCE    5C              POP ESP
03490DCF  ^ E9 74F2FFFF     JMP 03490048
03490DD4    66:8B0424       MOV AX,WORD PTR SS:[ESP]
03490DD8    68 F64F0000     PUSH 4FF6
03490DDD    893C24          MOV DWORD PTR SS:[ESP],EDI
03490DE0    54              PUSH ESP
03490DE1    5F              POP EDI
03490DE2    81C7 04000000   ADD EDI,4
03490DE8    81C7 02000000   ADD EDI,2
03490DEE    873C24          XCHG DWORD PTR SS:[ESP],EDI
03490DF1    5C              POP ESP
03490DF2    66:290424       SUB WORD PTR SS:[ESP],AX
03490DF6    9C              PUSHFD
03490DF7  ^ E9 4CF2FFFF     JMP 03490048
03490DFC    66:AD           LODS WORD PTR DS:[ESI]
03490DFE    66:31D8         XOR AX,BX
03490E01    66:51           PUSH CX
03490E03    66:52           PUSH DX
03490E05    66:BA 0241      MOV DX,4102
03490E09    66:C1E2 02      SHL DX,2
03490E0D    66:81C2 D31E    ADD DX,1ED3
03490E12    66:81C2 AA14    ADD DX,14AA
03490E17    66:81EA 0C54    SUB DX,540C
03490E1C    66:F7DA         NEG DX
03490E1F    66:81EA 904C    SUB DX,4C90
03490E24    66:89D1         MOV CX,DX
03490E27    66:5A           POP DX
03490E29    66:01C8         ADD AX,CX
03490E2C    66:59           POP CX
03490E2E    66:52           PUSH DX
03490E30    66:BA B5F1      MOV DX,0F1B5
03490E34    66:01D0         ADD AX,DX
03490E37    66:8B1424       MOV DX,WORD PTR SS:[ESP]
03490E3B    56              PUSH ESI
03490E3C    54              PUSH ESP
03490E3D    5E              POP ESI
03490E3E    81C6 04000000   ADD ESI,4
03490E44    83C6 02         ADD ESI,2
03490E47    873424          XCHG DWORD PTR SS:[ESP],ESI
03490E4A    5C              POP ESP
03490E4B    66:31C3         XOR BX,AX
03490E4E    0FB7C0          MOVZX EAX,AX
03490E51    66:68 E418      PUSH 18E4
03490E55    66:890424       MOV WORD PTR SS:[ESP],AX
03490E59  ^ E9 EAF1FFFF     JMP 03490048
03490E5E    FF3424          PUSH DWORD PTR SS:[ESP]
03490E61    FF3424          PUSH DWORD PTR SS:[ESP]
03490E64    58              POP EAX
03490E65    81C4 04000000   ADD ESP,4
03490E6B    83C4 04         ADD ESP,4
03490E6E    090424          OR DWORD PTR SS:[ESP],EAX
03490E71    9C              PUSHFD
03490E72  ^ E9 D1F1FFFF     JMP 03490048
03490E77    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03490E7B    55              PUSH EBP
03490E7C    54              PUSH ESP
03490E7D    5D              POP EBP
03490E7E    81C5 04000000   ADD EBP,4
03490E84    81C5 02000000   ADD EBP,2
03490E8A    332C24          XOR EBP,DWORD PTR SS:[ESP]
03490E8D    312C24          XOR DWORD PTR SS:[ESP],EBP
03490E90    332C24          XOR EBP,DWORD PTR SS:[ESP]
03490E93    5C              POP ESP
03490E94    66:8B0424       MOV AX,WORD PTR SS:[ESP]
03490E98    52              PUSH EDX
03490E99    89E2            MOV EDX,ESP
03490E9B    51              PUSH ECX
03490E9C    B9 04000000     MOV ECX,4
03490EA1    01CA            ADD EDX,ECX
03490EA3    59              POP ECX
03490EA4    83C2 02         ADD EDX,2
03490EA7    871424          XCHG DWORD PTR SS:[ESP],EDX
03490EAA    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03490EAD    66:F7E1         MUL CX
03490EB0    51              PUSH ECX
03490EB1    89E1            MOV ECX,ESP
03490EB3    81C1 04000000   ADD ECX,4
03490EB9    57              PUSH EDI
03490EBA    BF 02000000     MOV EDI,2
03490EBF    29F9            SUB ECX,EDI
03490EC1    5F              POP EDI
03490EC2    330C24          XOR ECX,DWORD PTR SS:[ESP]
03490EC5    310C24          XOR DWORD PTR SS:[ESP],ECX
03490EC8    330C24          XOR ECX,DWORD PTR SS:[ESP]
03490ECB    5C              POP ESP
03490ECC    66:891424       MOV WORD PTR SS:[ESP],DX
03490ED0    66:50           PUSH AX
03490ED2    9C              PUSHFD
03490ED3  ^ E9 70F1FFFF     JMP 03490048
03490ED8    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03490EDC    52              PUSH EDX
03490EDD    89E2            MOV EDX,ESP
03490EDF    81C2 04000000   ADD EDX,4
03490EE5    55              PUSH EBP
03490EE6    BD 02000000     MOV EBP,2
03490EEB    01EA            ADD EDX,EBP
03490EED    5D              POP EBP
03490EEE    331424          XOR EDX,DWORD PTR SS:[ESP]
03490EF1    311424          XOR DWORD PTR SS:[ESP],EDX
03490EF4    331424          XOR EDX,DWORD PTR SS:[ESP]
03490EF7    5C              POP ESP
03490EF8    66:8B0424       MOV AX,WORD PTR SS:[ESP]
03490EFC    57              PUSH EDI
03490EFD    89E7            MOV EDI,ESP
03490EFF    55              PUSH EBP
03490F00    BD 04000000     MOV EBP,4
03490F05    01EF            ADD EDI,EBP
03490F07    5D              POP EBP
03490F08    83C7 02         ADD EDI,2
03490F0B    57              PUSH EDI
03490F0C    FF7424 04       PUSH DWORD PTR SS:[ESP+4]
03490F10    5F              POP EDI
03490F11    8F0424          POP DWORD PTR SS:[ESP]
03490F14    5C              POP ESP
03490F15    F6E1            MUL CL
03490F17    66:0FB6CC       MOVZX CX,AH
03490F1B    55              PUSH EBP
03490F1C    54              PUSH ESP
03490F1D    5D              POP EBP
03490F1E    81C5 04000000   ADD EBP,4
03490F24    83ED 02         SUB EBP,2
03490F27    332C24          XOR EBP,DWORD PTR SS:[ESP]
03490F2A    312C24          XOR DWORD PTR SS:[ESP],EBP
03490F2D    332C24          XOR EBP,DWORD PTR SS:[ESP]
03490F30    5C              POP ESP
03490F31    66:890C24       MOV WORD PTR SS:[ESP],CX
03490F35    66:0FB6C8       MOVZX CX,AL
03490F39    66:51           PUSH CX
03490F3B    9C              PUSHFD
03490F3C  ^ E9 07F1FFFF     JMP 03490048
03490F41    AD              LODS DWORD PTR DS:[ESI]
03490F42    01D8            ADD EAX,EBX
03490F44    81EC 04000000   SUB ESP,4
03490F4A    891C24          MOV DWORD PTR SS:[ESP],EBX
03490F4D    50              PUSH EAX
03490F4E    B8 DC4EF43B     MOV EAX,3BF44EDC
03490F53    89C3            MOV EBX,EAX
03490F55    58              POP EAX
03490F56    29D8            SUB EAX,EBX
03490F58    8B1C24          MOV EBX,DWORD PTR SS:[ESP]
03490F5B    83C4 04         ADD ESP,4
03490F5E    81EC 04000000   SUB ESP,4
03490F64    890C24          MOV DWORD PTR SS:[ESP],ECX
03490F67    B9 138FB136     MOV ECX,36B18F13
03490F6C    01C8            ADD EAX,ECX
03490F6E    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
03490F71    52              PUSH EDX
03490F72    89E2            MOV EDX,ESP
03490F74    81C2 04000000   ADD EDX,4
03490F7A    83C2 04         ADD EDX,4
03490F7D    871424          XCHG DWORD PTR SS:[ESP],EDX
03490F80    5C              POP ESP
03490F81    01C3            ADD EBX,EAX
03490F83    66:FF30         PUSH WORD PTR DS:[EAX]
03490F86  ^ E9 BDF0FFFF     JMP 03490048
03490F8B    66:8B0424       MOV AX,WORD PTR SS:[ESP]
03490F8F    55              PUSH EBP
03490F90    54              PUSH ESP
03490F91    8B2C24          MOV EBP,DWORD PTR SS:[ESP]
03490F94    83C4 04         ADD ESP,4
03490F97    81C5 04000000   ADD EBP,4
03490F9D    83C5 02         ADD EBP,2
03490FA0    872C24          XCHG DWORD PTR SS:[ESP],EBP
03490FA3    5C              POP ESP
03490FA4    66:010424       ADD WORD PTR SS:[ESP],AX
03490FA8    9C              PUSHFD
03490FA9  ^ E9 9AF0FFFF     JMP 03490048
03490FAE    AD              LODS DWORD PTR DS:[ESI]
03490FAF    01D8            ADD EAX,EBX
03490FB1    56              PUSH ESI
03490FB2    BE 413D0000     MOV ESI,3D41
03490FB7    F7D6            NOT ESI
03490FB9    50              PUSH EAX
03490FBA    B8 7F1B0000     MOV EAX,1B7F
03490FBF    31C6            XOR ESI,EAX
03490FC1    58              POP EAX
03490FC2    46              INC ESI
03490FC3    81C6 37FF3650   ADD ESI,5036FF37
03490FC9    31F0            XOR EAX,ESI
03490FCB    8B3424          MOV ESI,DWORD PTR SS:[ESP]
03490FCE    83C4 04         ADD ESP,4
03490FD1    51              PUSH ECX
03490FD2    B9 F8E8FB42     MOV ECX,42FBE8F8
03490FD7    01C8            ADD EAX,ECX
03490FD9    FF3424          PUSH DWORD PTR SS:[ESP]
03490FDC    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
03490FDF    83C4 04         ADD ESP,4
03490FE2    83C4 04         ADD ESP,4
03490FE5    29C3            SUB EBX,EAX
03490FE7    FF30            PUSH DWORD PTR DS:[EAX]
03490FE9  ^ E9 5AF0FFFF     JMP 03490048
03490FEE    AD              LODS DWORD PTR DS:[ESI]
03490FEF    29D8            SUB EAX,EBX
03490FF1    68 AD7C0000     PUSH 7CAD
03490FF6    891424          MOV DWORD PTR SS:[ESP],EDX
03490FF9    51              PUSH ECX
03490FFA    B9 B675D61A     MOV ECX,1AD675B6
03490FFF    89CA            MOV EDX,ECX
03491001    59              POP ECX
03491002    29D0            SUB EAX,EDX
03491004    8B1424          MOV EDX,DWORD PTR SS:[ESP]
03491007    81C4 04000000   ADD ESP,4
0349100D    51              PUSH ECX
0349100E    52              PUSH EDX
0349100F    BA 6E3D3172     MOV EDX,72313D6E
03491014    89D1            MOV ECX,EDX
03491016    FF3424          PUSH DWORD PTR SS:[ESP]
03491019    5A              POP EDX
0349101A    83C4 04         ADD ESP,4
0349101D    01C8            ADD EAX,ECX
0349101F    59              POP ECX
03491020    01C3            ADD EBX,EAX
03491022    66:0FB600       MOVZX AX,BYTE PTR DS:[EAX]
03491026    52              PUSH EDX
03491027    54              PUSH ESP
03491028    5A              POP EDX
03491029    81C2 04000000   ADD EDX,4
0349102F    57              PUSH EDI
03491030    BF 02000000     MOV EDI,2
03491035    29FA            SUB EDX,EDI
03491037    5F              POP EDI
03491038    871424          XCHG DWORD PTR SS:[ESP],EDX
0349103B    5C              POP ESP
0349103C    66:890424       MOV WORD PTR SS:[ESP],AX
03491040  ^ E9 03F0FFFF     JMP 03490048
03491045    FF3424          PUSH DWORD PTR SS:[ESP]
03491048    58              POP EAX
03491049    57              PUSH EDI
0349104A    89E7            MOV EDI,ESP
0349104C    81C7 04000000   ADD EDI,4
03491052    81C7 04000000   ADD EDI,4
03491058    57              PUSH EDI
03491059    FF7424 04       PUSH DWORD PTR SS:[ESP+4]
0349105D    5F              POP EDI
0349105E    8F0424          POP DWORD PTR SS:[ESP]
03491061    5C              POP ESP
03491062    010424          ADD DWORD PTR SS:[ESP],EAX
03491065  ^ E9 DEEFFFFF     JMP 03490048
0349106A    AD              LODS DWORD PTR DS:[ESI]
0349106B    31D8            XOR EAX,EBX
0349106D    68 3A270000     PUSH 273A
03491072    893424          MOV DWORD PTR SS:[ESP],ESI
03491075    BE C46B0000     MOV ESI,6BC4
0349107A    52              PUSH EDX
0349107B    BA E4540000     MOV EDX,54E4
03491080    29D6            SUB ESI,EDX
03491082    5A              POP EDX
03491083    81E6 AC680000   AND ESI,68AC
03491089    81F6 34630000   XOR ESI,6334
0349108F    81EE FAF367F2   SUB ESI,F267F3FA
03491095    01F0            ADD EAX,ESI
03491097    5E              POP ESI
03491098    51              PUSH ECX
03491099    68 EF630000     PUSH 63EF
0349109E    891424          MOV DWORD PTR SS:[ESP],EDX
034910A1    BA 14600778     MOV EDX,78076014
034910A6    89D1            MOV ECX,EDX
034910A8    8B1424          MOV EDX,DWORD PTR SS:[ESP]
034910AB    81C4 04000000   ADD ESP,4
034910B1    01C8            ADD EAX,ECX
034910B3    59              POP ECX
034910B4    29C3            SUB EBX,EAX
034910B6    68 53630000     PUSH 6353
034910BB    890424          MOV DWORD PTR SS:[ESP],EAX
034910BE  ^ E9 85EFFFFF     JMP 03490048
034910C3    FF3424          PUSH DWORD PTR SS:[ESP]
034910C6    8B0424          MOV EAX,DWORD PTR SS:[ESP]
034910C9    81C4 04000000   ADD ESP,4
034910CF    50              PUSH EAX
034910D0    89E0            MOV EAX,ESP
034910D2    05 04000000     ADD EAX,4
034910D7    83C0 04         ADD EAX,4
034910DA    870424          XCHG DWORD PTR SS:[ESP],EAX
034910DD    5C              POP ESP
034910DE    0FC8            BSWAP EAX
034910E0    53              PUSH EBX
034910E1    54              PUSH ESP
034910E2    5B              POP EBX
034910E3    81C3 04000000   ADD EBX,4
034910E9    81EB 04000000   SUB EBX,4
034910EF    53              PUSH EBX
034910F0    FF7424 04       PUSH DWORD PTR SS:[ESP+4]
034910F4    5B              POP EBX
034910F5    8F0424          POP DWORD PTR SS:[ESP]
034910F8    5C              POP ESP
034910F9    890424          MOV DWORD PTR SS:[ESP],EAX
034910FC  ^ E9 47EFFFFF     JMP 03490048
03491101    FF3424          PUSH DWORD PTR SS:[ESP]
03491104    58              POP EAX
03491105    52              PUSH EDX
03491106    89E2            MOV EDX,ESP
03491108    53              PUSH EBX
03491109    BB 04000000     MOV EBX,4
0349110E    01DA            ADD EDX,EBX
03491110    5B              POP EBX
03491111    83C2 04         ADD EDX,4
03491114    871424          XCHG DWORD PTR SS:[ESP],EDX
03491117    5C              POP ESP
03491118    FF0424          INC DWORD PTR SS:[ESP]
0349111B    9C              PUSHFD
0349111C  ^ E9 27EFFFFF     JMP 03490048
03491121    AC              LODS BYTE PTR DS:[ESI]
03491122    28D8            SUB AL,BL
03491124    68 B5780000     PUSH 78B5
03491129    891424          MOV DWORD PTR SS:[ESP],EDX
0349112C    66:50           PUSH AX
0349112E    B4 3A           MOV AH,3A
03491130    80EC E7         SUB AH,0E7
03491133    C0EC 1D         SHR AH,1D
03491136    80F4 5E         XOR AH,5E
03491139    80EC 86         SUB AH,86
0349113C    80EC AD         SUB AH,0AD
0349113F    88E6            MOV DH,AH
03491141    66:58           POP AX
03491143    28F0            SUB AL,DH
03491145    5A              POP EDX
03491146    83EC 02         SUB ESP,2
03491149    66:891C24       MOV WORD PTR SS:[ESP],BX
0349114D    51              PUSH ECX
0349114E    B5 38           MOV CH,38
03491150    88EB            MOV BL,CH
03491152    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
03491155    81C4 04000000   ADD ESP,4
0349115B    28D8            SUB AL,BL
0349115D    66:5B           POP BX
0349115F    00C3            ADD BL,AL
03491161    0FB6C0          MOVZX EAX,AL
03491164    8D0487          LEA EAX,DWORD PTR DS:[EDI+EAX*4]
03491167    68 86710000     PUSH 7186
0349116C    890424          MOV DWORD PTR SS:[ESP],EAX
0349116F  ^ E9 D4EEFFFF     JMP 03490048
03491174    66:8B2424       MOV SP,WORD PTR SS:[ESP]
03491178  ^ E9 CBEEFFFF     JMP 03490048
0349117D    66:8B0424       MOV AX,WORD PTR SS:[ESP]
03491181    50              PUSH EAX
03491182    54              PUSH ESP
03491183    58              POP EAX
03491184    51              PUSH ECX
03491185    B9 04000000     MOV ECX,4
0349118A    01C8            ADD EAX,ECX
0349118C    59              POP ECX
0349118D    83C0 02         ADD EAX,2
03491190    870424          XCHG DWORD PTR SS:[ESP],EAX
03491193    5C              POP ESP
03491194    180424          SBB BYTE PTR SS:[ESP],AL
03491197    9C              PUSHFD
03491198  ^ E9 ABEEFFFF     JMP 03490048
0349119D    FF3424          PUSH DWORD PTR SS:[ESP]
034911A0    58              POP EAX
034911A1    68 31090000     PUSH 931
034911A6    893C24          MOV DWORD PTR SS:[ESP],EDI
034911A9    89E7            MOV EDI,ESP
034911AB    81C7 04000000   ADD EDI,4
034911B1    81C7 04000000   ADD EDI,4
034911B7    873C24          XCHG DWORD PTR SS:[ESP],EDI
034911BA    5C              POP ESP
034911BB    FF0C24          DEC DWORD PTR SS:[ESP]
034911BE    9C              PUSHFD
034911BF  ^ E9 84EEFFFF     JMP 03490048
034911C4    F61424          NOT BYTE PTR SS:[ESP]
034911C7    302C24          XOR BYTE PTR SS:[ESP],CH
034911CA    322C24          XOR CH,BYTE PTR SS:[ESP]
034911CD    302C24          XOR BYTE PTR SS:[ESP],CH
034911D0    FEC5            INC CH
034911D2    66:52           PUSH DX
034911D4    88EE            MOV DH,CH
034911D6    8A6C24 02       MOV CH,BYTE PTR SS:[ESP+2]
034911DA    887424 02       MOV BYTE PTR SS:[ESP+2],DH
034911DE    66:5A           POP DX
034911E0  ^ E9 63EEFFFF     JMP 03490048
034911E5    66:8B0424       MOV AX,WORD PTR SS:[ESP]
034911E9    68 A4720000     PUSH 72A4
034911EE    892C24          MOV DWORD PTR SS:[ESP],EBP
034911F1    89E5            MOV EBP,ESP
034911F3    81C5 04000000   ADD EBP,4
034911F9    81C5 02000000   ADD EBP,2
034911FF    872C24          XCHG DWORD PTR SS:[ESP],EBP
03491202    5C              POP ESP
03491203    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03491207    83EC 04         SUB ESP,4
0349120A    892C24          MOV DWORD PTR SS:[ESP],EBP
0349120D    89E5            MOV EBP,ESP
0349120F    81C5 04000000   ADD EBP,4
03491215    81C5 02000000   ADD EBP,2
0349121B    872C24          XCHG DWORD PTR SS:[ESP],EBP
0349121E    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03491221    66:3BC8         CMP CX,AX
03491224    9C              PUSHFD
03491225  ^ E9 1EEEFFFF     JMP 03490048
0349122A    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
0349122E    51              PUSH ECX
0349122F    89E1            MOV ECX,ESP
03491231    81C1 04000000   ADD ECX,4
03491237    81C1 02000000   ADD ECX,2
0349123D    51              PUSH ECX
0349123E    FF7424 04       PUSH DWORD PTR SS:[ESP+4]
03491242    59              POP ECX
03491243    8F0424          POP DWORD PTR SS:[ESP]
03491246    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03491249    D20C24          ROR BYTE PTR SS:[ESP],CL
0349124C    9C              PUSHFD
0349124D  ^ E9 F6EDFFFF     JMP 03490048
03491252    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03491256    68 C9180000     PUSH 18C9
0349125B    893C24          MOV DWORD PTR SS:[ESP],EDI
0349125E    54              PUSH ESP
0349125F    5F              POP EDI
03491260    81C7 04000000   ADD EDI,4
03491266    81C7 02000000   ADD EDI,2
0349126C    873C24          XCHG DWORD PTR SS:[ESP],EDI
0349126F    5C              POP ESP
03491270    66:8B0424       MOV AX,WORD PTR SS:[ESP]
03491274    53              PUSH EBX
03491275    89E3            MOV EBX,ESP
03491277    50              PUSH EAX
03491278    B8 04000000     MOV EAX,4
0349127D    01C3            ADD EBX,EAX
0349127F    58              POP EAX
03491280    83C3 02         ADD EBX,2
03491283    871C24          XCHG DWORD PTR SS:[ESP],EBX
03491286    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03491289    F6F9            IDIV CL
0349128B    66:0FB6CC       MOVZX CX,AH
0349128F    66:68 9B3B      PUSH 3B9B
03491293    66:890C24       MOV WORD PTR SS:[ESP],CX
03491297    66:0FB6C8       MOVZX CX,AL
0349129B    66:51           PUSH CX
0349129D    9C              PUSHFD
0349129E  ^ E9 A5EDFFFF     JMP 03490048
034912A3    AD              LODS DWORD PTR DS:[ESI]
034912A4    01C6            ADD ESI,EAX
034912A6    68 670C0000     PUSH 0C67
034912AB    890424          MOV DWORD PTR SS:[ESP],EAX
034912AE    B8 9F360000     MOV EAX,369F
034912B3    89C3            MOV EBX,EAX
034912B5    58              POP EAX
034912B6    52              PUSH EDX
034912B7    BA 08000000     MOV EDX,8
034912BC    31D3            XOR EBX,EDX
034912BE    5A              POP EDX
034912BF    81F3 590B0000   XOR EBX,0B59
034912C5    F7DB            NEG EBX
034912C7    81C3 CE3D0000   ADD EBX,3DCE
034912CD  ^ E9 76EDFFFF     JMP 03490048
034912D2    50              PUSH EAX
034912D3    FF7424 04       PUSH DWORD PTR SS:[ESP+4]
034912D7    58              POP EAX
034912D8    8F0424          POP DWORD PTR SS:[ESP]
034912DB    F7D0            NOT EAX
034912DD    870424          XCHG DWORD PTR SS:[ESP],EAX
034912E0    832C24 FF       SUB DWORD PTR SS:[ESP],-1
034912E4  ^ E9 5FEDFFFF     JMP 03490048
034912E9    AD              LODS DWORD PTR DS:[ESI]
034912EA    31D8            XOR EAX,EBX
034912EC    56              PUSH ESI
034912ED    BE B1244472     MOV ESI,724424B1
034912F2    31F0            XOR EAX,ESI
034912F4    8B3424          MOV ESI,DWORD PTR SS:[ESP]
034912F7    51              PUSH ECX
034912F8    89E1            MOV ECX,ESP
034912FA    55              PUSH EBP
034912FB    BD 04000000     MOV EBP,4
03491300    01E9            ADD ECX,EBP
03491302    5D              POP EBP
03491303    81C1 04000000   ADD ECX,4
03491309    870C24          XCHG DWORD PTR SS:[ESP],ECX
0349130C    5C              POP ESP
0349130D    53              PUSH EBX
0349130E    BB 612A0000     MOV EBX,2A61
03491313    F7DB            NEG EBX
03491315    81F3 783E0000   XOR EBX,3E78
0349131B    81F3 EE6C0000   XOR EBX,6CEE
03491321    F7DB            NEG EBX
03491323    81C3 BB190000   ADD EBX,19BB
03491329    51              PUSH ECX
0349132A    B9 42989654     MOV ECX,54969842
0349132F    01CB            ADD EBX,ECX
03491331    59              POP ECX
03491332    01D8            ADD EAX,EBX
03491334    8B1C24          MOV EBX,DWORD PTR SS:[ESP]
03491337    83C4 04         ADD ESP,4
0349133A    31C3            XOR EBX,EAX
0349133C    8F00            POP DWORD PTR DS:[EAX]
0349133E  ^ E9 05EDFFFF     JMP 03490048
03491343    55              PUSH EBP
03491344    BD 01000000     MOV EBP,1
03491349    096F 1C         OR DWORD PTR DS:[EDI+1C],EBP
0349134C    8B2C24          MOV EBP,DWORD PTR SS:[ESP]
0349134F    56              PUSH ESI
03491350    54              PUSH ESP
03491351    5E              POP ESI
03491352    81C6 04000000   ADD ESI,4
03491358    81C6 04000000   ADD ESI,4
0349135E    873424          XCHG DWORD PTR SS:[ESP],ESI
03491361    5C              POP ESP
03491362  ^ E9 E1ECFFFF     JMP 03490048
03491367    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
0349136B    68 C65D0000     PUSH 5DC6
03491370    893424          MOV DWORD PTR SS:[ESP],ESI
03491373    89E6            MOV ESI,ESP
03491375    50              PUSH EAX
03491376    B8 04000000     MOV EAX,4
0349137B    01C6            ADD ESI,EAX
0349137D    58              POP EAX
0349137E    83C6 02         ADD ESI,2
03491381    873424          XCHG DWORD PTR SS:[ESP],ESI
03491384    5C              POP ESP
03491385    D31C24          RCR DWORD PTR SS:[ESP],CL
03491388    9C              PUSHFD
03491389  ^ E9 BAECFFFF     JMP 03490048
0349138E    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03491392    53              PUSH EBX
03491393    54              PUSH ESP
03491394    5B              POP EBX
03491395    81C3 04000000   ADD EBX,4
0349139B    83C3 02         ADD EBX,2
0349139E    871C24          XCHG DWORD PTR SS:[ESP],EBX
034913A1    8B2424          MOV ESP,DWORD PTR SS:[ESP]
034913A4    66:D31C24       RCR WORD PTR SS:[ESP],CL
034913A8    9C              PUSHFD
034913A9  ^ E9 9AECFFFF     JMP 03490048
034913AE    68 55600000     PUSH 6055
034913B3    54              PUSH ESP
034913B4    8F0424          POP DWORD PTR SS:[ESP]
034913B7    53              PUSH EBX
034913B8    BB A5650000     MOV EBX,65A5
034913BD    81C3 DC7D0000   ADD EBX,7DDC
034913C3    43              INC EBX
034913C4    81CB B9780000   OR EBX,78B9
034913CA    81C3 4904FFFF   ADD EBX,FFFF0449
034913D0    015C24 04       ADD DWORD PTR SS:[ESP+4],EBX
034913D4    5B              POP EBX
034913D5  ^ E9 6EECFFFF     JMP 03490048
034913DA    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
034913DE    53              PUSH EBX
034913DF    89E3            MOV EBX,ESP
034913E1    81C3 04000000   ADD EBX,4
034913E7    81EC 04000000   SUB ESP,4
034913ED    891424          MOV DWORD PTR SS:[ESP],EDX
034913F0    BA 02000000     MOV EDX,2
034913F5    01D3            ADD EBX,EDX
034913F7    5A              POP EDX
034913F8    871C24          XCHG DWORD PTR SS:[ESP],EBX
034913FB    5C              POP ESP
034913FC    66:8B0424       MOV AX,WORD PTR SS:[ESP]
03491400    81EC 04000000   SUB ESP,4
03491406    891C24          MOV DWORD PTR SS:[ESP],EBX
03491409    89E3            MOV EBX,ESP
0349140B    81C3 04000000   ADD EBX,4
03491411    81C3 02000000   ADD EBX,2
03491417    53              PUSH EBX
03491418    FF7424 04       PUSH DWORD PTR SS:[ESP+4]
0349141C    5B              POP EBX
0349141D    8F0424          POP DWORD PTR SS:[ESP]
03491420    5C              POP ESP
03491421    66:F7F9         IDIV CX
03491424    66:68 E70C      PUSH 0CE7
03491428    66:891424       MOV WORD PTR SS:[ESP],DX
0349142C    66:50           PUSH AX
0349142E    9C              PUSHFD
0349142F  ^ E9 14ECFFFF     JMP 03490048
03491434    66:8B0424       MOV AX,WORD PTR SS:[ESP]
03491438    52              PUSH EDX
03491439    89E2            MOV EDX,ESP
0349143B    81C2 04000000   ADD EDX,4
03491441    57              PUSH EDI
03491442    BF 02000000     MOV EDI,2
03491447    01FA            ADD EDX,EDI
03491449    5F              POP EDI
0349144A    871424          XCHG DWORD PTR SS:[ESP],EDX
0349144D    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03491450    FE0424          INC BYTE PTR SS:[ESP]
03491453    9C              PUSHFD
03491454  ^ E9 EFEBFFFF     JMP 03490048
03491459    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
0349145D    57              PUSH EDI
0349145E    89E7            MOV EDI,ESP
03491460    50              PUSH EAX
03491461    51              PUSH ECX
03491462    B9 04000000     MOV ECX,4
03491467    89C8            MOV EAX,ECX
03491469    59              POP ECX
0349146A    01C7            ADD EDI,EAX
0349146C    58              POP EAX
0349146D    81C7 02000000   ADD EDI,2
03491473    873C24          XCHG DWORD PTR SS:[ESP],EDI
03491476    5C              POP ESP
03491477    D32424          SHL DWORD PTR SS:[ESP],CL
0349147A    9C              PUSHFD
0349147B  ^ E9 C8EBFFFF     JMP 03490048
03491480    AD              LODS DWORD PTR DS:[ESI]
03491481    837F 20 00      CMP DWORD PTR DS:[EDI+20],0
03491485    0F84 22000000   JE 034914AD
0349148B    01C6            ADD ESI,EAX
0349148D    56              PUSH ESI
0349148E    BE D7500000     MOV ESI,50D7
03491493    89F3            MOV EBX,ESI
03491495    8B3424          MOV ESI,DWORD PTR SS:[ESP]
03491498    81C4 04000000   ADD ESP,4
0349149E    52              PUSH EDX
0349149F    BA E8670000     MOV EDX,67E8
034914A4    09D3            OR EBX,EDX
034914A6    5A              POP EDX
034914A7    81EB FF770000   SUB EBX,77FF
034914AD    89C0            MOV EAX,EAX
034914AF  ^ E9 94EBFFFF     JMP 03490048
034914B4    89C0            MOV EAX,EAX
034914B6  ^ E9 8DEBFFFF     JMP 03490048
034914BB    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
034914BF    53              PUSH EBX
034914C0    89E3            MOV EBX,ESP
034914C2    81C3 04000000   ADD EBX,4
034914C8    81C3 02000000   ADD EBX,2
034914CE    53              PUSH EBX
034914CF    FF7424 04       PUSH DWORD PTR SS:[ESP+4]
034914D3    8B1C24          MOV EBX,DWORD PTR SS:[ESP]
034914D6    81C4 04000000   ADD ESP,4
034914DC    8F0424          POP DWORD PTR SS:[ESP]
034914DF    5C              POP ESP
034914E0    D21424          RCL BYTE PTR SS:[ESP],CL
034914E3    9C              PUSHFD
034914E4  ^ E9 5FEBFFFF     JMP 03490048
034914E9    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
034914ED    55              PUSH EBP
034914EE    89E5            MOV EBP,ESP
034914F0    57              PUSH EDI
034914F1    55              PUSH EBP
034914F2    BD 04000000     MOV EBP,4
034914F7    89EF            MOV EDI,EBP
034914F9    5D              POP EBP
034914FA    01FD            ADD EBP,EDI
034914FC    5F              POP EDI
034914FD    83C5 02         ADD EBP,2
03491500    872C24          XCHG DWORD PTR SS:[ESP],EBP
03491503    5C              POP ESP
03491504    D21C24          RCR BYTE PTR SS:[ESP],CL
03491507    9C              PUSHFD
03491508  ^ E9 3BEBFFFF     JMP 03490048
0349150D    54              PUSH ESP
0349150E    FF3424          PUSH DWORD PTR SS:[ESP]
03491511    5A              POP EDX
03491512    52              PUSH EDX
03491513    89E2            MOV EDX,ESP
03491515    81C2 04000000   ADD EDX,4
0349151B    81C2 04000000   ADD EDX,4
03491521    871424          XCHG DWORD PTR SS:[ESP],EDX
03491524    5C              POP ESP
03491525  ^ E9 1EEBFFFF     JMP 03490048
0349152A    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
0349152E    56              PUSH ESI
0349152F    89E6            MOV ESI,ESP
03491531    81C6 04000000   ADD ESI,4
03491537    81C6 02000000   ADD ESI,2
0349153D    56              PUSH ESI
0349153E    FF7424 04       PUSH DWORD PTR SS:[ESP+4]
03491542    8B3424          MOV ESI,DWORD PTR SS:[ESP]
03491545    83C4 04         ADD ESP,4
03491548    8F0424          POP DWORD PTR SS:[ESP]
0349154B    5C              POP ESP
0349154C    66:D30C24       ROR WORD PTR SS:[ESP],CL
03491550    9C              PUSHFD
03491551  ^ E9 F2EAFFFF     JMP 03490048
03491556    66:8B0424       MOV AX,WORD PTR SS:[ESP]
0349155A    53              PUSH EBX
0349155B    89E3            MOV EBX,ESP
0349155D    52              PUSH EDX
0349155E    BA 04000000     MOV EDX,4
03491563    01D3            ADD EBX,EDX
03491565    5A              POP EDX
03491566    57              PUSH EDI
03491567    BF 02000000     MOV EDI,2
0349156C    01FB            ADD EBX,EDI
0349156E    5F              POP EDI
0349156F    871C24          XCHG DWORD PTR SS:[ESP],EBX
03491572    5C              POP ESP
03491573    66:0FBB0424     BTC WORD PTR SS:[ESP],AX
03491578    9C              PUSHFD
03491579  ^ E9 CAEAFFFF     JMP 03490048
0349157E    AC              LODS BYTE PTR DS:[ESI]
0349157F    00D8            ADD AL,BL
03491581    66:68 5342      PUSH 4253
03491585    66:890C24       MOV WORD PTR SS:[ESP],CX
03491589    B1 00           MOV CL,0
0349158B    F6D1            NOT CL
0349158D    C0E1 10         SHL CL,10
03491590    50              PUSH EAX
03491591    B4 C9           MOV AH,0C9
03491593    30E1            XOR CL,AH
03491595    58              POP EAX
03491596    30C8            XOR AL,CL
03491598    66:59           POP CX
0349159A    66:52           PUSH DX
0349159C    50              PUSH EAX
0349159D    B4 08           MOV AH,8
0349159F    88E2            MOV DL,AH
034915A1    58              POP EAX
034915A2    80EA 05         SUB DL,5
034915A5    66:53           PUSH BX
034915A7    B3 02           MOV BL,2
034915A9    28DA            SUB DL,BL
034915AB    66:5B           POP BX
034915AD    30D0            XOR AL,DL
034915AF    66:5A           POP DX
034915B1    00C3            ADD BL,AL
034915B3    0FB6C0          MOVZX EAX,AL
034915B6    52              PUSH EDX
034915B7    89E2            MOV EDX,ESP
034915B9    81C2 04000000   ADD EDX,4
034915BF    83EA 02         SUB EDX,2
034915C2    52              PUSH EDX
034915C3    FF7424 04       PUSH DWORD PTR SS:[ESP+4]
034915C7    5A              POP EDX
034915C8    8F0424          POP DWORD PTR SS:[ESP]
034915CB    8B2424          MOV ESP,DWORD PTR SS:[ESP]
034915CE    66:890424       MOV WORD PTR SS:[ESP],AX
034915D2  ^ E9 71EAFFFF     JMP 03490048
034915D7    AC              LODS BYTE PTR DS:[ESI]
034915D8    00D8            ADD AL,BL
034915DA    53              PUSH EBX
034915DB    66:52           PUSH DX
034915DD    B6 77           MOV DH,77
034915DF    F6D6            NOT DH
034915E1    80C6 83         ADD DH,83
034915E4    88F7            MOV BH,DH
034915E6    66:8B1424       MOV DX,WORD PTR SS:[ESP]
034915EA    81C4 02000000   ADD ESP,2
034915F0    30F8            XOR AL,BH
034915F2    5B              POP EBX
034915F3    57              PUSH EDI
034915F4    89E7            MOV EDI,ESP
034915F6    81C7 04000000   ADD EDI,4
034915FC    81EF 04000000   SUB EDI,4
03491602    873C24          XCHG DWORD PTR SS:[ESP],EDI
03491605    5C              POP ESP
03491606    891424          MOV DWORD PTR SS:[ESP],EDX
03491609    B2 B7           MOV DL,0B7
0349160B    30D0            XOR AL,DL
0349160D    8B1424          MOV EDX,DWORD PTR SS:[ESP]
03491610    81C4 04000000   ADD ESP,4
03491616    00C3            ADD BL,AL
03491618    0FB6C0          MOVZX EAX,AL
0349161B    FF3487          PUSH DWORD PTR DS:[EDI+EAX*4]
0349161E  ^ E9 25EAFFFF     JMP 03490048
03491623    FF3424          PUSH DWORD PTR SS:[ESP]
03491626    58              POP EAX
03491627    50              PUSH EAX
03491628    89E0            MOV EAX,ESP
0349162A    05 04000000     ADD EAX,4
0349162F    05 04000000     ADD EAX,4
03491634    870424          XCHG DWORD PTR SS:[ESP],EAX
03491637    8B2424          MOV ESP,DWORD PTR SS:[ESP]
0349163A    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
0349163D    56              PUSH ESI
0349163E    89E6            MOV ESI,ESP
03491640    81C6 04000000   ADD ESI,4
03491646    81C6 04000000   ADD ESI,4
0349164C    81EC 04000000   SUB ESP,4
03491652    893424          MOV DWORD PTR SS:[ESP],ESI
03491655    FF7424 04       PUSH DWORD PTR SS:[ESP+4]
03491659    5E              POP ESI
0349165A    8F0424          POP DWORD PTR SS:[ESP]
0349165D    5C              POP ESP
0349165E    0FBEC8          MOVSX ECX,AL
03491661    68 1C060000     PUSH 61C
03491666    890C24          MOV DWORD PTR SS:[ESP],ECX
03491669  ^ E9 DAE9FFFF     JMP 03490048
0349166E    8B1424          MOV EDX,DWORD PTR SS:[ESP]
03491671    57              PUSH EDI
03491672    89E7            MOV EDI,ESP
03491674    81C7 04000000   ADD EDI,4
0349167A    51              PUSH ECX
0349167B    B9 04000000     MOV ECX,4
03491680    01CF            ADD EDI,ECX
03491682    59              POP ECX
03491683    873C24          XCHG DWORD PTR SS:[ESP],EDI
03491686    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03491689  ^ E9 BAE9FFFF     JMP 03490048
0349168E    66:0FB602       MOVZX AX,BYTE PTR DS:[EDX]
03491692    66:68 0C3A      PUSH 3A0C
03491696    66:890424       MOV WORD PTR SS:[ESP],AX
0349169A  ^ E9 A9E9FFFF     JMP 03490048
0349169F    AC              LODS BYTE PTR DS:[ESI]
034916A0    28D8            SUB AL,BL
034916A2    57              PUSH EDI
034916A3    89E7            MOV EDI,ESP
034916A5    81C7 04000000   ADD EDI,4
034916AB    83EF 02         SUB EDI,2
034916AE    873C24          XCHG DWORD PTR SS:[ESP],EDI
034916B1    5C              POP ESP
034916B2    66:891C24       MOV WORD PTR SS:[ESP],BX
034916B6    B7 44           MOV BH,44
034916B8    30F8            XOR AL,BH
034916BA    66:8B1C24       MOV BX,WORD PTR SS:[ESP]
034916BE    81C4 02000000   ADD ESP,2
034916C4    81EC 04000000   SUB ESP,4
034916CA    891424          MOV DWORD PTR SS:[ESP],EDX
034916CD    66:53           PUSH BX
034916CF    B3 E0           MOV BL,0E0
034916D1    88DE            MOV DH,BL
034916D3    66:5B           POP BX
034916D5    28F0            SUB AL,DH
034916D7    8B1424          MOV EDX,DWORD PTR SS:[ESP]
034916DA    81C4 04000000   ADD ESP,4
034916E0    00C3            ADD BL,AL
034916E2    0FB6C0          MOVZX EAX,AL
034916E5    8B0487          MOV EAX,DWORD PTR DS:[EDI+EAX*4]
034916E8    01C2            ADD EDX,EAX
034916EA  ^ E9 59E9FFFF     JMP 03490048
034916EF    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
034916F2    50              PUSH EAX
034916F3    89E0            MOV EAX,ESP
034916F5    05 04000000     ADD EAX,4
034916FA    55              PUSH EBP
034916FB    50              PUSH EAX
034916FC    B8 04000000     MOV EAX,4
03491701    89C5            MOV EBP,EAX
03491703    58              POP EAX
03491704    01E8            ADD EAX,EBP
03491706    5D              POP EBP
03491707    870424          XCHG DWORD PTR SS:[ESP],EAX
0349170A    5C              POP ESP
0349170B    FF3424          PUSH DWORD PTR SS:[ESP]
0349170E    8B0424          MOV EAX,DWORD PTR SS:[ESP]
03491711    55              PUSH EBP
03491712    89E5            MOV EBP,ESP
03491714    81C5 04000000   ADD EBP,4
0349171A    83C5 04         ADD EBP,4
0349171D    872C24          XCHG DWORD PTR SS:[ESP],EBP
03491720    5C              POP ESP
03491721    83C4 04         ADD ESP,4
03491724    F7E1            MUL ECX
03491726    57              PUSH EDI
03491727    89E7            MOV EDI,ESP
03491729    51              PUSH ECX
0349172A    53              PUSH EBX
0349172B    BB 04000000     MOV EBX,4
03491730    89D9            MOV ECX,EBX
03491732    5B              POP EBX
03491733    01CF            ADD EDI,ECX
03491735    59              POP ECX
03491736    81EF 04000000   SUB EDI,4
0349173C    873C24          XCHG DWORD PTR SS:[ESP],EDI
0349173F    5C              POP ESP
03491740    891424          MOV DWORD PTR SS:[ESP],EDX
03491743    50              PUSH EAX
03491744    9C              PUSHFD
03491745  ^ E9 FEE8FFFF     JMP 03490048
0349174A    66:8B0424       MOV AX,WORD PTR SS:[ESP]
0349174E    56              PUSH ESI
0349174F    54              PUSH ESP
03491750    5E              POP ESI
03491751    81C6 04000000   ADD ESI,4
03491757    83C6 02         ADD ESI,2
0349175A    56              PUSH ESI
0349175B    FF7424 04       PUSH DWORD PTR SS:[ESP+4]
0349175F    5E              POP ESI
03491760    8F0424          POP DWORD PTR SS:[ESP]
03491763    5C              POP ESP
03491764    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03491768    56              PUSH ESI
03491769    89E6            MOV ESI,ESP
0349176B    51              PUSH ECX
0349176C    B9 04000000     MOV ECX,4
03491771    01CE            ADD ESI,ECX
03491773    59              POP ECX
03491774    57              PUSH EDI
03491775    BF 02000000     MOV EDI,2
0349177A    01FE            ADD ESI,EDI
0349177C    5F              POP EDI
0349177D    873424          XCHG DWORD PTR SS:[ESP],ESI
03491780    5C              POP ESP
03491781    38C1            CMP CL,AL
03491783    9C              PUSHFD
03491784  ^ E9 BFE8FFFF     JMP 03490048
03491789    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
0349178D    56              PUSH ESI
0349178E    89E6            MOV ESI,ESP
03491790    81C6 04000000   ADD ESI,4
03491796    81C6 02000000   ADD ESI,2
0349179C    333424          XOR ESI,DWORD PTR SS:[ESP]
0349179F    313424          XOR DWORD PTR SS:[ESP],ESI
034917A2    333424          XOR ESI,DWORD PTR SS:[ESP]
034917A5    5C              POP ESP
034917A6    D30C24          ROR DWORD PTR SS:[ESP],CL
034917A9    9C              PUSHFD
034917AA  ^ E9 99E8FFFF     JMP 03490048
034917AF    66:8B0424       MOV AX,WORD PTR SS:[ESP]
034917B3    56              PUSH ESI
034917B4    89E6            MOV ESI,ESP
034917B6    55              PUSH EBP
034917B7    BD 04000000     MOV EBP,4
034917BC    01EE            ADD ESI,EBP
034917BE    5D              POP EBP
034917BF    83C6 02         ADD ESI,2
034917C2    873424          XCHG DWORD PTR SS:[ESP],ESI
034917C5    8B2424          MOV ESP,DWORD PTR SS:[ESP]
034917C8    FE0C24          DEC BYTE PTR SS:[ESP]
034917CB    9C              PUSHFD
034917CC  ^ E9 77E8FFFF     JMP 03490048
034917D1    FF3424          PUSH DWORD PTR SS:[ESP]
034917D4    58              POP EAX
034917D5    56              PUSH ESI
034917D6    89E6            MOV ESI,ESP
034917D8    53              PUSH EBX
034917D9    BB 04000000     MOV EBX,4
034917DE    01DE            ADD ESI,EBX
034917E0    5B              POP EBX
034917E1    81C6 04000000   ADD ESI,4
034917E7    873424          XCHG DWORD PTR SS:[ESP],ESI
034917EA    5C              POP ESP
034917EB    110424          ADC DWORD PTR SS:[ESP],EAX
034917EE    9C              PUSHFD
034917EF  ^ E9 54E8FFFF     JMP 03490048
034917F4    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
034917F8    56              PUSH ESI
034917F9    89E6            MOV ESI,ESP
034917FB    68 F61E0000     PUSH 1EF6
03491800    893C24          MOV DWORD PTR SS:[ESP],EDI
03491803    BF 04000000     MOV EDI,4
03491808    01FE            ADD ESI,EDI
0349180A    5F              POP EDI
0349180B    81C6 02000000   ADD ESI,2
03491811    873424          XCHG DWORD PTR SS:[ESP],ESI
03491814    5C              POP ESP
03491815    D23C24          SAR BYTE PTR SS:[ESP],CL
03491818    9C              PUSHFD
03491819  ^ E9 2AE8FFFF     JMP 03490048
0349181E    AD              LODS DWORD PTR DS:[ESI]
0349181F    31D8            XOR EAX,EBX
03491821    51              PUSH ECX
03491822    52              PUSH EDX
03491823    BA 981EF110     MOV EDX,10F11E98
03491828    89D1            MOV ECX,EDX
0349182A    5A              POP EDX
0349182B    31C8            XOR EAX,ECX
0349182D    FF3424          PUSH DWORD PTR SS:[ESP]
03491830    59              POP ECX
03491831    81C4 04000000   ADD ESP,4
03491837    68 171D0000     PUSH 1D17
0349183C    891C24          MOV DWORD PTR SS:[ESP],EBX
0349183F    52              PUSH EDX
03491840    BA 8FD73228     MOV EDX,2832D78F
03491845    89D3            MOV EBX,EDX
03491847    5A              POP EDX
03491848    29D8            SUB EAX,EBX
0349184A    8B1C24          MOV EBX,DWORD PTR SS:[ESP]
0349184D    83C4 04         ADD ESP,4
03491850    01C3            ADD EBX,EAX
03491852    66:8B1424       MOV DX,WORD PTR SS:[ESP]
03491856    50              PUSH EAX
03491857    89E0            MOV EAX,ESP
03491859    56              PUSH ESI
0349185A    BE 34790000     MOV ESI,7934
0349185F    81F6 A24F0000   XOR ESI,4FA2
03491865    D1E6            SHL ESI,1
03491867    81C6 F3010000   ADD ESI,1F3
0349186D    C1E6 18         SHL ESI,18
03491870    81EE 24080000   SUB ESI,824
03491876    81C6 280800E1   ADD ESI,E1000828
0349187C    01F0            ADD EAX,ESI
0349187E    5E              POP ESI
0349187F    05 02000000     ADD EAX,2
03491884    870424          XCHG DWORD PTR SS:[ESP],EAX
03491887    5C              POP ESP
03491888    68 B1730000     PUSH 73B1
0349188D    890C24          MOV DWORD PTR SS:[ESP],ECX
03491890    56              PUSH ESI
03491891    BE 00000000     MOV ESI,0
03491896    89F1            MOV ECX,ESI
03491898    5E              POP ESI
03491899    01C1            ADD ECX,EAX
0349189B    8811            MOV BYTE PTR DS:[ECX],DL
0349189D    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
034918A0    81C4 04000000   ADD ESP,4
034918A6  ^ E9 9DE7FFFF     JMP 03490048
034918AB    FF3424          PUSH DWORD PTR SS:[ESP]
034918AE    8B0424          MOV EAX,DWORD PTR SS:[ESP]
034918B1    53              PUSH EBX
034918B2    89E3            MOV EBX,ESP
034918B4    81C3 04000000   ADD EBX,4
034918BA    81C3 04000000   ADD EBX,4
034918C0    871C24          XCHG DWORD PTR SS:[ESP],EBX
034918C3    5C              POP ESP
034918C4    81C4 04000000   ADD ESP,4
034918CA    0FA30424        BT DWORD PTR SS:[ESP],EAX
034918CE    9C              PUSHFD
034918CF  ^ E9 74E7FFFF     JMP 03490048
034918D4    FF3424          PUSH DWORD PTR SS:[ESP]
034918D7    59              POP ECX
034918D8    53              PUSH EBX
034918D9    89E3            MOV EBX,ESP
034918DB    81C3 04000000   ADD EBX,4
034918E1    81C3 04000000   ADD EBX,4
034918E7    871C24          XCHG DWORD PTR SS:[ESP],EBX
034918EA    8B2424          MOV ESP,DWORD PTR SS:[ESP]
034918ED    D32424          SHL DWORD PTR SS:[ESP],CL
034918F0  ^ E9 53E7FFFF     JMP 03490048
034918F5    FF3424          PUSH DWORD PTR SS:[ESP]
034918F8    58              POP EAX
034918F9    56              PUSH ESI
034918FA    89E6            MOV ESI,ESP
034918FC    81C6 04000000   ADD ESI,4
03491902    52              PUSH EDX
03491903    BA 04000000     MOV EDX,4
03491908    01D6            ADD ESI,EDX
0349190A    5A              POP EDX
0349190B    873424          XCHG DWORD PTR SS:[ESP],ESI
0349190E    5C              POP ESP
0349190F    190424          SBB DWORD PTR SS:[ESP],EAX
03491912    9C              PUSHFD
03491913  ^ E9 30E7FFFF     JMP 03490048
03491918    AC              LODS BYTE PTR DS:[ESI]
03491919    00D8            ADD AL,BL
0349191B    51              PUSH ECX
0349191C    B1 BE           MOV CL,0BE
0349191E    80C1 20         ADD CL,20
03491921    80E1 D2         AND CL,0D2
03491924    50              PUSH EAX
03491925    B0 BB           MOV AL,0BB
03491927    20C1            AND CL,AL
03491929    58              POP EAX
0349192A    F6D1            NOT CL
0349192C    80C1 A5         ADD CL,0A5
0349192F    30C8            XOR AL,CL
03491931    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
03491934    83C4 04         ADD ESP,4
03491937    53              PUSH EBX
03491938    89E3            MOV EBX,ESP
0349193A    81C3 04000000   ADD EBX,4
03491940    81EB 02000000   SUB EBX,2
03491946    871C24          XCHG DWORD PTR SS:[ESP],EBX
03491949    8B2424          MOV ESP,DWORD PTR SS:[ESP]
0349194C    66:891424       MOV WORD PTR SS:[ESP],DX
03491950    B6 1A           MOV DH,1A
03491952    30F0            XOR AL,DH
03491954    66:5A           POP DX
03491956    28C3            SUB BL,AL
03491958    52              PUSH EDX
03491959    BA 28000000     MOV EDX,28
0349195E    01FA            ADD EDX,EDI
03491960    53              PUSH EBX
03491961    BB 00000000     MOV EBX,0
03491966    01D3            ADD EBX,EDX
03491968    8803            MOV BYTE PTR DS:[EBX],AL
0349196A    5B              POP EBX
0349196B    FF3424          PUSH DWORD PTR SS:[ESP]
0349196E    5A              POP EDX
0349196F    81C4 04000000   ADD ESP,4
03491975  ^ E9 CEE6FFFF     JMP 03490048
0349197A    66:8B0424       MOV AX,WORD PTR SS:[ESP]
0349197E    51              PUSH ECX
0349197F    54              PUSH ESP
03491980    59              POP ECX
03491981    81C1 04000000   ADD ECX,4
03491987    81C1 02000000   ADD ECX,2
0349198D    870C24          XCHG DWORD PTR SS:[ESP],ECX
03491990    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03491993    080424          OR BYTE PTR SS:[ESP],AL
03491996    9C              PUSHFD
03491997  ^ E9 ACE6FFFF     JMP 03490048
0349199C    53              PUSH EBX
0349199D    BB A0040000     MOV EBX,4A0
034919A2    52              PUSH EDX
034919A3    56              PUSH ESI
034919A4    BE 60FBFFFF     MOV ESI,-4A0
034919A9    89F2            MOV EDX,ESI
034919AB    5E              POP ESI
034919AC    01D3            ADD EBX,EDX
034919AE    5A              POP EDX
034919AF    895F 30         MOV DWORD PTR DS:[EDI+30],EBX
034919B2    5B              POP EBX
034919B3    61              POPAD
034919B4    9D              POPFD
034919B5    C3              RETN
034919B6  ^ E9 8DE6FFFF     JMP 03490048
034919BB    FF3424          PUSH DWORD PTR SS:[ESP]
034919BE    58              POP EAX
034919BF    53              PUSH EBX
034919C0    54              PUSH ESP
034919C1    5B              POP EBX
034919C2    81C3 04000000   ADD EBX,4
034919C8    81C3 04000000   ADD EBX,4
034919CE    871C24          XCHG DWORD PTR SS:[ESP],EBX
034919D1    5C              POP ESP
034919D2    FF3424          PUSH DWORD PTR SS:[ESP]
034919D5    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
034919D8    52              PUSH EDX
034919D9    89E2            MOV EDX,ESP
034919DB    81C2 04000000   ADD EDX,4
034919E1    83C2 04         ADD EDX,4
034919E4    871424          XCHG DWORD PTR SS:[ESP],EDX
034919E7    5C              POP ESP
034919E8    83C4 04         ADD ESP,4
034919EB    0FB6C8          MOVZX ECX,AL
034919EE    68 11520000     PUSH 5211
034919F3    890C24          MOV DWORD PTR SS:[ESP],ECX
034919F6  ^ E9 4DE6FFFF     JMP 03490048
034919FB    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
034919FF    55              PUSH EBP
03491A00    54              PUSH ESP
03491A01    5D              POP EBP
03491A02    81C5 04000000   ADD EBP,4
03491A08    81C5 02000000   ADD EBP,2
03491A0E    872C24          XCHG DWORD PTR SS:[ESP],EBP
03491A11    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03491A14    66:D32424       SHL WORD PTR SS:[ESP],CL
03491A18    9C              PUSHFD
03491A19  ^ E9 2AE6FFFF     JMP 03490048
03491A1E    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03491A22    57              PUSH EDI
03491A23    89E7            MOV EDI,ESP
03491A25    81C7 04000000   ADD EDI,4
03491A2B    68 E9250000     PUSH 25E9
03491A30    893424          MOV DWORD PTR SS:[ESP],ESI
03491A33    BE 02000000     MOV ESI,2
03491A38    01F7            ADD EDI,ESI
03491A3A    5E              POP ESI
03491A3B    873C24          XCHG DWORD PTR SS:[ESP],EDI
03491A3E    5C              POP ESP
03491A3F    66:8B0424       MOV AX,WORD PTR SS:[ESP]
03491A43    68 20260000     PUSH 2620
03491A48    893C24          MOV DWORD PTR SS:[ESP],EDI
03491A4B    54              PUSH ESP
03491A4C    5F              POP EDI
03491A4D    81C7 04000000   ADD EDI,4
03491A53    83C7 02         ADD EDI,2
03491A56    873C24          XCHG DWORD PTR SS:[ESP],EDI
03491A59    5C              POP ESP
03491A5A    66:F7E9         IMUL CX
03491A5D    53              PUSH EBX
03491A5E    89E3            MOV EBX,ESP
03491A60    81C3 04000000   ADD EBX,4
03491A66    56              PUSH ESI
03491A67    BE 02000000     MOV ESI,2
03491A6C    29F3            SUB EBX,ESI
03491A6E    5E              POP ESI
03491A6F    53              PUSH EBX
03491A70    FF7424 04       PUSH DWORD PTR SS:[ESP+4]
03491A74    5B              POP EBX
03491A75    8F0424          POP DWORD PTR SS:[ESP]
03491A78    5C              POP ESP
03491A79    66:891424       MOV WORD PTR SS:[ESP],DX
03491A7D    66:50           PUSH AX
03491A7F    9C              PUSHFD
03491A80  ^ E9 C3E5FFFF     JMP 03490048
03491A85    66:8B0424       MOV AX,WORD PTR SS:[ESP]
03491A89    81EC 04000000   SUB ESP,4
03491A8F    893424          MOV DWORD PTR SS:[ESP],ESI
03491A92    89E6            MOV ESI,ESP
03491A94    81C6 04000000   ADD ESI,4
03491A9A    83C6 02         ADD ESI,2
03491A9D    873424          XCHG DWORD PTR SS:[ESP],ESI
03491AA0    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03491AA3    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03491AA7    56              PUSH ESI
03491AA8    89E6            MOV ESI,ESP
03491AAA    52              PUSH EDX
03491AAB    BA 04000000     MOV EDX,4
03491AB0    01D6            ADD ESI,EDX
03491AB2    5A              POP EDX
03491AB3    81C6 02000000   ADD ESI,2
03491AB9    873424          XCHG DWORD PTR SS:[ESP],ESI
03491ABC    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03491ABF    84C8            TEST AL,CL
03491AC1    9C              PUSHFD
03491AC2  ^ E9 81E5FFFF     JMP 03490048
03491AC7    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03491ACB    53              PUSH EBX
03491ACC    54              PUSH ESP
03491ACD    5B              POP EBX
03491ACE    55              PUSH EBP
03491ACF    BD 04000000     MOV EBP,4
03491AD4    01EB            ADD EBX,EBP
03491AD6    5D              POP EBP
03491AD7    83C3 02         ADD EBX,2
03491ADA    871C24          XCHG DWORD PTR SS:[ESP],EBX
03491ADD    5C              POP ESP
03491ADE    66:D33C24       SAR WORD PTR SS:[ESP],CL
03491AE2    9C              PUSHFD
03491AE3  ^ E9 60E5FFFF     JMP 03490048
03491AE8    AD              LODS DWORD PTR DS:[ESI]
03491AE9    29D8            SUB EAX,EBX
03491AEB    57              PUSH EDI
03491AEC    89E7            MOV EDI,ESP
03491AEE    81C7 04000000   ADD EDI,4
03491AF4    83EF 04         SUB EDI,4
03491AF7    873C24          XCHG DWORD PTR SS:[ESP],EDI
03491AFA    5C              POP ESP
03491AFB    893C24          MOV DWORD PTR SS:[ESP],EDI
03491AFE    BF 4BB83368     MOV EDI,6833B84B
03491B03    31F8            XOR EAX,EDI
03491B05    8B3C24          MOV EDI,DWORD PTR SS:[ESP]
03491B08    83C4 04         ADD ESP,4
03491B0B    51              PUSH ECX
03491B0C    B9 60150000     MOV ECX,1560
03491B11    81C1 1D680000   ADD ECX,681D
03491B17    C1E9 16         SHR ECX,16
03491B1A    81C1 477B0000   ADD ECX,7B47
03491B20    81C9 0C670000   OR ECX,670C
03491B26    81C9 DC4A0000   OR ECX,4ADC
03491B2C    81F1 A1032B70   XOR ECX,702B03A1
03491B32    31C8            XOR EAX,ECX
03491B34    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
03491B37    56              PUSH ESI
03491B38    89E6            MOV ESI,ESP
03491B3A    81C6 04000000   ADD ESI,4
03491B40    83C6 04         ADD ESI,4
03491B43    873424          XCHG DWORD PTR SS:[ESP],ESI
03491B46    5C              POP ESP
03491B47    01C3            ADD EBX,EAX
03491B49    51              PUSH ECX
03491B4A    B9 2C000000     MOV ECX,2C
03491B4F    01F9            ADD ECX,EDI
03491B51    0301            ADD EAX,DWORD PTR DS:[ECX]
03491B53    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
03491B56    52              PUSH EDX
03491B57    89E2            MOV EDX,ESP
03491B59    81C2 04000000   ADD EDX,4
03491B5F    81C2 04000000   ADD EDX,4
03491B65    871424          XCHG DWORD PTR SS:[ESP],EDX
03491B68    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03491B6B    52              PUSH EDX
03491B6C    89E2            MOV EDX,ESP
03491B6E    81C2 04000000   ADD EDX,4
03491B74    81EA 04000000   SUB EDX,4
03491B7A    331424          XOR EDX,DWORD PTR SS:[ESP]
03491B7D    311424          XOR DWORD PTR SS:[ESP],EDX
03491B80    331424          XOR EDX,DWORD PTR SS:[ESP]
03491B83    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03491B86    890424          MOV DWORD PTR SS:[ESP],EAX
03491B89  ^ E9 BAE4FFFF     JMP 03490048
03491B8E    50              PUSH EAX
03491B8F    FF7424 04       PUSH DWORD PTR SS:[ESP+4]
03491B93    58              POP EAX
03491B94    8F0424          POP DWORD PTR SS:[ESP]
03491B97    50              PUSH EAX
03491B98    F71424          NOT DWORD PTR SS:[ESP]
03491B9B    58              POP EAX
03491B9C    310424          XOR DWORD PTR SS:[ESP],EAX
03491B9F    330424          XOR EAX,DWORD PTR SS:[ESP]
03491BA2    310424          XOR DWORD PTR SS:[ESP],EAX
03491BA5  ^ E9 9EE4FFFF     JMP 03490048
03491BAA    8F02            POP DWORD PTR DS:[EDX]
03491BAC  ^ E9 97E4FFFF     JMP 03490048
03491BB1    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03491BB5    55              PUSH EBP
03491BB6    89E5            MOV EBP,ESP
03491BB8    56              PUSH ESI
03491BB9    BE 04000000     MOV ESI,4
03491BBE    01F5            ADD EBP,ESI
03491BC0    5E              POP ESI
03491BC1    53              PUSH EBX
03491BC2    BB 02000000     MOV EBX,2
03491BC7    01DD            ADD EBP,EBX
03491BC9    5B              POP EBX
03491BCA    872C24          XCHG DWORD PTR SS:[ESP],EBP
03491BCD    5C              POP ESP
03491BCE    66:D30424       ROL WORD PTR SS:[ESP],CL
03491BD2    9C              PUSHFD
03491BD3  ^ E9 70E4FFFF     JMP 03490048
03491BD8    66:8B0424       MOV AX,WORD PTR SS:[ESP]
03491BDC    53              PUSH EBX
03491BDD    54              PUSH ESP
03491BDE    5B              POP EBX
03491BDF    81C3 04000000   ADD EBX,4
03491BE5    51              PUSH ECX
03491BE6    B9 02000000     MOV ECX,2
03491BEB    01CB            ADD EBX,ECX
03491BED    59              POP ECX
03491BEE    871C24          XCHG DWORD PTR SS:[ESP],EBX
03491BF1    5C              POP ESP
03491BF2    200424          AND BYTE PTR SS:[ESP],AL
03491BF5    9C              PUSHFD
03491BF6  ^ E9 4DE4FFFF     JMP 03490048
03491BFB    66:8B0424       MOV AX,WORD PTR SS:[ESP]
03491BFF    57              PUSH EDI
03491C00    89E7            MOV EDI,ESP
03491C02    81C7 04000000   ADD EDI,4
03491C08    53              PUSH EBX
03491C09    BB 02000000     MOV EBX,2
03491C0E    01DF            ADD EDI,EBX
03491C10    8B1C24          MOV EBX,DWORD PTR SS:[ESP]
03491C13    83C4 04         ADD ESP,4
03491C16    873C24          XCHG DWORD PTR SS:[ESP],EDI
03491C19    5C              POP ESP
03491C1A    300424          XOR BYTE PTR SS:[ESP],AL
03491C1D    9C              PUSHFD
03491C1E  ^ E9 25E4FFFF     JMP 03490048
03491C23    66:FF32         PUSH WORD PTR DS:[EDX]
03491C26  ^ E9 1DE4FFFF     JMP 03490048
03491C2B    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03491C2F    53              PUSH EBX
03491C30    54              PUSH ESP
03491C31    5B              POP EBX
03491C32    81C3 04000000   ADD EBX,4
03491C38    83C3 02         ADD EBX,2
03491C3B    331C24          XOR EBX,DWORD PTR SS:[ESP]
03491C3E    311C24          XOR DWORD PTR SS:[ESP],EBX
03491C41    331C24          XOR EBX,DWORD PTR SS:[ESP]
03491C44    5C              POP ESP
03491C45    D22424          SHL BYTE PTR SS:[ESP],CL
03491C48    9C              PUSHFD
03491C49  ^ E9 FAE3FFFF     JMP 03490048
03491C4E    861424          XCHG BYTE PTR SS:[ESP],DL
03491C51    83EC 04         SUB ESP,4
03491C54    891424          MOV DWORD PTR SS:[ESP],EDX
03491C57    F61424          NOT BYTE PTR SS:[ESP]
03491C5A    5A              POP EDX
03491C5B    66:50           PUSH AX
03491C5D    88D4            MOV AH,DL
03491C5F    8A5424 02       MOV DL,BYTE PTR SS:[ESP+2]
03491C63    886424 02       MOV BYTE PTR SS:[ESP+2],AH
03491C67    66:58           POP AX
03491C69  ^ E9 DAE3FFFF     JMP 03490048
03491C6E    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03491C72    57              PUSH EDI
03491C73    54              PUSH ESP
03491C74    5F              POP EDI
03491C75    81C7 04000000   ADD EDI,4
03491C7B    51              PUSH ECX
03491C7C    B9 02000000     MOV ECX,2
03491C81    01CF            ADD EDI,ECX
03491C83    59              POP ECX
03491C84    873C24          XCHG DWORD PTR SS:[ESP],EDI
03491C87    5C              POP ESP
03491C88    66:8B0424       MOV AX,WORD PTR SS:[ESP]
03491C8C    51              PUSH ECX
03491C8D    54              PUSH ESP
03491C8E    59              POP ECX
03491C8F    81C1 04000000   ADD ECX,4
03491C95    83C1 02         ADD ECX,2
03491C98    870C24          XCHG DWORD PTR SS:[ESP],ECX
03491C9B    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03491C9E    F6E9            IMUL CL
03491CA0    66:0FB6CC       MOVZX CX,AH
03491CA4    57              PUSH EDI
03491CA5    89E7            MOV EDI,ESP
03491CA7    81C7 04000000   ADD EDI,4
03491CAD    56              PUSH ESI
03491CAE    BE 02000000     MOV ESI,2
03491CB3    29F7            SUB EDI,ESI
03491CB5    5E              POP ESI
03491CB6    873C24          XCHG DWORD PTR SS:[ESP],EDI
03491CB9    5C              POP ESP
03491CBA    66:890C24       MOV WORD PTR SS:[ESP],CX
03491CBE    66:0FB6C8       MOVZX CX,AL
03491CC2    66:51           PUSH CX
03491CC4    9C              PUSHFD
03491CC5  ^ E9 7EE3FFFF     JMP 03490048
03491CCA    66:8B0424       MOV AX,WORD PTR SS:[ESP]
03491CCE    68 5D1A0000     PUSH 1A5D
03491CD3    890C24          MOV DWORD PTR SS:[ESP],ECX
03491CD6    89E1            MOV ECX,ESP
03491CD8    81C1 04000000   ADD ECX,4
03491CDE    52              PUSH EDX
03491CDF    BA 02000000     MOV EDX,2
03491CE4    01D1            ADD ECX,EDX
03491CE6    5A              POP EDX
03491CE7    870C24          XCHG DWORD PTR SS:[ESP],ECX
03491CEA    5C              POP ESP
03491CEB    66:0FA30424     BT WORD PTR SS:[ESP],AX
03491CF0    9C              PUSHFD
03491CF1  ^ E9 52E3FFFF     JMP 03490048
03491CF6    8B0424          MOV EAX,DWORD PTR SS:[ESP]
03491CF9    51              PUSH ECX
03491CFA    89E1            MOV ECX,ESP
03491CFC    81C1 04000000   ADD ECX,4
03491D02    83C1 04         ADD ECX,4
03491D05    330C24          XOR ECX,DWORD PTR SS:[ESP]
03491D08    310C24          XOR DWORD PTR SS:[ESP],ECX
03491D0B    330C24          XOR ECX,DWORD PTR SS:[ESP]
03491D0E    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03491D11    FF3424          PUSH DWORD PTR SS:[ESP]
03491D14    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
03491D17    55              PUSH EBP
03491D18    89E5            MOV EBP,ESP
03491D1A    81C5 04000000   ADD EBP,4
03491D20    83C5 04         ADD EBP,4
03491D23    872C24          XCHG DWORD PTR SS:[ESP],EBP
03491D26    5C              POP ESP
03491D27    83C4 04         ADD ESP,4
03491D2A    0FB7C8          MOVZX ECX,AX
03491D2D    51              PUSH ECX
03491D2E    54              PUSH ESP
03491D2F    59              POP ECX
03491D30    81C1 04000000   ADD ECX,4
03491D36    83E9 04         SUB ECX,4
03491D39    870C24          XCHG DWORD PTR SS:[ESP],ECX
03491D3C    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03491D3F    890C24          MOV DWORD PTR SS:[ESP],ECX
03491D42  ^ E9 01E3FFFF     JMP 03490048
03491D47    89C0            MOV EAX,EAX
03491D49  ^ E9 FAE2FFFF     JMP 03490048
03491D4E    AC              LODS BYTE PTR DS:[ESI]
03491D4F    28D8            SUB AL,BL
03491D51    68 A9080000     PUSH 8A9
03491D56    891C24          MOV DWORD PTR SS:[ESP],EBX
03491D59    B7 6F           MOV BH,6F
03491D5B    FECF            DEC BH
03491D5D    C0E7 03         SHL BH,3
03491D60    C0E7 0A         SHL BH,0A
03491D63    80F7 12         XOR BH,12
03491D66    80EF 11         SUB BH,11
03491D69    80F7 F1         XOR BH,0F1
03491D6C    30F8            XOR AL,BH
03491D6E    8B1C24          MOV EBX,DWORD PTR SS:[ESP]
03491D71    83C4 04         ADD ESP,4
03491D74    66:68 231D      PUSH 1D23
03491D78    66:891424       MOV WORD PTR SS:[ESP],DX
03491D7C    51              PUSH ECX
03491D7D    B1 67           MOV CL,67
03491D7F    88CE            MOV DH,CL
03491D81    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
03491D84    81C4 04000000   ADD ESP,4
03491D8A    28F0            SUB AL,DH
03491D8C    66:5A           POP DX
03491D8E    30C3            XOR BL,AL
03491D90    0FB6C0          MOVZX EAX,AL
03491D93    8B0487          MOV EAX,DWORD PTR DS:[EDI+EAX*4]
03491D96    66:FF30         PUSH WORD PTR DS:[EAX]
03491D99  ^ E9 AAE2FFFF     JMP 03490048
03491D9E    AD              LODS DWORD PTR DS:[ESI]
03491D9F    29D8            SUB EAX,EBX
03491DA1    68 021D0000     PUSH 1D02
03491DA6    893424          MOV DWORD PTR SS:[ESP],ESI
03491DA9    89E6            MOV ESI,ESP
03491DAB    81C6 04000000   ADD ESI,4
03491DB1    81EE 04000000   SUB ESI,4
03491DB7    873424          XCHG DWORD PTR SS:[ESP],ESI
03491DBA    5C              POP ESP
03491DBB    893C24          MOV DWORD PTR SS:[ESP],EDI
03491DBE    BF B895AD67     MOV EDI,67AD95B8
03491DC3    31F8            XOR EAX,EDI
03491DC5    5F              POP EDI
03491DC6    55              PUSH EBP
03491DC7    BD 7CEF1B0C     MOV EBP,0C1BEF7C
03491DCC    29E8            SUB EAX,EBP
03491DCE    FF3424          PUSH DWORD PTR SS:[ESP]
03491DD1    8B2C24          MOV EBP,DWORD PTR SS:[ESP]
03491DD4    83C4 04         ADD ESP,4
03491DD7    83C4 04         ADD ESP,4
03491DDA    29C3            SUB EBX,EAX
03491DDC    66:8F00         POP WORD PTR DS:[EAX]
03491DDF  ^ E9 64E2FFFF     JMP 03490048
03491DE4    66:871424       XCHG WORD PTR SS:[ESP],DX
03491DE8    66:81C2 FFFF    ADD DX,0FFFF
03491DED    66:311424       XOR WORD PTR SS:[ESP],DX
03491DF1    66:331424       XOR DX,WORD PTR SS:[ESP]
03491DF5    66:311424       XOR WORD PTR SS:[ESP],DX
03491DF9    66:F71424       NOT WORD PTR SS:[ESP]
03491DFD  ^ E9 46E2FFFF     JMP 03490048
03491E02    51              PUSH ECX
03491E03    B9 2C000000     MOV ECX,2C
03491E08    01F9            ADD ECX,EDI
03491E0A    68 49090000     PUSH 949
03491E0F    891C24          MOV DWORD PTR SS:[ESP],EBX
03491E12    BB 00000000     MOV EBX,0
03491E17    01CB            ADD EBX,ECX
03491E19    8B03            MOV EAX,DWORD PTR DS:[EBX]
03491E1B    8B1C24          MOV EBX,DWORD PTR SS:[ESP]
03491E1E    83C4 04         ADD ESP,4
03491E21    59              POP ECX
03491E22    010424          ADD DWORD PTR SS:[ESP],EAX
03491E25  ^ E9 1EE2FFFF     JMP 03490048
03491E2A    FF3424          PUSH DWORD PTR SS:[ESP]
03491E2D    58              POP EAX
03491E2E    51              PUSH ECX
03491E2F    89E1            MOV ECX,ESP
03491E31    81C1 04000000   ADD ECX,4
03491E37    81C1 04000000   ADD ECX,4
03491E3D    870C24          XCHG DWORD PTR SS:[ESP],ECX
03491E40    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03491E43    010424          ADD DWORD PTR SS:[ESP],EAX
03491E46    9C              PUSHFD
03491E47  ^ E9 FCE1FFFF     JMP 03490048
03491E4C    8B0424          MOV EAX,DWORD PTR SS:[ESP]
03491E4F    55              PUSH EBP
03491E50    54              PUSH ESP
03491E51    5D              POP EBP
03491E52    81C5 04000000   ADD EBP,4
03491E58    83C5 04         ADD EBP,4
03491E5B    872C24          XCHG DWORD PTR SS:[ESP],EBP
03491E5E    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03491E61    FF3424          PUSH DWORD PTR SS:[ESP]
03491E64    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
03491E67    50              PUSH EAX
03491E68    89E0            MOV EAX,ESP
03491E6A    05 04000000     ADD EAX,4
03491E6F    83C0 04         ADD EAX,4
03491E72    870424          XCHG DWORD PTR SS:[ESP],EAX
03491E75    5C              POP ESP
03491E76    81C4 04000000   ADD ESP,4
03491E7C    0FBFC8          MOVSX ECX,AX
03491E7F    68 635B0000     PUSH 5B63
03491E84    890C24          MOV DWORD PTR SS:[ESP],ECX
03491E87    54              PUSH ESP
03491E88    59              POP ECX
03491E89    81C1 04000000   ADD ECX,4
03491E8F    81E9 04000000   SUB ECX,4
03491E95    870C24          XCHG DWORD PTR SS:[ESP],ECX
03491E98    5C              POP ESP
03491E99    890C24          MOV DWORD PTR SS:[ESP],ECX
03491E9C  ^ E9 A7E1FFFF     JMP 03490048
03491EA1    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03491EA5    51              PUSH ECX
03491EA6    89E1            MOV ECX,ESP
03491EA8    81C1 04000000   ADD ECX,4
03491EAE    50              PUSH EAX
03491EAF    B8 02000000     MOV EAX,2
03491EB4    01C1            ADD ECX,EAX
03491EB6    58              POP EAX
03491EB7    330C24          XOR ECX,DWORD PTR SS:[ESP]
03491EBA    310C24          XOR DWORD PTR SS:[ESP],ECX
03491EBD    330C24          XOR ECX,DWORD PTR SS:[ESP]
03491EC0    5C              POP ESP
03491EC1    D22424          SHL BYTE PTR SS:[ESP],CL
03491EC4    9C              PUSHFD
03491EC5  ^ E9 7EE1FFFF     JMP 03490048
03491ECA    66:8B0424       MOV AX,WORD PTR SS:[ESP]
03491ECE    51              PUSH ECX
03491ECF    89E1            MOV ECX,ESP
03491ED1    68 74700000     PUSH 7074
03491ED6    893424          MOV DWORD PTR SS:[ESP],ESI
03491ED9    BE 04000000     MOV ESI,4
03491EDE    01F1            ADD ECX,ESI
03491EE0    5E              POP ESI
03491EE1    83C1 02         ADD ECX,2
03491EE4    870C24          XCHG DWORD PTR SS:[ESP],ECX
03491EE7    5C              POP ESP
03491EE8    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03491EEC    56              PUSH ESI
03491EED    89E6            MOV ESI,ESP
03491EEF    81C6 04000000   ADD ESI,4
03491EF5    81C6 02000000   ADD ESI,2
03491EFB    873424          XCHG DWORD PTR SS:[ESP],ESI
03491EFE    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03491F01    66:0FBEC8       MOVSX CX,AL
03491F05    56              PUSH ESI
03491F06    89E6            MOV ESI,ESP
03491F08    83EC 04         SUB ESP,4
03491F0B    892C24          MOV DWORD PTR SS:[ESP],EBP
03491F0E    BD 04000000     MOV EBP,4
03491F13    01EE            ADD ESI,EBP
03491F15    5D              POP EBP
03491F16    81EE 02000000   SUB ESI,2
03491F1C    873424          XCHG DWORD PTR SS:[ESP],ESI
03491F1F    5C              POP ESP
03491F20    66:890C24       MOV WORD PTR SS:[ESP],CX
03491F24  ^ E9 1FE1FFFF     JMP 03490048
03491F29    AC              LODS BYTE PTR DS:[ESI]
03491F2A    28D8            SUB AL,BL
03491F2C    51              PUSH ECX
03491F2D    66:52           PUSH DX
03491F2F    B6 C9           MOV DH,0C9
03491F31    88F1            MOV CL,DH
03491F33    66:5A           POP DX
03491F35    FEC9            DEC CL
03491F37    80C1 3C         ADD CL,3C
03491F3A    00C8            ADD AL,CL
03491F3C    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
03491F3F    81C4 04000000   ADD ESP,4
03491F45    52              PUSH EDX
03491F46    81EC 04000000   SUB ESP,4
03491F4C    891C24          MOV DWORD PTR SS:[ESP],EBX
03491F4F    B7 BE           MOV BH,0BE
03491F51    80F7 7C         XOR BH,7C
03491F54    80EF 0F         SUB BH,0F
03491F57    80EF 9A         SUB BH,9A
03491F5A    80C7 14         ADD BH,14
03491F5D    80F7 D8         XOR BH,0D8
03491F60    88FA            MOV DL,BH
03491F62    5B              POP EBX
03491F63    00D0            ADD AL,DL
03491F65    5A              POP EDX
03491F66    30C3            XOR BL,AL
03491F68    0FB6C0          MOVZX EAX,AL
03491F6B    66:8F0487       POP WORD PTR DS:[EDI+EAX*4]
03491F6F  ^ E9 D4E0FFFF     JMP 03490048
03491F74    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03491F77  ^ E9 CCE0FFFF     JMP 03490048
03491F7C    53              PUSH EBX
03491F7D    89E3            MOV EBX,ESP
03491F7F    81C3 04000000   ADD EBX,4
03491F85    83EB 04         SUB EBX,4
03491F88    871C24          XCHG DWORD PTR SS:[ESP],EBX
03491F8B    5C              POP ESP
03491F8C    890C24          MOV DWORD PTR SS:[ESP],ECX
03491F8F    B9 00040000     MOV ECX,400
03491F94    094F 1C         OR DWORD PTR DS:[EDI+1C],ECX
03491F97    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
03491F9A    81C4 04000000   ADD ESP,4
03491FA0  ^ E9 A3E0FFFF     JMP 03490048
03491FA5    68 946E0000     PUSH 6E94
03491FAA    891C24          MOV DWORD PTR SS:[ESP],EBX
03491FAD    BB 2C000000     MOV EBX,2C
03491FB2    01FB            ADD EBX,EDI
03491FB4    8B03            MOV EAX,DWORD PTR DS:[EBX]
03491FB6    8B1C24          MOV EBX,DWORD PTR SS:[ESP]
03491FB9    55              PUSH EBP
03491FBA    89E5            MOV EBP,ESP
03491FBC    81C5 04000000   ADD EBP,4
03491FC2    83C5 04         ADD EBP,4
03491FC5    872C24          XCHG DWORD PTR SS:[ESP],EBP
03491FC8    5C              POP ESP
03491FC9    01C2            ADD EDX,EAX
03491FCB  ^ E9 78E0FFFF     JMP 03490048
03491FD0    8B0424          MOV EAX,DWORD PTR SS:[ESP]
03491FD3    81EC 04000000   SUB ESP,4
03491FD9    890424          MOV DWORD PTR SS:[ESP],EAX
03491FDC    54              PUSH ESP
03491FDD    58              POP EAX
03491FDE    05 04000000     ADD EAX,4
03491FE3    05 04000000     ADD EAX,4
03491FE8    870424          XCHG DWORD PTR SS:[ESP],EAX
03491FEB    5C              POP ESP
03491FEC    FF3424          PUSH DWORD PTR SS:[ESP]
03491FEF    59              POP ECX
03491FF0    81EC 04000000   SUB ESP,4
03491FF6    890C24          MOV DWORD PTR SS:[ESP],ECX
03491FF9    89E1            MOV ECX,ESP
03491FFB    81C1 04000000   ADD ECX,4
03492001    83C1 04         ADD ECX,4
03492004    870C24          XCHG DWORD PTR SS:[ESP],ECX
03492007    5C              POP ESP
03492008    3BC8            CMP ECX,EAX
0349200A    9C              PUSHFD
0349200B  ^ E9 38E0FFFF     JMP 03490048
03492010    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03492014    55              PUSH EBP
03492015    89E5            MOV EBP,ESP
03492017    81EC 04000000   SUB ESP,4
0349201D    890424          MOV DWORD PTR SS:[ESP],EAX
03492020    B8 04000000     MOV EAX,4
03492025    01C5            ADD EBP,EAX
03492027    58              POP EAX
03492028    83C5 02         ADD EBP,2
0349202B    872C24          XCHG DWORD PTR SS:[ESP],EBP
0349202E    5C              POP ESP
0349202F    D32C24          SHR DWORD PTR SS:[ESP],CL
03492032    9C              PUSHFD
03492033  ^ E9 10E0FFFF     JMP 03490048
03492038    FF3424          PUSH DWORD PTR SS:[ESP]
0349203B    58              POP EAX
0349203C    57              PUSH EDI
0349203D    89E7            MOV EDI,ESP
0349203F    81C7 04000000   ADD EDI,4
03492045    51              PUSH ECX
03492046    B9 04000000     MOV ECX,4
0349204B    01CF            ADD EDI,ECX
0349204D    59              POP ECX
0349204E    873C24          XCHG DWORD PTR SS:[ESP],EDI
03492051    5C              POP ESP
03492052    210424          AND DWORD PTR SS:[ESP],EAX
03492055    9C              PUSHFD
03492056  ^ E9 EDDFFFFF     JMP 03490048
0349205B    66:8B0424       MOV AX,WORD PTR SS:[ESP]
0349205F    83EC 04         SUB ESP,4
03492062    891424          MOV DWORD PTR SS:[ESP],EDX
03492065    89E2            MOV EDX,ESP
03492067    81C2 04000000   ADD EDX,4
0349206D    83C2 02         ADD EDX,2
03492070    52              PUSH EDX
03492071    FF7424 04       PUSH DWORD PTR SS:[ESP+4]
03492075    5A              POP EDX
03492076    8F0424          POP DWORD PTR SS:[ESP]
03492079    5C              POP ESP
0349207A    000424          ADD BYTE PTR SS:[ESP],AL
0349207D    9C              PUSHFD
0349207E  ^ E9 C5DFFFFF     JMP 03490048
03492083    AC              LODS BYTE PTR DS:[ESI]
03492084    28D8            SUB AL,BL
03492086    83EC 02         SUB ESP,2
03492089    66:891424       MOV WORD PTR SS:[ESP],DX
0349208D    B6 7F           MOV DH,7F
0349208F    00F0            ADD AL,DH
03492091    66:8B1424       MOV DX,WORD PTR SS:[ESP]
03492095    52              PUSH EDX
03492096    89E2            MOV EDX,ESP
03492098    81C2 04000000   ADD EDX,4
0349209E    83C2 02         ADD EDX,2
034920A1    871424          XCHG DWORD PTR SS:[ESP],EDX
034920A4    5C              POP ESP
034920A5    68 4F050000     PUSH 54F
034920AA    890C24          MOV DWORD PTR SS:[ESP],ECX
034920AD    66:53           PUSH BX
034920AF    B7 9D           MOV BH,9D
034920B1    88F9            MOV CL,BH
034920B3    66:5B           POP BX
034920B5    28C8            SUB AL,CL
034920B7    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
034920BA    83C4 04         ADD ESP,4
034920BD    00C3            ADD BL,AL
034920BF    68 87730000     PUSH 7387
034920C4    892C24          MOV DWORD PTR SS:[ESP],EBP
034920C7    68 A1510000     PUSH 51A1
034920CC    893424          MOV DWORD PTR SS:[ESP],ESI
034920CF    BE FC030000     MOV ESI,3FC
034920D4    89F5            MOV EBP,ESI
034920D6    5E              POP ESI
034920D7    01EF            ADD EDI,EBP
034920D9    5D              POP EBP
034920DA    0FB6C0          MOVZX EAX,AL
034920DD    FF3487          PUSH DWORD PTR DS:[EDI+EAX*4]
034920E0    56              PUSH ESI
034920E1    68 1F240000     PUSH 241F
034920E6    893C24          MOV DWORD PTR SS:[ESP],EDI
034920E9    BF FC030000     MOV EDI,3FC
034920EE    89FE            MOV ESI,EDI
034920F0    5F              POP EDI
034920F1    29F7            SUB EDI,ESI
034920F3    8B3424          MOV ESI,DWORD PTR SS:[ESP]
034920F6    81C4 04000000   ADD ESP,4
034920FC    C3              RETN
034920FD  ^ E9 46DFFFFF     JMP 03490048
03492102    66:8B0424       MOV AX,WORD PTR SS:[ESP]
03492106    55              PUSH EBP
03492107    89E5            MOV EBP,ESP
03492109    81C5 04000000   ADD EBP,4
0349210F    68 9B0B0000     PUSH 0B9B
03492114    893C24          MOV DWORD PTR SS:[ESP],EDI
03492117    BF 02000000     MOV EDI,2
0349211C    01FD            ADD EBP,EDI
0349211E    5F              POP EDI
0349211F    872C24          XCHG DWORD PTR SS:[ESP],EBP
03492122    5C              POP ESP
03492123    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03492127    83EC 04         SUB ESP,4
0349212A    893424          MOV DWORD PTR SS:[ESP],ESI
0349212D    89E6            MOV ESI,ESP
0349212F    81C6 04000000   ADD ESI,4
03492135    83C6 02         ADD ESI,2
03492138    873424          XCHG DWORD PTR SS:[ESP],ESI
0349213B    8B2424          MOV ESP,DWORD PTR SS:[ESP]
0349213E    66:0FAFC8       IMUL CX,AX
03492142    66:51           PUSH CX
03492144    9C              PUSHFD
03492145  ^ E9 FEDEFFFF     JMP 03490048
0349214A    66:8B0424       MOV AX,WORD PTR SS:[ESP]
0349214E    57              PUSH EDI
0349214F    89E7            MOV EDI,ESP
03492151    81C7 04000000   ADD EDI,4
03492157    50              PUSH EAX
03492158    B8 43650000     MOV EAX,6543
0349215D    C1E0 03         SHL EAX,3
03492160    F7D0            NOT EAX
03492162    F7D0            NOT EAX
03492164    0D 2A370000     OR EAX,372A
03492169    35 383F0300     XOR EAX,33F38
0349216E    01C7            ADD EDI,EAX
03492170    58              POP EAX
03492171    873C24          XCHG DWORD PTR SS:[ESP],EDI
03492174    5C              POP ESP
03492175    66:090424       OR WORD PTR SS:[ESP],AX
03492179    9C              PUSHFD
0349217A  ^ E9 C9DEFFFF     JMP 03490048
0349217F    FF32            PUSH DWORD PTR DS:[EDX]
03492181  ^ E9 C2DEFFFF     JMP 03490048
03492186    66:8B0424       MOV AX,WORD PTR SS:[ESP]
0349218A    52              PUSH EDX
0349218B    81EC 04000000   SUB ESP,4
03492191    892424          MOV DWORD PTR SS:[ESP],ESP
03492194    830424 04       ADD DWORD PTR SS:[ESP],4
03492198    5A              POP EDX
03492199    81C2 04000000   ADD EDX,4
0349219F    81C2 02000000   ADD EDX,2
034921A5    871424          XCHG DWORD PTR SS:[ESP],EDX
034921A8    5C              POP ESP
034921A9    280424          SUB BYTE PTR SS:[ESP],AL
034921AC    9C              PUSHFD
034921AD  ^ E9 96DEFFFF     JMP 03490048
034921B2    66:8B0424       MOV AX,WORD PTR SS:[ESP]
034921B6    53              PUSH EBX
034921B7    54              PUSH ESP
034921B8    8B1C24          MOV EBX,DWORD PTR SS:[ESP]
034921BB    81C4 04000000   ADD ESP,4
034921C1    81C3 04000000   ADD EBX,4
034921C7    81C3 02000000   ADD EBX,2
034921CD    871C24          XCHG DWORD PTR SS:[ESP],EBX
034921D0    5C              POP ESP
034921D1    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
034921D5    57              PUSH EDI
034921D6    54              PUSH ESP
034921D7    8B3C24          MOV EDI,DWORD PTR SS:[ESP]
034921DA    83C4 04         ADD ESP,4
034921DD    81C7 04000000   ADD EDI,4
034921E3    83C7 02         ADD EDI,2
034921E6    873C24          XCHG DWORD PTR SS:[ESP],EDI
034921E9    5C              POP ESP
034921EA    66:0FB6C8       MOVZX CX,AL
034921EE    66:68 0539      PUSH 3905
034921F2    66:890C24       MOV WORD PTR SS:[ESP],CX
034921F6  ^ E9 4DDEFFFF     JMP 03490048
034921FB    66:8B0424       MOV AX,WORD PTR SS:[ESP]
034921FF    81EC 04000000   SUB ESP,4
03492205    890C24          MOV DWORD PTR SS:[ESP],ECX
03492208    89E1            MOV ECX,ESP
0349220A    81C1 04000000   ADD ECX,4
03492210    83C1 02         ADD ECX,2
03492213    870C24          XCHG DWORD PTR SS:[ESP],ECX
03492216    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03492219    66:0FB30424     BTR WORD PTR SS:[ESP],AX
0349221E    9C              PUSHFD
0349221F  ^ E9 24DEFFFF     JMP 03490048
03492224    57              PUSH EDI
03492225    89E7            MOV EDI,ESP
03492227    53              PUSH EBX
03492228    BB 04000000     MOV EBX,4
0349222D    01DF            ADD EDI,EBX
0349222F    5B              POP EBX
03492230    50              PUSH EAX
03492231    B8 04000000     MOV EAX,4
03492236    29C7            SUB EDI,EAX
03492238    58              POP EAX
03492239    873C24          XCHG DWORD PTR SS:[ESP],EDI
0349223C    5C              POP ESP
0349223D    891424          MOV DWORD PTR SS:[ESP],EDX
03492240  ^ E9 03DEFFFF     JMP 03490048
03492245    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03492249    56              PUSH ESI
0349224A    54              PUSH ESP
0349224B    5E              POP ESI
0349224C    81C6 04000000   ADD ESI,4
03492252    83C6 02         ADD ESI,2
03492255    873424          XCHG DWORD PTR SS:[ESP],ESI
03492258    8B2424          MOV ESP,DWORD PTR SS:[ESP]
0349225B    D32C24          SHR DWORD PTR SS:[ESP],CL
0349225E    9C              PUSHFD
0349225F  ^ E9 E4DDFFFF     JMP 03490048
03492264    AC              LODS BYTE PTR DS:[ESI]
03492265    28D8            SUB AL,BL
03492267    66:68 8F49      PUSH 498F
0349226B    66:891424       MOV WORD PTR SS:[ESP],DX
0349226F    B6 16           MOV DH,16
03492271    80F6 8B         XOR DH,8B
03492274    80EE AF         SUB DH,0AF
03492277    80EE 07         SUB DH,7
0349227A    80EE 25         SUB DH,25
0349227D    FEC6            INC DH
0349227F    66:51           PUSH CX
03492281    B1 D4           MOV CL,0D4
03492283    00CE            ADD DH,CL
03492285    66:59           POP CX
03492287    00F0            ADD AL,DH
03492289    66:5A           POP DX
0349228B    66:53           PUSH BX
0349228D    52              PUSH EDX
0349228E    51              PUSH ECX
0349228F    B5 F8           MOV CH,0F8
03492291    88EE            MOV DH,CH
03492293    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
03492296    83C4 04         ADD ESP,4
03492299    88F7            MOV BH,DH
0349229B    5A              POP EDX
0349229C    00F8            ADD AL,BH
0349229E    66:5B           POP BX
034922A0    30C3            XOR BL,AL
034922A2    0FB6C0          MOVZX EAX,AL
034922A5    66:8B1424       MOV DX,WORD PTR SS:[ESP]
034922A9    57              PUSH EDI
034922AA    89E7            MOV EDI,ESP
034922AC    81C7 04000000   ADD EDI,4
034922B2    81C7 02000000   ADD EDI,2
034922B8    873C24          XCHG DWORD PTR SS:[ESP],EDI
034922BB    8B2424          MOV ESP,DWORD PTR SS:[ESP]
034922BE    881487          MOV BYTE PTR DS:[EDI+EAX*4],DL
034922C1  ^ E9 82DDFFFF     JMP 03490048
034922C6    52              PUSH EDX
034922C7    BA 58160000     MOV EDX,1658
034922CC    55              PUSH EBP
034922CD    BD 7F170000     MOV EBP,177F
034922D2    09EA            OR EDX,EBP
034922D4    5D              POP EBP
034922D5    C1EA 08         SHR EDX,8
034922D8    81EA 08530000   SUB EDX,5308
034922DE    50              PUSH EAX
034922DF    B8 0FAFFFFF     MOV EAX,FFFFAF0F
034922E4    31C2            XOR EDX,EAX
034922E6    58              POP EAX
034922E7    0957 1C         OR DWORD PTR DS:[EDI+1C],EDX
034922EA    5A              POP EDX
034922EB  ^ E9 58DDFFFF     JMP 03490048
034922F0    FF3424          PUSH DWORD PTR SS:[ESP]
034922F3    8B0424          MOV EAX,DWORD PTR SS:[ESP]
034922F6    83C4 04         ADD ESP,4
034922F9    50              PUSH EAX
034922FA    89E0            MOV EAX,ESP
034922FC    05 04000000     ADD EAX,4
03492301    05 04000000     ADD EAX,4
03492306    870424          XCHG DWORD PTR SS:[ESP],EAX
03492309    5C              POP ESP
0349230A    310424          XOR DWORD PTR SS:[ESP],EAX
0349230D    9C              PUSHFD
0349230E  ^ E9 35DDFFFF     JMP 03490048
03492313    66:8B0424       MOV AX,WORD PTR SS:[ESP]
03492317    55              PUSH EBP
03492318    89E5            MOV EBP,ESP
0349231A    53              PUSH EBX
0349231B    BB 6B460000     MOV EBX,466B
03492320    F7D3            NOT EBX
03492322    43              INC EBX
03492323    81C3 6F460000   ADD EBX,466F
03492329    01DD            ADD EBP,EBX
0349232B    5B              POP EBX
0349232C    83C5 02         ADD EBP,2
0349232F    872C24          XCHG DWORD PTR SS:[ESP],EBP
03492332    5C              POP ESP
03492333    66:0FAB0424     BTS WORD PTR SS:[ESP],AX
03492338    9C              PUSHFD
03492339  ^ E9 0ADDFFFF     JMP 03490048
0349233E    66:8B0424       MOV AX,WORD PTR SS:[ESP]
03492342    81EC 04000000   SUB ESP,4
03492348    891424          MOV DWORD PTR SS:[ESP],EDX
0349234B    89E2            MOV EDX,ESP
0349234D    81C2 04000000   ADD EDX,4
03492353    81C2 02000000   ADD EDX,2
03492359    871424          XCHG DWORD PTR SS:[ESP],EDX
0349235C    8B2424          MOV ESP,DWORD PTR SS:[ESP]
0349235F    66:190424       SBB WORD PTR SS:[ESP],AX
03492363    9C              PUSHFD
03492364  ^ E9 DFDCFFFF     JMP 03490048
03492369    66:8B0424       MOV AX,WORD PTR SS:[ESP]
0349236D    50              PUSH EAX
0349236E    89E0            MOV EAX,ESP
03492370    05 04000000     ADD EAX,4
03492375    52              PUSH EDX
03492376    BA 02000000     MOV EDX,2
0349237B    01D0            ADD EAX,EDX
0349237D    5A              POP EDX
0349237E    870424          XCHG DWORD PTR SS:[ESP],EAX
03492381    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03492384    66:310424       XOR WORD PTR SS:[ESP],AX
03492388    9C              PUSHFD
03492389  ^ E9 BADCFFFF     JMP 03490048
0349238E    FF3424          PUSH DWORD PTR SS:[ESP]
03492391    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
03492394    55              PUSH EBP
03492395    89E5            MOV EBP,ESP
03492397    81C5 04000000   ADD EBP,4
0349239D    81C5 04000000   ADD EBP,4
034923A3    872C24          XCHG DWORD PTR SS:[ESP],EBP
034923A6    5C              POP ESP
034923A7    83C4 04         ADD ESP,4
034923AA    FF3424          PUSH DWORD PTR SS:[ESP]
034923AD    58              POP EAX
034923AE    50              PUSH EAX
034923AF    54              PUSH ESP
034923B0    58              POP EAX
034923B1    05 04000000     ADD EAX,4
034923B6    83C0 04         ADD EAX,4
034923B9    870424          XCHG DWORD PTR SS:[ESP],EAX
034923BC    5C              POP ESP
034923BD    F7E9            IMUL ECX
034923BF    53              PUSH EBX
034923C0    54              PUSH ESP
034923C1    5B              POP EBX
034923C2    81C3 04000000   ADD EBX,4
034923C8    55              PUSH EBP
034923C9    BD 04000000     MOV EBP,4
034923CE    29EB            SUB EBX,EBP
034923D0    5D              POP EBP
034923D1    871C24          XCHG DWORD PTR SS:[ESP],EBX
034923D4    5C              POP ESP
034923D5    891424          MOV DWORD PTR SS:[ESP],EDX
034923D8    50              PUSH EAX
034923D9    9C              PUSHFD
034923DA  ^ E9 69DCFFFF     JMP 03490048
034923DF    66:8B0424       MOV AX,WORD PTR SS:[ESP]
034923E3    57              PUSH EDI
034923E4    89E7            MOV EDI,ESP
034923E6    81C7 04000000   ADD EDI,4
034923EC    83C7 02         ADD EDI,2
034923EF    333C24          XOR EDI,DWORD PTR SS:[ESP]
034923F2    313C24          XOR DWORD PTR SS:[ESP],EDI
034923F5    333C24          XOR EDI,DWORD PTR SS:[ESP]
034923F8    8B2424          MOV ESP,DWORD PTR SS:[ESP]
034923FB    66:0FB30424     BTR WORD PTR SS:[ESP],AX
03492400    9C              PUSHFD
03492401  ^ E9 42DCFFFF     JMP 03490048
03492406    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
0349240A    81EC 04000000   SUB ESP,4
03492410    893C24          MOV DWORD PTR SS:[ESP],EDI
03492413    89E7            MOV EDI,ESP
03492415    81C7 04000000   ADD EDI,4
0349241B    81C7 02000000   ADD EDI,2
03492421    873C24          XCHG DWORD PTR SS:[ESP],EDI
03492424    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03492427    D20424          ROL BYTE PTR SS:[ESP],CL
0349242A    9C              PUSHFD
0349242B  ^ E9 18DCFFFF     JMP 03490048
03492430    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03492433  ^ E9 10DCFFFF     JMP 03490048
03492438    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
0349243C    53              PUSH EBX
0349243D    89E3            MOV EBX,ESP
0349243F    55              PUSH EBP
03492440    BD 04000000     MOV EBP,4
03492445    01EB            ADD EBX,EBP
03492447    5D              POP EBP
03492448    51              PUSH ECX
03492449    B9 02000000     MOV ECX,2
0349244E    01CB            ADD EBX,ECX
03492450    59              POP ECX
03492451    871C24          XCHG DWORD PTR SS:[ESP],EBX
03492454    5C              POP ESP
03492455    D33C24          SAR DWORD PTR SS:[ESP],CL
03492458    9C              PUSHFD
03492459  ^ E9 EADBFFFF     JMP 03490048
0349245E    66:8B0424       MOV AX,WORD PTR SS:[ESP]
03492462    68 841C0000     PUSH 1C84
03492467    890C24          MOV DWORD PTR SS:[ESP],ECX
0349246A    89E1            MOV ECX,ESP
0349246C    81C1 04000000   ADD ECX,4
03492472    55              PUSH EBP
03492473    BD 02000000     MOV EBP,2
03492478    01E9            ADD ECX,EBP
0349247A    5D              POP EBP
0349247B    870C24          XCHG DWORD PTR SS:[ESP],ECX
0349247E    5C              POP ESP
0349247F    66:0FAB0424     BTS WORD PTR SS:[ESP],AX
03492484    9C              PUSHFD
03492485  ^ E9 BEDBFFFF     JMP 03490048
0349248A    FF3424          PUSH DWORD PTR SS:[ESP]
0349248D    58              POP EAX
0349248E    52              PUSH EDX
0349248F    54              PUSH ESP
03492490    5A              POP EDX
03492491    81C2 04000000   ADD EDX,4
03492497    83C2 04         ADD EDX,4
0349249A    871424          XCHG DWORD PTR SS:[ESP],EDX
0349249D    5C              POP ESP
0349249E    FF3424          PUSH DWORD PTR SS:[ESP]
034924A1    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
034924A4    81C4 04000000   ADD ESP,4
034924AA    55              PUSH EBP
034924AB    89E5            MOV EBP,ESP
034924AD    81C5 04000000   ADD EBP,4
034924B3    83C5 04         ADD EBP,4
034924B6    872C24          XCHG DWORD PTR SS:[ESP],EBP
034924B9    5C              POP ESP
034924BA    0FAFC8          IMUL ECX,EAX
034924BD    51              PUSH ECX
034924BE    9C              PUSHFD
034924BF  ^ E9 84DBFFFF     JMP 03490048
034924C4    66:873424       XCHG WORD PTR SS:[ESP],SI
034924C8    66:31D6         XOR SI,DX
034924CB    66:31F2         XOR DX,SI
034924CE    66:31D6         XOR SI,DX
034924D1    66:52           PUSH DX
034924D3    66:F71424       NOT WORD PTR SS:[ESP]
034924D7    66:5A           POP DX
034924D9    66:87D6         XCHG SI,DX
034924DC    66:873424       XCHG WORD PTR SS:[ESP],SI
034924E0  ^ E9 63DBFFFF     JMP 03490048
034924E5    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
034924E9    51              PUSH ECX
034924EA    81EC 04000000   SUB ESP,4
034924F0    892424          MOV DWORD PTR SS:[ESP],ESP
034924F3    830424 04       ADD DWORD PTR SS:[ESP],4
034924F7    59              POP ECX
034924F8    81C1 04000000   ADD ECX,4
034924FE    81C1 02000000   ADD ECX,2
03492504    870C24          XCHG DWORD PTR SS:[ESP],ECX
03492507    5C              POP ESP
03492508    66:8B0424       MOV AX,WORD PTR SS:[ESP]
0349250C    51              PUSH ECX
0349250D    89E1            MOV ECX,ESP
0349250F    57              PUSH EDI
03492510    BF 04000000     MOV EDI,4
03492515    01F9            ADD ECX,EDI
03492517    5F              POP EDI
03492518    81C1 02000000   ADD ECX,2
0349251E    870C24          XCHG DWORD PTR SS:[ESP],ECX
03492521    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03492524    66:F7F1         DIV CX
03492527    66:68 9E6A      PUSH 6A9E
0349252B    66:891424       MOV WORD PTR SS:[ESP],DX
0349252F    66:50           PUSH AX
03492531    9C              PUSHFD
03492532  ^ E9 11DBFFFF     JMP 03490048
03492537    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
0349253B    55              PUSH EBP
0349253C    54              PUSH ESP
0349253D    5D              POP EBP
0349253E    81C5 04000000   ADD EBP,4
03492544    81C5 02000000   ADD EBP,2
0349254A    872C24          XCHG DWORD PTR SS:[ESP],EBP
0349254D    5C              POP ESP
0349254E    D30424          ROL DWORD PTR SS:[ESP],CL
03492551    9C              PUSHFD
03492552  ^ E9 F1DAFFFF     JMP 03490048
03492557    66:8B0424       MOV AX,WORD PTR SS:[ESP]
0349255B    83EC 04         SUB ESP,4
0349255E    890C24          MOV DWORD PTR SS:[ESP],ECX
03492561    89E1            MOV ECX,ESP
03492563    81C1 04000000   ADD ECX,4
03492569    83C1 02         ADD ECX,2
0349256C    870C24          XCHG DWORD PTR SS:[ESP],ECX
0349256F    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03492572    53              PUSH EBX
03492573    BB 8C2F0000     MOV EBX,2F8C
03492578    81E3 B0170000   AND EBX,17B0
0349257E    81E3 D6020000   AND EBX,2D6
03492584    81CB 7C500000   OR EBX,507C
0349258A    4B              DEC EBX
0349258B    81EB FB520000   SUB EBX,52FB
03492591    01D3            ADD EBX,EDX
03492593    52              PUSH EDX
03492594    BA 00000000     MOV EDX,0
03492599    01DA            ADD EDX,EBX
0349259B    8802            MOV BYTE PTR DS:[EDX],AL
0349259D    8B1424          MOV EDX,DWORD PTR SS:[ESP]
034925A0    83C4 04         ADD ESP,4
034925A3    5B              POP EBX
034925A4  ^ E9 9FDAFFFF     JMP 03490048
034925A9    66:8F02         POP WORD PTR DS:[EDX]
034925AC  ^ E9 97DAFFFF     JMP 03490048
034925B1    FF3424          PUSH DWORD PTR SS:[ESP]
034925B4    58              POP EAX
034925B5    57              PUSH EDI
034925B6    89E7            MOV EDI,ESP
034925B8    81C7 04000000   ADD EDI,4
034925BE    81C7 04000000   ADD EDI,4
034925C4    333C24          XOR EDI,DWORD PTR SS:[ESP]
034925C7    313C24          XOR DWORD PTR SS:[ESP],EDI
034925CA    333C24          XOR EDI,DWORD PTR SS:[ESP]
034925CD    5C              POP ESP
034925CE    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
034925D1    68 16370000     PUSH 3716
034925D6    892C24          MOV DWORD PTR SS:[ESP],EBP
034925D9    89E5            MOV EBP,ESP
034925DB    81C5 04000000   ADD EBP,4
034925E1    83C5 04         ADD EBP,4
034925E4    872C24          XCHG DWORD PTR SS:[ESP],EBP
034925E7    8B2424          MOV ESP,DWORD PTR SS:[ESP]
034925EA    85C8            TEST EAX,ECX
034925EC    9C              PUSHFD
034925ED  ^ E9 56DAFFFF     JMP 03490048
034925F2    56              PUSH ESI
034925F3    81EC 04000000   SUB ESP,4
034925F9    890424          MOV DWORD PTR SS:[ESP],EAX
034925FC    56              PUSH ESI
034925FD    BE FFFBFFFF     MOV ESI,-401
03492602    89F0            MOV EAX,ESI
03492604    5E              POP ESI
03492605    89C6            MOV ESI,EAX
03492607    58              POP EAX
03492608    2177 1C         AND DWORD PTR DS:[EDI+1C],ESI
0349260B    5E              POP ESI
0349260C  ^ E9 37DAFFFF     JMP 03490048
03492611    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03492615    68 0B610000     PUSH 610B
0349261A    890C24          MOV DWORD PTR SS:[ESP],ECX
0349261D    89E1            MOV ECX,ESP
0349261F    81C1 04000000   ADD ECX,4
03492625    81C1 02000000   ADD ECX,2
0349262B    870C24          XCHG DWORD PTR SS:[ESP],ECX
0349262E    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03492631    66:8B0424       MOV AX,WORD PTR SS:[ESP]
03492635    81EC 04000000   SUB ESP,4
0349263B    890424          MOV DWORD PTR SS:[ESP],EAX
0349263E    89E0            MOV EAX,ESP
03492640    05 04000000     ADD EAX,4
03492645    05 02000000     ADD EAX,2
0349264A    870424          XCHG DWORD PTR SS:[ESP],EAX
0349264D    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03492650    F6F1            DIV CL
03492652    66:0FB6CC       MOVZX CX,AH
03492656    66:68 7E23      PUSH 237E
0349265A    66:890C24       MOV WORD PTR SS:[ESP],CX
0349265E    66:0FB6C8       MOVZX CX,AL
03492662    66:51           PUSH CX
03492664    9C              PUSHFD
03492665  ^ E9 DED9FFFF     JMP 03490048
0349266A    66:68 5A7D      PUSH 7D5A
0349266E    66:892424       MOV WORD PTR SS:[ESP],SP
03492672    81EC 02000000   SUB ESP,2
03492678    66:893C24       MOV WORD PTR SS:[ESP],DI
0349267C    66:BF 0200      MOV DI,2
03492680    66:017C24 02    ADD WORD PTR SS:[ESP+2],DI
03492685    66:8B3C24       MOV DI,WORD PTR SS:[ESP]
03492689    83C4 02         ADD ESP,2
0349268C  ^ E9 B7D9FFFF     JMP 03490048
03492691    68 CE790000     PUSH 79CE
03492696    68 FD080000     PUSH 8FD
0349269B    892424          MOV DWORD PTR SS:[ESP],ESP
0349269E    57              PUSH EDI
0349269F    BF 04000000     MOV EDI,4
034926A4    017C24 04       ADD DWORD PTR SS:[ESP+4],EDI
034926A8    5F              POP EDI
034926A9    8F0424          POP DWORD PTR SS:[ESP]
034926AC    810424 04000000 ADD DWORD PTR SS:[ESP],4
034926B3  ^ E9 90D9FFFF     JMP 03490048
034926B8    68 420E0000     PUSH 0E42
034926BD    893424          MOV DWORD PTR SS:[ESP],ESI
034926C0    55              PUSH EBP
034926C1    BD 00000000     MOV EBP,0
034926C6    89EE            MOV ESI,EBP
034926C8    8B2C24          MOV EBP,DWORD PTR SS:[ESP]
034926CB    83C4 04         ADD ESP,4
034926CE    89F3            MOV EBX,ESI
034926D0    5E              POP ESI
034926D1  ^ E9 72D9FFFF     JMP 03490048
034926D6    51              PUSH ECX
034926D7    52              PUSH EDX
034926D8    BA FE000000     MOV EDX,0FE
034926DD    89D1            MOV ECX,EDX
034926DF    8B1424          MOV EDX,DWORD PTR SS:[ESP]
034926E2    81C4 04000000   ADD ESP,4
034926E8    214F 1C         AND DWORD PTR DS:[EDI+1C],ECX
034926EB    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
034926EE    81C4 04000000   ADD ESP,4
034926F4  ^ E9 4FD9FFFF     JMP 03490048
034926F9    66:8B0424       MOV AX,WORD PTR SS:[ESP]
034926FD    52              PUSH EDX
034926FE    89E2            MOV EDX,ESP
03492700    81C2 04000000   ADD EDX,4
03492706    83EA 04         SUB EDX,4
03492709    871424          XCHG DWORD PTR SS:[ESP],EDX
0349270C    5C              POP ESP
0349270D    893424          MOV DWORD PTR SS:[ESP],ESI
03492710    89E6            MOV ESI,ESP
03492712    81C6 04000000   ADD ESI,4
03492718    81C6 02000000   ADD ESI,2
0349271E    873424          XCHG DWORD PTR SS:[ESP],ESI
03492721    5C              POP ESP
03492722    66:FF0424       INC WORD PTR SS:[ESP]
03492726    9C              PUSHFD
03492727  ^ E9 1CD9FFFF     JMP 03490048
0349272C    FF3424          PUSH DWORD PTR SS:[ESP]
0349272F    58              POP EAX
03492730    55              PUSH EBP
03492731    89E5            MOV EBP,ESP
03492733    81C5 04000000   ADD EBP,4
03492739    83C5 04         ADD EBP,4
0349273C    872C24          XCHG DWORD PTR SS:[ESP],EBP
0349273F    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03492742    290424          SUB DWORD PTR SS:[ESP],EAX
03492745  ^ E9 FED8FFFF     JMP 03490048
0349274A    AC              LODS BYTE PTR DS:[ESI]
0349274B    30D8            XOR AL,BL
0349274D    53              PUSH EBX
0349274E    89E3            MOV EBX,ESP
03492750    81C3 04000000   ADD EBX,4
03492756    83EB 02         SUB EBX,2
03492759    871C24          XCHG DWORD PTR SS:[ESP],EBX
0349275C    5C              POP ESP
0349275D    66:890C24       MOV WORD PTR SS:[ESP],CX
03492761    B5 98           MOV CH,98
03492763    28E8            SUB AL,CH
03492765    66:8B0C24       MOV CX,WORD PTR SS:[ESP]
03492769    83C4 02         ADD ESP,2
0349276C    51              PUSH ECX
0349276D    B1 4A           MOV CL,4A
0349276F    30C8            XOR AL,CL
03492771    8B0C24          MOV ECX,DWORD PTR SS:[ESP]
03492774    52              PUSH EDX
03492775    89E2            MOV EDX,ESP
03492777    81C2 04000000   ADD EDX,4
0349277D    83C2 04         ADD EDX,4
03492780    871424          XCHG DWORD PTR SS:[ESP],EDX
03492783    8B2424          MOV ESP,DWORD PTR SS:[ESP]
03492786    00C3            ADD BL,AL
03492788    0FB6C0          MOVZX EAX,AL
0349278B    8B0487          MOV EAX,DWORD PTR DS:[EDI+EAX*4]
0349278E    66:0FB600       MOVZX AX,BYTE PTR DS:[EAX]
03492792    66:68 5B50      PUSH 505B
03492796    66:890424       MOV WORD PTR SS:[ESP],AX
0349279A  ^ E9 A9D8FFFF     JMP 03490048
0349279F    66:8B0424       MOV AX,WORD PTR SS:[ESP]
034927A3    51              PUSH ECX
034927A4    89E1            MOV ECX,ESP
034927A6    57              PUSH EDI
034927A7    BF 3D5F0000     MOV EDI,5F3D
034927AC    81EF 8B5E0000   SUB EDI,5E8B
034927B2    81F7 8F650000   XOR EDI,658F
034927B8    81F7 39650000   XOR EDI,6539
034927BE    01F9            ADD ECX,EDI
034927C0    5F              POP EDI
034927C1    83C1 02         ADD ECX,2
034927C4    870C24          XCHG DWORD PTR SS:[ESP],ECX
034927C7    5C              POP ESP
034927C8    100424          ADC BYTE PTR SS:[ESP],AL
034927CB    9C              PUSHFD
034927CC  ^ E9 77D8FFFF     JMP 03490048
034927D1    66:8B0424       MOV AX,WORD PTR SS:[ESP]
034927D5    52              PUSH EDX
034927D6    89E2            MOV EDX,ESP
034927D8    57              PUSH EDI
034927D9    BF 04000000     MOV EDI,4
034927DE    01FA            ADD EDX,EDI
034927E0    5F              POP EDI
034927E1    83C2 02         ADD EDX,2
034927E4    871424          XCHG DWORD PTR SS:[ESP],EDX
034927E7    8B2424          MOV ESP,DWORD PTR SS:[ESP]
034927EA    66:210424       AND WORD PTR SS:[ESP],AX
034927EE    9C              PUSHFD
034927EF  ^ E9 54D8FFFF     JMP 03490048
堆中所有的handler都用^標記;

思路:

1.把帶有標記的所有彙編指令所對應的16進制地址找出來存在一個文件裏下面這個函數實現

技術點:(1)查找^字符,(2)依據找到的哪一行,獲取自己要的到8字節的地址,

/*the function get_first_data()*/
int get_first_data()
{
    FILE *fp_in = NULL;														
    FILE *fp_out = NULL;
	int i = 0;
    char str[100];
	char x[9];

    if ((fp_in = fopen("address.txt","r")) == NULL){			   /*open a file*/
        printf("can't open this file!!\n");
        return 0;
	}

    if ((fp_out = fopen("address_out.txt","w+")) == NULL){		 /*open the result file*/
        printf("can't open this file!!\n");
        return 0;
    }

    while (!feof(fp_in)){
		fgets(str,100,fp_in);					/*get a line */				
        if (strchr(str,'^') != NULL){					/*find the char '^'*/
			strncpy(x,str,8);				/*find the address*/
			
			x[8] = '\0';
			
			fprintf(fp_out,"%s\n",x);			/*write the result to the result file */			

			i++;
		}

		

    }
	printf ("i = %-5d\n",i);


	printf ("0x10 = %d\n",strHexToInt("10"));			/*test function strHexToInt()*/

	fclose(fp_in);
	fclose(fp_out);


	return 1;
}
2.從文件中讀16進制地址,並將其存放到num[151]數組裏面,期間調用16進制轉換函數

技術點 (1) 越界的判斷 (2)16進制的轉換

/*the functino */
int get_address(int *num, int size)
{
    FILE *fp_out = NULL;
	char str[10];
	int i = 0;

	
    if ((fp_out = fopen("address_out.txt","r+")) == NULL){		 /*open the result file*/
        printf("can't open this file!!\n");
        return 0;
    }


	while (!feof(fp_out) && i != 151){
		fgets(str,10,fp_out);
		str[8] = '\0';
		num[i++] = strHexToInt(str);
		printf("handler%-5d  %s\n",num[i-1],str);


	}
	fclose(fp_out);
	return 0;
}

/*the function strHexToInt(char* strSource)*/
int strHexToInt(char* strSource)
{ 
 int  nTemp=0;
 int  i = 0;
 int nDecNum = 0;

 char strTemp[10];
 strcpy(strTemp,strSource);




 while (i < (int)strlen(strSource)) {

  nDecNum = 0;
  switch(strSource[i])
  {

   case 'A': nDecNum = 10; break;
   case 'B': nDecNum = 11; break;
   case 'C':   nDecNum = 12;   break;
   case 'D':   nDecNum = 13;   break;
   case 'E':   nDecNum = 14;   break;
   case 'F':   nDecNum = 15;   break;
   case '0':
   case '1':
   case '2':
   case '3':
   case '4':
   case '5':
   case '6':
   case '7':
   case '8':
   case '9':    nDecNum = strSource[i] - '0';     break;
   default:     return 0;   
   }
     nTemp += nDecNum * (int)pow(16,strlen(strSource)-i -1);
	 i++;
 }
 return nTemp;
}
3.對數組裏面的地址進行做差,做差的時候因爲是用最後一個指令減去前一個handler的最後一個指令,這樣無形中一個handler的大小就變大了,多加了上一個handler的最後一條指令的大小,也就是5個字節,本來要加一,所繫現在需要再減去4,最後將這些數據以16進制的方式寫入到byte.txt文件裏面,然後用byte size[150]數組記錄,用於後面的內存解析。

技術點 (1) 減四,並將輸入文件的第一個^移動了五個字節的地址,確保統一減四 (2)利用fprintf(fp_out,"0x%x,",num[i]),以16進制的形式寫入文件

/*the functin get_result_size()*/
int get_result_size   (int *num, int size)
{
	int i = 0;
	FILE  *fp_out = NULL;

	if ((fp_out = fopen("BYTE.txt","w+")) == NULL){		 /*open the result file*/
        printf("can't open this file!!\n");
        return 0;
    }
	
	while ( i < size-1){
		num[i] = num[i+1]-num[i];                     /*important*/

		printf("handler[%d] = %-5d 0x%x\n",i+1,num[i],num[i]);
		fprintf(fp_out,"0x%x,",num[i]);

		i++;
	}

	return 1;
}


http://download.csdn.net/source/3454015  源代碼



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章