Code:
371ABE00 /$ 8B41 04 MOV EAX,DWORD PTR DS:[ECX+4]
371ABE03 |. 8B51 08 MOV EDX,DWORD PTR DS:[ECX+8]
371ABE06 |. 85C0 TEST EAX,EAX
371ABE08 |. 74 15 JE SHORT CShell_-.371ABE1F
371ABE0A |. 8D9B 00000000 LEA EBX,DWORD PTR DS:[EBX]
371ABE10 |> 3950 04 /CMP DWORD PTR DS:[EAX+4],EDX
371ABE13 |. 74 0C |JE SHORT CShell_-.371ABE21
371ABE15 |. 8B80 24030000 |MOV EAX,DWORD PTR DS:[EAX+324]
371ABE1B |. 85C0 |TEST EAX,EAX
371ABE1D |.^75 F1 \JNZ SHORT CShell_-.371ABE10
371ABE1F |> 33C0 XOR EAX,EAX
371ABE21 \> C3 RETN
371ABE22 CC INT3
371ABE23 CC INT3
371ABE24 CC INT3
371ABE25 CC INT3
371ABE26 CC INT3
371ABE27 CC INT3
371ABE28 CC INT3
371ABE29 CC INT3
371ABE2A CC INT3
371ABE2B CC INT3
371ABE2C CC INT3
371ABE2D CC INT3
371ABE2E CC INT3
371ABE2F CC INT3
371ABE30 /$ 6A FF PUSH -1
371ABE32 |. 68 3B4B7137 PUSH CShell_-.37714B3B
371ABE37 |. 64:A1 00000000 MOV EAX,DWORD PTR FS:[0]
371ABE3D |. 50 PUSH EAX
371ABE3E |. 51 PUSH ECX
371ABE3F |. 53 PUSH EBX
371ABE40 |. 56 PUSH ESI
371ABE41 |. A1 C0819E37 MOV EAX,DWORD PTR DS:[379E81C0]
371ABE46 |. 33C4 XOR EAX,ESP
371ABE48 |. 50 PUSH EAX
371ABE49 |. 8D4424 10 LEA EAX,DWORD PTR SS:[ESP+10]
371ABE4D |. 64:A3 00000000 MOV DWORD PTR FS:[0],EAX
371ABE53 |. 8BF1 MOV ESI,ECX
371ABE55 |. 897424 0C MOV DWORD PTR SS:[ESP+C],ESI
371ABE59 |. 33DB XOR EBX,EBX
371ABE5B |. 83BE 58020000 >CMP DWORD PTR DS:[ESI+258],8
371ABE62 |. 895C24 18 MOV DWORD PTR SS:[ESP+18],EBX
371ABE66 |. 72 0F JB SHORT CShell_-.371ABE77
371ABE68 |. 8B86 44020000 MOV EAX,DWORD PTR DS:[ESI+244]
371ABE6E |. 50 PUSH EAX
371ABE6F |. E8 DC2B5200 CALL CShell_-.376CEA50
371ABE74 |. 83C4 04 ADD ESP,4
371ABE77 |> 33C9 XOR ECX,ECX
371ABE79 |. C786 58020000 >MOV DWORD PTR DS:[ESI+258],7
371ABE83 |. 899E 54020000 MOV DWORD PTR DS:[ESI+254],EBX
371ABE89 |. 66:898E 440200>MOV WORD PTR DS:[ESI+244],CX
371ABE90 |. 8D8E 80000000 LEA ECX,DWORD PTR DS:[ESI+80]
371ABE96 |. E8 55702D00 CALL CShell_-.37482EF0
371ABE9B |. 837E 28 10 CMP DWORD PTR DS:[ESI+28],10
371ABE9F |. 72 0C JB SHORT CShell_-.371ABEAD
371ABEA1 |. 8B56 14 MOV EDX,DWORD PTR DS:[ESI+14]
371ABEA4 |. 52 PUSH EDX
371ABEA5 |. E8 A62B5200 CALL CShell_-.376CEA50
371ABEAA |. 83C4 04 ADD ESP,4
371ABEAD |> C746 28 0F0000>MOV DWORD PTR DS:[ESI+28],0F
371ABEB4 |. 895E 24 MOV DWORD PTR DS:[ESI+24],EBX
371ABEB7 |. 885E 14 MOV BYTE PTR DS:[ESI+14],BL
371ABEBA |. 8B4C24 10 MOV ECX,DWORD PTR SS:[ESP+10]
371ABEBE |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
371ABEC5 |. 59 POP ECX
371ABEC6 |. 5E POP ESI
371ABEC7 |. 5B POP EBX
371ABEC8 |. 83C4 10 ADD ESP,10
371ABECB \. C3 RETN
371ABECC CC INT3
371ABECD CC INT3
371ABECE CC INT3
371ABECF CC INT3
371ABED0 /$ 83EC 10 SUB ESP,10
371ABED3 |. A1 C0819E37 MOV EAX,DWORD PTR DS:[379E81C0]
371ABED8 |. 33C4 XOR EAX,ESP
371ABEDA |. 894424 0C MOV DWORD PTR SS:[ESP+C],EAX
371ABEDE |. 53 PUSH EBX
371ABEDF |. 55 PUSH EBP
371ABEE0 |. 56 PUSH ESI
371ABEE1 |. 8B7424 20 MOV ESI,DWORD PTR SS:[ESP+20]
371ABEE5 |. 8B06 MOV EAX,DWORD PTR DS:[ESI]
371ABEE7 |. 8B50 78 MOV EDX,DWORD PTR DS:[EAX+78]
371ABEEA |. 8BE9 MOV EBP,ECX
371ABEEC |. 57 PUSH EDI
371ABEED |. 8BCE MOV ECX,ESI
371ABEEF |. FFD2 CALL EDX
371ABEF1 |. 8AD8 MOV BL,AL
371ABEF3 |. 8B06 MOV EAX,DWORD PTR DS:[ESI]
371ABEF5 |. 8B90 80000000 MOV EDX,DWORD PTR DS:[EAX+80]
371ABEFB |. 8BCE MOV ECX,ESI
371ABEFD |. FFD2 CALL EDX
371ABEFF |. 8BD0 MOV EDX,EAX
371ABF01 |. 0FB6C3 MOVZX EAX,BL
371ABF04 |. 83E8 01 SUB EAX,1 ; Switch (cases 1..3)
371ABF07 |. 895424 10 MOV DWORD PTR SS:[ESP+10],EDX
371ABF0B |. 0F84 42010000 JE CShell_-.371AC053
371ABF11 |. 83E8 01 SUB EAX,1
371ABF14 |. 0F84 F0000000 JE CShell_-.371AC00A
371ABF1A |. 83E8 01 SUB EAX,1
371ABF1D |. 74 2A JE SHORT CShell_-.371ABF49
371ABF1F |. A1 5CE59E37 MOV EAX,DWORD PTR DS:[379EE55C] ; Default case of switch 371ABF04
371ABF24 |. 8B08 MOV ECX,DWORD PTR DS:[EAX]
371ABF26 |. 8B51 18 MOV EDX,DWORD PTR DS:[ECX+18]
371ABF29 |. 68 B0EF7637 PUSH CShell_-.3776EFB0 ; ASCII "Warning there is no handler for performance statistics!!"
371ABF2E |. 50 PUSH EAX
371ABF2F |. FFD2 CALL EDX
371ABF31 |. 83C4 08 ADD ESP,8
371ABF34 |. 5F POP EDI
371ABF35 |. 5E POP ESI
371ABF36 |. 5D POP EBP
371ABF37 |. 5B POP EBX
371ABF38 |. 8B4C24 0C MOV ECX,DWORD PTR SS:[ESP+C]
371ABF3C |. 33CC XOR ECX,ESP
371ABF3E |. E8 2B355200 CALL CShell_-.376CF46E
371ABF43 |. 83C4 10 ADD ESP,10
371ABF46 |. C2 0400 RETN 4
371ABF49 |> 8B45 04 MOV EAX,DWORD PTR SS:[EBP+4] ; Case 3 of switch 371ABF04
371ABF4C |. 8B4D 08 MOV ECX,DWORD PTR SS:[EBP+8]
371ABF4F |. 85C0 TEST EAX,EAX
371ABF51 |. 74 0F JE SHORT CShell_-.371ABF62
371ABF53 |> 3948 04 /CMP DWORD PTR DS:[EAX+4],ECX
371ABF56 |. 74 0C |JE SHORT CShell_-.371ABF64
371ABF58 |. 8B80 24030000 |MOV EAX,DWORD PTR DS:[EAX+324]
371ABF5E |. 85C0 |TEST EAX,EAX
371ABF60 |.^75 F1 \JNZ SHORT CShell_-.371ABF53
371ABF62 |> 33C0 XOR EAX,EAX
371ABF64 |> 3950 04 CMP DWORD PTR DS:[EAX+4],EDX
371ABF67 |. 0F85 21010000 JNZ CShell_-.371AC08E
371ABF6D |. 8B0D 5CE59E37 MOV ECX,DWORD PTR DS:[379EE55C]
371ABF73 |. 8B01 MOV EAX,DWORD PTR DS:[ECX]
371ABF75 |. 8B50 7C MOV EDX,DWORD PTR DS:[EAX+7C]
371ABF78 |. FFD2 CALL EDX
371ABF7A |. D95C24 10 FSTP DWORD PTR SS:[ESP+10]
371ABF7E |. 8B06 MOV EAX,DWORD PTR DS:[ESI]
371ABF80 |. 8B90 98000000 MOV EDX,DWORD PTR DS:[EAX+98]
371ABF86 |. 8BCE MOV ECX,ESI
371ABF88 |. FFD2 CALL EDX
371ABF8A |. D95C24 14 FSTP DWORD PTR SS:[ESP+14]
371ABF8E |. 8B06 MOV EAX,DWORD PTR DS:[ESI]
371ABF90 |. 8B90 98000000 MOV EDX,DWORD PTR DS:[EAX+98]
371ABF96 |. 8BCE MOV ECX,ESI
371ABF98 |. FFD2 CALL EDX
371ABF9A |. DDD8 FSTP ST
371ABF9C |. 8B06 MOV EAX,DWORD PTR DS:[ESI]
371ABF9E |. 8B90 98000000 MOV EDX,DWORD PTR DS:[EAX+98]
371ABFA4 |. 8BCE MOV ECX,ESI
371ABFA6 |. FFD2 CALL EDX
371ABFA8 |. DDD8 FSTP ST
371ABFAA |. 8B06 MOV EAX,DWORD PTR DS:[ESI]
371ABFAC |. 8B90 98000000 MOV EDX,DWORD PTR DS:[EAX+98]
371ABFB2 |. 8BCE MOV ECX,ESI
371ABFB4 |. FFD2 CALL EDX
371ABFB6 |. DDD8 FSTP ST
371ABFB8 |. D94424 10 FLD DWORD PTR SS:[ESP+10]
371ABFBC |. 8BCD MOV ECX,EBP
371ABFBE |. D86424 14 FSUB DWORD PTR SS:[ESP+14]
371ABFC2 |. D97C24 10 FSTCW WORD PTR SS:[ESP+10]
371ABFC6 |. 0FB74424 10 MOVZX EAX,WORD PTR SS:[ESP+10]
371ABFCB |. DC0D D0497637 FMUL QWORD PTR DS:[377649D0]
371ABFD1 |. 0D 000C0000 OR EAX,0C00
371ABFD6 |. 894424 14 MOV DWORD PTR SS:[ESP+14],EAX
371ABFDA |. D96C24 14 FLDCW WORD PTR SS:[ESP+14]
371ABFDE |. DF7C24 14 FISTP QWORD PTR SS:[ESP+14]
371ABFE2 |. 8B7424 14 MOV ESI,DWORD PTR SS:[ESP+14]
371ABFE6 |. D96C24 10 FLDCW WORD PTR SS:[ESP+10]
371ABFEA |. E8 11FEFFFF CALL CShell_-.371ABE00
371ABFEF |. 5F POP EDI
371ABFF0 |. 89B0 70020000 MOV DWORD PTR DS:[EAX+270],ESI
371ABFF6 |. 5E POP ESI
371ABFF7 |. 5D POP EBP
371ABFF8 |. 5B POP EBX
371ABFF9 |. 8B4C24 0C MOV ECX,DWORD PTR SS:[ESP+C]
371ABFFD |. 33CC XOR ECX,ESP
371ABFFF |. E8 6A345200 CALL CShell_-.376CF46E
371AC004 |. 83C4 10 ADD ESP,10
371AC007 |. C2 0400 RETN 4
371AC00A |> 8B06 MOV EAX,DWORD PTR DS:[ESI] ; Case 2 of switch 371ABF04
371AC00C |. 8B50 7C MOV EDX,DWORD PTR DS:[EAX+7C]
371AC00F |. 8BCE MOV ECX,ESI
371AC011 |. FFD2 CALL EDX
371AC013 |. 0FB7D8 MOVZX EBX,AX
371AC016 |. 33FF XOR EDI,EDI
371AC018 |> 8B06 /MOV EAX,DWORD PTR DS:[ESI]
371AC01A |. 8B50 7C |MOV EDX,DWORD PTR DS:[EAX+7C]
371AC01D |. 8BCE |MOV ECX,ESI
371AC01F |. FFD2 |CALL EDX
371AC021 |. 66:89447C 14 |MOV WORD PTR SS:[ESP+EDI*2+14],AX
371AC026 |. 47 |INC EDI
371AC027 |. 83FF 03 |CMP EDI,3
371AC02A |.^7C EC \JL SHORT CShell_-.371AC018
371AC02C |. 8B4C24 10 MOV ECX,DWORD PTR SS:[ESP+10]
371AC030 |. 8D4424 14 LEA EAX,DWORD PTR SS:[ESP+14]
371AC034 |. 50 PUSH EAX
371AC035 |. 53 PUSH EBX
371AC036 |. 51 PUSH ECX
371AC037 |. 8BCD MOV ECX,EBP
371AC039 |. E8 82F5FFFF CALL CShell_-.371AB5C0
371AC03E |. 5F POP EDI
371AC03F |. 5E POP ESI
371AC040 |. 5D POP EBP
371AC041 |. 5B POP EBX
371AC042 |. 8B4C24 0C MOV ECX,DWORD PTR SS:[ESP+C]
371AC046 |. 33CC XOR ECX,ESP
371AC048 |. E8 21345200 CALL CShell_-.376CF46E
371AC04D |. 83C4 10 ADD ESP,10
371AC050 |. C2 0400 RETN 4
371AC053 |> 8B16 MOV EDX,DWORD PTR DS:[ESI] ; Case 1 of switch 371ABF04
371AC055 |. 8B42 78 MOV EAX,DWORD PTR DS:[EDX+78]
371AC058 |. 8BCE MOV ECX,ESI
371AC05A |. FFD0 CALL EAX
371AC05C |. 8B16 MOV EDX,DWORD PTR DS:[ESI]
371AC05E |. 8AD8 MOV BL,AL
371AC060 |. 8B42 7C MOV EAX,DWORD PTR DS:[EDX+7C]
371AC063 |. 8BCE MOV ECX,ESI
371AC065 |. FFD0 CALL EAX
371AC067 |. 8B16 MOV EDX,DWORD PTR DS:[ESI]
371AC069 |. 0FB7F8 MOVZX EDI,AX
371AC06C |. 8B42 7C MOV EAX,DWORD PTR DS:[EDX+7C]
371AC06F |. 8BCE MOV ECX,ESI
371AC071 |. FFD0 CALL EAX
371AC073 |. 8B4C24 10 MOV ECX,DWORD PTR SS:[ESP+10]
371AC077 |. 0FB7C0 MOVZX EAX,AX
371AC07A |. 50 PUSH EAX
371AC07B |. 80FB 01 CMP BL,1
371AC07E |. 0F94C2 SETE DL
371AC081 |. 57 PUSH EDI
371AC082 |. 0FB6C2 MOVZX EAX,DL
371AC085 |. 51 PUSH ECX
371AC086 |. 50 PUSH EAX
371AC087 |. 8BCD MOV ECX,EBP
371AC089 |. E8 52E5FFFF CALL CShell_-.371AA5E0
371AC08E |> 8B4C24 1C MOV ECX,DWORD PTR SS:[ESP+1C]
371AC092 |. 5F POP EDI
371AC093 |. 5E POP ESI
371AC094 |. 5D POP EBP
371AC095 |. 5B POP EBX
371AC096 |. 33CC XOR ECX,ESP
371AC098 |. E8 D1335200 CALL CShell_-.376CF46E
371AC09D |. 83C4 10 ADD ESP,10
371AC0A0 \. C2 0400 RETN 4
371AC0A3 CC INT3
371AC0A4 CC INT3
371AC0A5 CC INT3
371AC0A6 CC INT3
371AC0A7 CC INT3
371AC0A8 CC INT3
371AC0A9 CC INT3
371AC0AA CC INT3
371AC0AB CC INT3
371AC0AC CC INT3
371AC0AD CC INT3
371AC0AE CC INT3
371AC0AF CC INT3
371AC0B0 /$ 6A FF PUSH -1
371AC0B2 |. 68 804B7137 PUSH CShell_-.37714B80
371AC0B7 |. 64:A1 00000000 MOV EAX,DWORD PTR FS:[0]
371AC0BD |. 50 PUSH EAX
371AC0BE |. 83EC 14 SUB ESP,14
371AC0C1 |. 56 PUSH ESI
371AC0C2 |. 57 PUSH EDI
371AC0C3 |. A1 C0819E37 MOV EAX,DWORD PTR DS:[379E81C0]
371AC0C8 |. 33C4 XOR EAX,ESP
371AC0CA |. 50 PUSH EAX
371AC0CB |. 8D4424 20 LEA EAX,DWORD PTR SS:[ESP+20]
371AC0CF |. 64:A3 00000000 MOV DWORD PTR FS:[0],EAX
371AC0D5 |. 8BF1 MOV ESI,ECX
371AC0D7 |. 80BE 08010000 >CMP BYTE PTR DS:[ESI+108],0
371AC0DE |. 0F84 E7020000 JE CShell_-.371AC3CB
371AC0E4 |. 8B46 04 MOV EAX,DWORD PTR DS:[ESI+4]
371AC0E7 |. 8B4E 08 MOV ECX,DWORD PTR DS:[ESI+8]
371AC0EA |. 85C0 TEST EAX,EAX
371AC0EC |. 0F84 D9020000 JE CShell_-.371AC3CB
371AC0F2 |> 3948 04 /CMP DWORD PTR DS:[EAX+4],ECX
371AC0F5 |. 74 1C |JE SHORT CShell_-.371AC113
371AC0F7 |. 8B80 24030000 |MOV EAX,DWORD PTR DS:[EAX+324]
371AC0FD |. 85C0 |TEST EAX,EAX
371AC0FF |.^75 F1 \JNZ SHORT CShell_-.371AC0F2
371AC101 |. 8B4C24 20 MOV ECX,DWORD PTR SS:[ESP+20]
371AC105 |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
371AC10C |. 59 POP ECX
371AC10D |. 5F POP EDI
371AC10E |. 5E POP ESI
371AC10F |. 83C4 20 ADD ESP,20
371AC112 |. C3 RETN
371AC113 |> 8B0D 5CE59E37 MOV ECX,DWORD PTR DS:[379EE55C]
371AC119 |. 8B01 MOV EAX,DWORD PTR DS:[ECX]
371AC11B |. 8B50 7C MOV EDX,DWORD PTR DS:[EAX+7C]
371AC11E |. FFD2 CALL EDX
371AC120 |. D95C24 14 FSTP DWORD PTR SS:[ESP+14]
371AC124 |. D986 00010000 FLD DWORD PTR DS:[ESI+100]