Function at 0x10033880
Capabilities:
Parse pe header

Disassembly:
push 0xffffffffffffffff
push 0x100a0c12
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x28
push ebx
mov ebx, dword [esp + 0x3c]
push ebp
push esi
mov ebp, ecx
lea eax, [ebx + 1]
push edi
xor esi, esi
push eax
lea ecx, [esp + 0x14]
mov dword [esp + 0x18], esi
call sub.mfc42.dll_CString::CString_1
mov ax, word [ebx + 0x12]
mov dword [esp + 0x40], esi
cmp ax, 0x65
mov edi, 1
jne 0x100338f6
lea ecx, [esp + 0x10]
push 0x100c4ef4
lea edx, [esp + 0x4c]
push ecx
push edx
call sub.mfc42.dll_operator
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x44], 1
call sub.mfc42.dll_CString::operator
mov byte [esp + 0x40], 0
lea ecx, [esp + 0x48]
jmp 0x1003393a
cmp ax, 0x3e8
jl 0x10033902
cmp ax, 0x3f0
jle 0x1003390e
cmp ax, 0x3f2
jl 0x1003393f
cmp ax, 0x3f3
jg 0x1003393f
lea eax, [esp + 0x10]
push 0x100c4ef0
lea ecx, [esp + 0x4c]
push eax
push ecx
call sub.mfc42.dll_operator
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x44], 2
call sub.mfc42.dll_CString::operator
mov byte [esp + 0x40], 0
lea ecx, [esp + 0x48]
call sub.mfc42.dll_CString::CString
mov eax, dword [esp + 0x10]
lea edx, [esp + 0x14]
push edx
push eax
mov ecx, ebp
call sub.mfc42.dll_CMapStringToOb::Lookup
test eax, eax
jne 0x10033f76
lea ecx, [esp + 0x24]
call sub.mfc42.dll_CString::CString_2
movsx eax, byte [ebx]
cmp eax, 3
mov byte [esp + 0x40], 3
mov dword [esp + 0x20], edi
mov dword [esp + 0x1c], esi
mov dword [esp + 0x18], 6
ja case.0x1003397e.0
jmp dword [eax*4 + 0x10033fa0]
mov dword [esp + 0x48], 4
jmp 0x100339ab
mov dword [esp + 0x48], 8
jmp 0x100339ab
mov dword [esp + 0x48], 0x40
jmp 0x100339ab
mov dword [esp + 0x48], 2
cmp dword [esp + 0x50], esi
je 0x100339b5
or dword [esp + 0x48], edi
mov ax, word [ebx + 0x12]
mov edi, 0x32
cmp ax, di
jl 0x100339d2
cmp ax, 0x64
jge 0x100339d2
mov ecx, dword [esp + 0x48]
or ecx, 0x10
jmp 0x100339df
cmp ax, 8
jg 0x100339e3
mov ecx, dword [esp + 0x48]
or ecx, 0x20
mov dword [esp + 0x48], ecx
lea ecx, [esp + 0x50]
push eax
push ecx
mov ecx, ebp
call fcn.10032d20
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0x44], 4
call sub.mfc42.dll_CString::operator
lea ecx, [esp + 0x50]
mov byte [esp + 0x40], 3
call sub.mfc42.dll_CString::CString
call dword [sym.imp.rm3944cl.dll_NewMopFix]
nop
nop
nop
jg 0x10033e05
je 0x10033dfe
cmp eax, 0xd3
ja case.0x10033e0f.1009
xor edx, edx
mov dl, byte [eax + 0x1003412c]
jmp dword [edx*4 + 0x10033fb0]
mov esi, 1
jmp case.0x10033a35.0
mov esi, 2
jmp case.0x10033a35.0
mov esi, 3
jmp case.0x10033a35.0
mov esi, 4
jmp case.0x10033a35.0
mov esi, 5
jmp case.0x10033a35.0
mov esi, 6
jmp case.0x10033a35.0
mov esi, 7
jmp case.0x10033a35.0
mov esi, 8
jmp case.0x10033a35.0
mov esi, 0x57
jmp case.0x10033a35.0
mov esi, 9
jmp case.0x10033a35.0
mov esi, 0xb
jmp case.0x10033a35.0
mov esi, 0xd
jmp case.0x10033a35.0
mov esi, 0xe
jmp case.0x10033a35.0
mov esi, 0xf
jmp case.0x10033a35.0
mov esi, 0x10
jmp case.0x10033a35.0
mov esi, 0x12
jmp case.0x10033a35.0
mov esi, 0x13
jmp case.0x10033a35.0
mov esi, 0x11
jmp case.0x10033a35.0
mov esi, 0x2a
jmp case.0x10033a35.0
mov esi, 0x28
jmp case.0x10033a35.0
mov esi, 0x29
jmp case.0x10033a35.0
mov esi, 0x52
jmp case.0x10033a35.0
mov esi, 0x53
jmp case.0x10033a35.0
mov esi, 0x54
jmp case.0x10033a35.0
mov esi, 0xa
jmp case.0x10033a35.0
mov esi, 0x5d
jmp case.0x10033a35.0
mov esi, 0x5e
jmp case.0x10033a35.0
mov esi, 0x5f
jmp case.0x10033a35.0
mov esi, 0x60
jmp case.0x10033a35.0
mov esi, 0x14
jmp case.0x10033a35.0
mov esi, 0x15
jmp case.0x10033a35.0
mov esi, 0x16
jmp case.0x10033a35.0
mov esi, 0x17
jmp case.0x10033a35.0
mov esi, 0x18
jmp case.0x10033a35.0
mov esi, 0x19
jmp case.0x10033a35.0
mov esi, 0x1a
jmp case.0x10033a35.0
mov esi, 0x1b
jmp case.0x10033a35.0
mov esi, 0x1c
jmp case.0x10033a35.0
mov esi, 0x1d
mov dword [esp + 0x20], 8
mov dword [esp + 0x1c], 0x12
jmp case.0x10033a35.0
mov esi, 0x1e
mov dword [esp + 0x20], 8
mov dword [esp + 0x1c], 0x18
jmp case.0x10033a35.0
mov esi, 0x1f
jmp case.0x10033a35.0
mov esi, 0x20
mov dword [esp + 0x20], 8
mov dword [esp + 0x1c], 0x19
jmp case.0x10033a35.0
mov esi, 0x21
jmp case.0x10033a35.0
mov esi, 0x22
jmp case.0x10033a35.0
mov esi, 0x24
jmp case.0x10033a35.0
mov esi, 0x25
mov dword [esp + 0x18], edi
jmp case.0x10033a35.0
mov esi, 0x26
mov dword [esp + 0x18], edi
jmp case.0x10033a35.0
mov esi, 0x27
mov dword [esp + 0x18], edi
jmp case.0x10033a35.0
mov esi, 0x2c
jmp case.0x10033a35.0
mov esi, 0x2d
jmp case.0x10033a35.0
mov esi, 0x2e
jmp case.0x10033a35.0
mov esi, 0x2f
jmp case.0x10033a35.0
mov esi, 0x30
jmp case.0x10033a35.0
mov esi, 0x31
jmp case.0x10033a35.0
mov esi, edi
jmp case.0x10033a35.0
mov esi, 0x33
jmp case.0x10033a35.0
mov esi, 0x34
jmp case.0x10033a35.0
mov esi, 0x37
jmp case.0x10033a35.0
mov esi, 0x41
jmp case.0x10033a35.0
mov esi, 0x42
jmp case.0x10033a35.0
mov esi, 0x4d
jmp case.0x10033a35.0
mov esi, 0x4e
jmp case.0x10033a35.0
mov esi, 0x4f
jmp case.0x10033a35.0
mov esi, 0x50
jmp case.0x10033a35.0
mov esi, 0x51
jmp case.0x10033a35.0
mov esi, 0x55
jmp case.0x10033a35.0
mov esi, 0x56
jmp case.0x10033a35.0
mov esi, 0x5a
jmp case.0x10033a35.0
mov esi, 0x59
jmp case.0x10033a35.0
mov esi, 0x5c
jmp case.0x10033a35.0
mov esi, 0x5b
jmp case.0x10033a35.0
mov esi, 0x64
jmp case.0x10033a35.0
mov esi, 0x65
jmp case.0x10033a35.0
mov esi, 0x66
jmp case.0x10033a35.0
mov esi, 0x67
jmp case.0x10033a35.0
mov esi, 0x68
jmp case.0x10033a35.0
mov esi, 0x23
jmp case.0x10033a35.0
mov esi, 0x2b
jmp case.0x10033a35.0
mov esi, 0x35
jmp case.0x10033a35.0
mov esi, 0x36
jmp case.0x10033a35.0
mov esi, 0x45
jmp case.0x10033a35.0
mov esi, 0x43
jmp case.0x10033a35.0
mov esi, 0x4c
jmp case.0x10033a35.0
mov esi, 0x46
jmp case.0x10033a35.0
mov esi, 0x4a
jmp case.0x10033a35.0
mov esi, 0x4b
jmp case.0x10033a35.0
mov esi, 0x47
jmp case.0x10033a35.0
mov esi, 0x48
jmp case.0x10033a35.0
mov esi, 0x44
jmp case.0x10033a35.0
mov esi, 0x49
jmp case.0x10033a35.0
mov esi, 0x61
jmp case.0x10033a35.0
mov esi, 0x62
jmp case.0x10033a35.0
mov esi, 0x38
jmp case.0x10033a35.0
add eax, 0xfffffc17
cmp eax, 0xa
ja case.0x10033e0f.1009
jmp dword [eax*4 + 0x10034200]
mov esi, 0x39
jmp case.0x10033a35.0
mov esi, 0x3a
jmp case.0x10033a35.0
mov esi, 0x3b
jmp case.0x10033a35.0
mov esi, 0x3c
jmp case.0x10033a35.0
mov esi, 0x3d
jmp case.0x10033a35.0
mov esi, 0x3e
jmp case.0x10033a35.0
mov esi, 0x3f
jmp case.0x10033a35.0
mov esi, 0x40
jmp case.0x10033a35.0
mov esi, 0x58
jmp case.0x10033a35.0
mov esi, 0x63
jmp case.0x10033a35.0
call fcn.100aa850
mov eax, dword [ebp + 0x1c]
mov eax, dword [eax]
mov ecx, dword [eax + esi*4]
lea eax, [esp + 0x30]
push eax
mov edx, dword [ecx]
call dword [edx + 0x40]
mov ecx, dword [esp + 0x30]
mov eax, dword [ebp + 0x1c]
mov dword [esp + 0x28], ecx
mov edx, dword [eax]
mov ecx, dword [edx + esi*4]
lea edx, [esp + 0x30]
push edx
mov eax, dword [ecx]
call dword [eax + 0x40]
mov eax, dword [esp + 0x34]
push 0x118
mov dword [esp + 0x30], eax
call sub.mfc42.dll_operatornew
mov edi, eax
add esp, 4
mov dword [esp + 0x50], edi
test edi, edi
mov byte [esp + 0x40], 5
je 0x10033f09
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x20]
push ecx
mov ecx, dword [esp + 0x28]
push edx
mov edx, dword [ebp + 0x28]
push eax
movsx eax, byte [ebx + 0x18]
push ecx
mov ecx, dword [esp + 0x5c]
push edx
push eax
lea edx, [esp + 0x40]
push ecx
mov ecx, dword [ebp + 0x1c]
push edx
push esi
call dword [sym.imp.exstage.dll_public:_struct_SOUND_SET____thiscall_CSpriteManager::GetSoundArray_int_]
mov ecx, dword [ebp + 0x1c]
push eax
push 0
push esi
call dword [sym.imp.exstage.dll_public:_class_CtPump____thiscall_CSpriteManager::GetPumpArray_int__int_]
mov ecx, dword [ebp + 0x1c]
push eax
push esi
call dword [sym.imp.exstage.dll_public:_class_CxFXFrame____thiscall_CSpriteManager::GetFrameArray_int_]
push eax
mov eax, dword [esp + 0x74]
push eax
mov ecx, edi
call fcn.1002fe10
jmp 0x10033f0b
xor eax, eax
push 0
push ebx
mov ecx, eax
mov byte [esp + 0x48], 3
mov dword [esp + 0x1c], eax
call fcn.10031730
mov ecx, dword [ebp + 0x34]
push ecx
mov ecx, dword [esp + 0x18]
call fcn.10032bd0
mov al, byte [esp + 0x48]
mov esi, dword [esp + 0x14]
test al, 1
je 0x10033f5a
lea ecx, [esp + 0x24]
mov byte [esp + 0x40], 0
call sub.mfc42.dll_CString::CString
lea ecx, [esp + 0x10]
mov dword [esp + 0x40], 0xffffffff
call sub.mfc42.dll_CString::CString
mov eax, esi
jmp 0x10033f89
mov edx, dword [esp + 0x10]
mov ecx, ebp
push edx
call sub.mfc42.dll_CMapStringToOb::operator__
lea ecx, [esp + 0x24]
mov dword [eax], esi
mov byte [esp + 0x40], 0
call sub.mfc42.dll_CString::CString
lea ecx, [esp + 0x10]
mov dword [esp + 0x40], 0xffffffff
call sub.mfc42.dll_CString::CString
xor eax, eax
mov ecx, dword [esp + 0x38]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x34
ret 0xc