Function at 0x4e0b00
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x51cb48
mov eax, dword fs:[0]
push eax
sub esp, 0x218
mov eax, dword [0x5750c8]
xor eax, esp
mov dword [esp + 0x210], eax
push ebx
push esi
push edi
mov eax, dword [0x5750c8]
xor eax, esp
push eax
lea eax, [esp + 0x228]
mov dword fs:[0], eax
mov esi, ecx
cmp byte [esi + 0xb8], 0
fld dword [esi + 0x98]
fmul dword [ebp + 8]
mov dword [esp + 0x44], esi
fstp dword [ebp + 8]
fld dword [ebp + 8]
fld qword [0x554c10]
fdivr st(1)
fstp dword [esp + 0x3c]
je 0x4e0e26
cmp byte [esi + 0x188], 0
jne 0x4e0ba2
fmul qword [0x554dc8]
fadd dword [esi + 0x168]
fld1
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x4e0b98
fstp st(0)
fstp dword [esi + 0x168]
jmp 0x4e0ba4
fstp st(1)
fstp dword [esi + 0x168]
jmp 0x4e0ba4
fstp st(0)
fld dword [esi + 0xa0]
fld dword [0x57c388]
fucompp
fnstsw ax
test ah, 0x44
jp 0x4e0be7
fld dword [esi + 0xa4]
fld dword [0x57c38c]
fucompp
fnstsw ax
test ah, 0x44
jp 0x4e0be7
fld dword [esi + 0xa8]
fld dword [0x57c390]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x4e0c9b
cmp byte [esi + 0x165], 0
jne 0x4e0c41
lea ecx, [esi + 0xa0]
call fcn.00402a70
fld dword [esp + 0x3c]
fmul qword [0x554b60]
fmul qword [0x555828]
faddp st(1)
fstp dword [esp + 0x24]
fld dword [esi + 0xa0]
fld dword [esp + 0x24]
fld st(0)
fmulp st(2)
fxch st(1)
fstp dword [esi + 0xa0]
fld st(0)
fmul dword [esi + 0xa4]
fstp dword [esi + 0xa4]
fmul dword [esi + 0xa8]
fstp dword [esi + 0xa8]
cmp byte [esi + 0x164], 0
je 0x4e0c9b
lea ecx, [esi + 0xa0]
call fcn.00402a70
fld dword [esp + 0x3c]
fmul qword [0x554b60]
fmul qword [0x554fa0]
faddp st(1)
fstp dword [esp + 0x24]
fld dword [esi + 0xa0]
fld dword [esp + 0x24]
fld st(0)
fmulp st(2)
fxch st(1)
fstp dword [esi + 0xa0]
fld st(0)
fmul dword [esi + 0xa4]
fstp dword [esi + 0xa4]
fmul dword [esi + 0xa8]
fstp dword [esi + 0xa8]
lea ecx, [ebp + 8]
lea eax, [esp + 0x18]
lea edx, [esi + 0xa0]
call fcn.004037a0
fld dword [esi + 0x1c]
fadd dword [eax]
lea ecx, [ebp + 8]
lea edx, [esi + 0xa0]
fstp dword [esi + 0x1c]
fld dword [eax + 4]
fadd dword [esi + 0x20]
fstp dword [esi + 0x20]
fld dword [eax + 8]
lea eax, [esp + 0x18]
fadd dword [esi + 0x24]
fstp dword [esi + 0x24]
call fcn.004037a0
fld dword [eax]
lea ecx, [esp + 0x3c]
fadd dword [esi + 0xd4]
lea edx, [esi + 0x1c]
fstp dword [esi + 0xd4]
fld dword [eax + 4]
fadd dword [esi + 0xd8]
fstp dword [esi + 0xd8]
fld dword [eax + 8]
lea eax, [esp + 0x18]
fadd dword [esi + 0xdc]
fstp dword [esi + 0xdc]
call fcn.004037a0
fld dword [eax]
lea ecx, [esi + 0x10]
fadd dword [ecx]
mov dword [esp + 0x40], ecx
lea edx, [esi + 0xd4]
fstp dword [ecx]
fld dword [eax + 4]
fadd dword [ecx + 4]
fstp dword [ecx + 4]
fld dword [eax + 8]
lea eax, [esp + 0x18]
fadd dword [ecx + 8]
fstp dword [ecx + 8]
lea ecx, [esp + 0x3c]
call fcn.004037a0
fld dword [esi + 0xc8]
fadd dword [eax]
lea ecx, [esi + 0xc8]
mov dword [esp + 0x30], ecx
fstp dword [ecx]
fld dword [eax + 4]
fadd dword [ecx + 4]
fstp dword [ecx + 4]
fld dword [eax + 8]
fadd dword [ecx + 8]
fstp dword [ecx + 8]
fld dword [ebp + 8]
fld qword [0x555080]
fmul st(1)
fiadd dword [esi + 0x60]
call fcn.00513620
fld dword [esi + 0x88]
fadd st(1)
mov dword [esi + 0x60], eax
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fst dword [esi + 0x88]
fldz
fcom st(2)
fnstsw ax
fstp st(2)
test ah, 0x41
jne 0x4e13e1
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x4e13e3
mov eax, dword [esi + 0x8c]
fld dword [0x554bd0]
mov ecx, dword [esi + 0x90]
fstp dword [esi + 0xbc]
mov edx, dword [esi + 0x94]
mov dword [esi + 0x1c], eax
mov eax, dword [esp + 0x40]
mov dword [esi + 0x20], ecx
mov ecx, dword [esp + 0x30]
mov dword [esi + 0x24], edx
mov edx, dword [eax]
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [ecx + 4], edx
mov edx, dword [esi + 0x90]
mov dword [ecx + 8], eax
mov ecx, dword [esi + 0x8c]
mov eax, dword [esi + 0x94]
mov dword [esi + 0xd4], ecx
mov dword [esi + 0xd8], edx
mov byte [esi + 0xb8], 0
mov dword [esi + 0xdc], eax
jmp 0x4e13e3
fstp st(0)
fldz
fcom dword [esi + 0x74]
fnstsw ax
test ah, 5
jp 0x4e1234
cmp byte [0x5b3072], 0
fld dword [esi + 0x74]
fstp dword [esp + 0x24]
jne 0x4e0e82
fcom dword [0x5b3084]
fnstsw ax
test ah, 1
jne 0x4e0e82
cmp dword [0x5b3074], 2
jne 0x4e0e6d
fld1
fcomp dword [0x5b3080]
fnstsw ax
test ah, 0x41
je 0x4e0e76
cmp byte [0x5b3078], 0
jne 0x4e0e82
fld dword [esi + 0x74]
fsub dword [0x5b30ac]
fstp dword [esi + 0x74]
fld dword [esi + 0x74]
fld qword [0x554b60]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 1
jne 0x4e0f23
fld dword [esp + 0x24]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4e0f25
cmp byte [0x5b2abf], 0
jne 0x4e0f25
cmp byte [0x5b3078], 0
jne 0x4e0f25
fstp st(0)
mov dword [esp + 0x24], vtable.Mortar::Delegate1_bool__class_Mortar::MortarSound__::Global.0
mov dword [esp + 0x28], 0x494d00
sub esp, 0x24
mov ecx, esp
mov dword [esp + 0x254], 0
mov dword [esp + 0x38], esp
push ecx
lea ecx, [esp + 0x4c]
call fcn.0040e4d0
fld1
mov edi, dword [0x5b3200]
sub esp, 8
fst dword [esp + 4]
mov ebx, str.Throw_fruit
fstp dword [esp]
call fcn.00494e50
mov dword [esp + 0x230], 0xffffffff
fldz
mov dword [esp + 0x24], vtable.Mortar::Delegate1_bool__class_Mortar::MortarSound__::BaseDelegate.0
mov byte [0x5b2abf], 1
jmp 0x4e0f25
fstp st(0)
fcomp dword [esi + 0x74]
fnstsw ax
test ah, 1
jne 0x4e19fc
movzx edx, byte [esi + 0x3c]
mov eax, dword [0x5b2adc]
imul edx, edx, 0x338
mov ebx, dword [edx + eax + 0x258]
push esi
call fcn.004dbbe0
test al, al
jne 0x4e0fd7
mov ebx, dword [0x5fd2e4]
test bl, 1
jne 0x4e0f7a
or ebx, 1
mov ecx, 0x54e5d4
mov dword [0x5fd2e4], ebx
call fcn.00419140
mov dword [0x5fd2e0], eax
test bl, 2
jne 0x4e0f97
or ebx, 2
mov ecx, str.scorex2_trail
mov dword [0x5fd2e4], ebx
call fcn.00419140
mov dword [0x5fd2dc], eax
test bl, 4
jne 0x4e0fb4
or ebx, 4
mov ecx, str.blue_fruit_flight
mov dword [0x5fd2e4], ebx
call fcn.00419140
mov dword [0x5fd2d8], eax
cmp dword [esi + 0x84], 3
jne 0x4e0fc5
mov ebx, dword [0x5fd2dc]
jmp 0x4e0fd1
mov ecx, str.fruit_flight
call fcn.00419140
mov ebx, eax
push esi
call fcn.004dbbe0
mov edi, dword [esi + 0x40]
test edi, edi
je 0x4e1011
lea ecx, [esi + 0x9c]
lea eax, [esp + 0x18]
mov edx, 0x57c3a0
call fcn.004037a0
mov ecx, eax
lea eax, [esp + 0x78]
lea edx, [esi + 0x10]
call fcn.00403dd0
mov ecx, dword [eax]
mov dword [edi + 8], ecx
mov edx, dword [eax + 4]
mov dword [edi + 0xc], edx
mov eax, dword [eax + 8]
mov dword [edi + 0x10], eax
call fcn.004f4340
fld dword [eax + 0x6c]
fstp dword [esp + 0x30]
fld dword [esp + 0x30]
fld st(0)
call fcn.00513620
mov edi, eax
mov dword [esp + 0x24], edi
fild dword [esp + 0x24]
fstp dword [esp + 0x38]
fld dword [esp + 0x38]
fadd qword [0x554d30]
fcompp
fnstsw ax
test ah, 5
jp 0x4e10ad
call fcn.004f4340
mov ebx, eax
mov ecx, dword [ebx + 0xc]
mov edx, dword [ebx + 8]
mov eax, dword [ebx + 0x14]
push ecx
mov ecx, dword [ebx + 0x10]
push edx
push eax
push ecx
call fcn.00513700
add eax, dword [ebx + 0x18]
mov cl, 0x20
adc edx, dword [ebx + 0x1c]
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], edx
call fcn.005136e0
push 0
push 0x64
push edx
push eax
call fcn.00513700
fld dword [esp + 0x30]
fsub dword [esp + 0x38]
mov dword [esp + 0x14], edx
fmul qword [0x554c20]
fild dword [esp + 0x14]
test edx, edx
jns 0x4e10a3
fadd dword [0x554b74]
fcompp
fnstsw ax
test ah, 5
jp 0x4e10ad
inc edi
test edi, edi
jg 0x4e10ee
fldz
fstp dword [esi + 0x74]
call fcn.0048fdd0
fchs
fstp dword [esi + 0x14]
fldz
fst dword [esp + 0x24]
fld dword [0x554bd0]
mov edx, dword [esp + 0x24]
fstp dword [esp + 0x28]
mov dword [esi + 0x1c], edx
mov eax, dword [esp + 0x28]
mov dword [esi + 0x20], eax
fst dword [esp + 0x2c]
mov ecx, dword [esp + 0x2c]
mov dword [esi + 0x24], ecx
jmp 0x4e1234
mov ebx, 1
cmp edi, ebx
jle 0x4e1232
push fcn.00407870
push 0x4077f0
push 3
push 0x68
lea edx, [esp + 0xf4]
push edx
call fcn.0045f2ca
mov dword [esp + 0x230], ebx
fldz
fst dword [esp + 0x24]
mov dword [esp + 0x11c], ebx
fld dword [0x555824]
mov eax, dword [esp + 0x24]
fstp dword [esp + 0x28]
mov dword [esp + 0x100], eax
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x104], ecx
fstp dword [esp + 0x2c]
mov edx, dword [esp + 0x2c]
fld dword [0x5555b8]
mov dword [esp + 0x108], edx
fst dword [esp + 0x144]
mov dword [esp + 0x184], 2
fld dword [0x554bd0]
mov dword [esp + 0x1ec], 3
fst dword [esp + 0x17c]
fld dword [0x554d18]
fst dword [esp + 0x180]
fxch st(2)
fst dword [esp + 0x1ac]
fxch st(1)
fstp dword [esp + 0x1e4]
fxch st(1)
fstp dword [esp + 0x1e8]
fstp dword [esp + 0x214]
call fcn.004f4340
mov ebx, eax
mov eax, dword [ebx + 0xc]
mov ecx, dword [ebx + 8]
mov edx, dword [ebx + 0x14]
push eax
mov eax, dword [ebx + 0x10]
push ecx
push edx
push eax
call fcn.00513700
add eax, dword [ebx + 0x18]
mov cl, 0x20
adc edx, dword [ebx + 0x1c]
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], edx
call fcn.005136e0
mov ecx, edx
shld edx, eax, 1
mov ebx, eax
add eax, eax
add ebx, eax
adc ecx, edx
imul ecx, ecx, 0x68
push 0
lea ecx, [esp + ecx + 0xe8]
push ecx
push 0xffffffffffffffff
dec edi
push edi
call fcn.004f4340
push eax
call fcn.004ef8b0
push fcn.00407870
push 3
push 0x68
lea edx, [esp + 0xf0]
push edx
mov dword [esp + 0x240], 0xffffffff
call fcn.0045f1ec
fldz
cmp byte [esi + 0x70], 0
je 0x4e1347
cmp byte [esi + 0x16c], 0
fld dword [esi + 0xa0]
fstp dword [esp + 0x18]
fld dword [esi + 0xa4]
fstp dword [esp + 0x1c]
fld dword [esi + 0xa8]
fstp dword [esp + 0x20]
jne 0x4e1347
fstp st(0)
lea ecx, [esp + 0x24]
fld dword [0x555124]
lea eax, [esp + 0x78]
fstp dword [esp + 0x30]
lea edx, [esp + 0x18]
fld dword [ebp + 8]
fmul st(0), st(0)
fstp dword [esp + 0x34]
fld dword [0x5768e0]
fstp dword [esp + 0x24]
call fcn.004037a0
mov edx, eax
lea ecx, [esp + 0x34]
lea eax, [esp + 0x84]
call fcn.004037a0
mov ebx, eax
lea ecx, [ebp + 8]
lea eax, [esp + 0x68]
lea edx, [esi + 0x1c]
call fcn.004037a0
mov edx, eax
mov ecx, ebx
lea eax, [esp + 0x58]
call fcn.00403dd0
mov edx, eax
lea ecx, [esp + 0x30]
lea eax, [esp + 0x48]
call fcn.004037a0
fld dword [eax]
fadd dword [esi + 0x10]
lea ecx, [ebp + 8]
lea edx, [esp + 0x18]
fstp dword [esi + 0x10]
fld dword [eax + 4]
fadd dword [esi + 0x14]
fstp dword [esi + 0x14]
fld dword [eax + 8]
lea eax, [esp + 0x48]
fadd dword [esi + 0x18]
fstp dword [esi + 0x18]
call fcn.004037a0
fld dword [esi + 0x1c]
lea edx, [esi + 0x78]
fadd dword [eax]
lea ecx, [ebp + 8]
fstp dword [esi + 0x1c]
fld dword [eax + 4]
fadd dword [esi + 0x20]
fstp dword [esi + 0x20]
fld dword [eax + 8]
lea eax, [esp + 0x48]
fadd dword [esi + 0x24]
fstp dword [esi + 0x24]
call fcn.004037a0
fld dword [eax]
fadd dword [esi + 0x10]
fstp dword [esi + 0x10]
fld dword [eax + 4]
fadd dword [esi + 0x14]
fstp dword [esi + 0x14]
fld dword [eax + 8]
fadd dword [esi + 0x18]
fstp dword [esi + 0x18]
fldz
mov edx, dword [esi + 0x10]
fcom dword [esi + 0xbc]
lea eax, [esi + 0x10]
lea ecx, [esi + 0xc8]
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov dword [esp + 0x40], eax
mov eax, dword [eax + 8]
mov dword [ecx + 4], edx
mov edx, dword [esi + 0x20]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x24]
mov dword [esp + 0x30], ecx
mov ecx, dword [esi + 0x1c]
mov dword [esi + 0xd4], ecx
mov dword [esi + 0xd8], edx
mov dword [esi + 0xdc], eax
fnstsw ax
test ah, 5
jp 0x4e13ce
cmp byte [esi + 0x16c], 0
jne 0x4e13a9
fld dword [esi + 0xbc]
fsub dword [ebp + 8]
fstp dword [esi + 0xbc]
fcomp dword [esi + 0xbc]
fnstsw ax
test ah, 1
jne 0x4e13d0
mov ecx, esi
call fcn.004da6a0
fld dword [ebp + 8]
push ecx
fstp dword [esp]
push esi
call fcn.004dbf30
fldz
jmp 0x4e13e3
fstp st(0)
fld dword [ebp + 8]
push ecx
fstp dword [esp]
push esi
call fcn.004dbf30
fldz
jmp 0x4e13e3
fstp st(0)
fld qword [0x554c58]
lea edi, [esi + 0xe0]
lea ecx, [esi + 0x104]
mov dword [esp + 0x34], 0
mov dword [esp + 0x24], edi
mov dword [esp + 0x38], ecx
lea ebx, [esi + 0x120]
jmp 0x4e141e
fld qword [0x554c58]
mov ecx, dword [esp + 0x38]
fldz
fxch st(1)
cmp byte [esi + 0x16c], 0
jne 0x4e16dc
fld dword [ebx - 8]
fstp dword [esp + 0x84]
fld dword [ebx - 4]
fstp dword [esp + 0x88]
fld dword [ebx]
fstp dword [esp + 0x8c]
fld dword [ebx + 4]
fstp dword [esp + 0x78]
fld dword [ebx + 8]
fstp dword [esp + 0x7c]
fld dword [ebx + 0xc]
fstp dword [esp + 0x80]
fld dword [ebx + 0x10]
fstp dword [esp + 0x18]
fld dword [ebx + 0x14]
fstp dword [esp + 0x1c]
fld dword [ebx + 0x18]
fstp dword [esp + 0x20]
fld dword [ecx - 4]
fld dword [esp + 0x3c]
fld st(0)
fmulp st(2)
fnstcw word [esp + 0x12]
movzx eax, word [esp + 0x12]
fxch st(1)
fmul st(2)
or eax, 0xc00
mov dword [esp + 0x14], eax
fldcw word [esp + 0x14]
fistp dword [esp + 0x14]
mov dx, word [esp + 0x14]
shr dx, 1
movzx eax, dx
shr eax, 4
fldcw word [esp + 0x12]
lea edx, [eax + 0x400]
and edx, 0xfff
fld dword [edx*4 + 0x547b98]
fstp dword [esp + 0x54]
fld dword [esp + 0x84]
fmul dword [eax*4 + 0x547b98]
fstp dword [esp + 0x48]
fld dword [esp + 0x88]
fmul dword [eax*4 + 0x547b98]
fstp dword [esp + 0x4c]
fld dword [esp + 0x8c]
fmul dword [eax*4 + 0x547b98]
fstp dword [esp + 0x50]
fld dword [esp + 0x54]
fld st(3)
fucompp
fnstsw ax
test ah, 0x44
jp 0x4e1522
fxch st(2)
fst dword [esp + 0x50]
fst dword [esp + 0x4c]
fst dword [esp + 0x48]
fld1
fst dword [esp + 0x54]
jmp 0x4e152a
fld1
fxch st(1)
fxch st(3)
fxch st(1)
fld dword [ecx]
fmul st(4)
fnstcw word [esp + 0x12]
movzx eax, word [esp + 0x12]
fmul st(3)
or eax, 0xc00
mov dword [esp + 0x14], eax
fldcw word [esp + 0x14]
fistp dword [esp + 0x14]
mov ax, word [esp + 0x14]
shr ax, 1
movzx eax, ax
shr eax, 4
fldcw word [esp + 0x12]
lea edx, [eax + 0x400]
and edx, 0xfff
fld dword [edx*4 + 0x547b98]
fstp dword [esp + 0x64]
fld dword [eax*4 + 0x547b98]
fmul dword [esp + 0x78]
fstp dword [esp + 0x58]
fld dword [eax*4 + 0x547b98]
fmul dword [esp + 0x7c]
fstp dword [esp + 0x5c]
fld dword [eax*4 + 0x547b98]
fmul dword [esp + 0x80]
fstp dword [esp + 0x60]
fld dword [esp + 0x64]
fld st(2)
fucompp
fnstsw ax
test ah, 0x44
jp 0x4e15c6
fxch st(1)
fst dword [esp + 0x60]
fst dword [esp + 0x5c]
fst dword [esp + 0x58]
fxch st(1)
fst dword [esp + 0x64]
fld dword [ecx + 4]
fmulp st(4)
fnstcw word [esp + 0x12]
movzx eax, word [esp + 0x12]
fxch st(3)
fmulp st(2)
or eax, 0xc00
mov dword [esp + 0x14], eax
fxch st(1)
fldcw word [esp + 0x14]
fistp dword [esp + 0x14]
mov ax, word [esp + 0x14]
shr ax, 1
movzx eax, ax
shr eax, 4
fldcw word [esp + 0x12]
lea ecx, [eax + 0x400]
and ecx, 0xfff
fld dword [ecx*4 + 0x547b98]
fstp dword [esp + 0x74]
fld dword [esp + 0x18]
fmul dword [eax*4 + 0x547b98]
fstp dword [esp + 0x68]
fld dword [esp + 0x1c]
fmul dword [eax*4 + 0x547b98]
fstp dword [esp + 0x6c]
fld dword [esp + 0x20]
fmul dword [eax*4 + 0x547b98]
fstp dword [esp + 0x70]
fld dword [esp + 0x74]
fld st(1)
fucompp
fnstsw ax
test ah, 0x44
jp 0x4e1662
fst dword [esp + 0x70]
fst dword [esp + 0x6c]
fstp dword [esp + 0x68]
fstp dword [esp + 0x74]
jmp 0x4e1666
fstp st(0)
fstp st(0)
lea ecx, [esp + 0x48]
lea eax, [esp + 0xd4]
mov edx, edi
call fcn.0040e3a0
mov edx, eax
lea ecx, [esp + 0x58]
lea eax, [esp + 0xc4]
call fcn.0040e3a0
mov edx, eax
lea ecx, [esp + 0x68]
lea eax, [esp + 0xb4]
call fcn.0040e3a0
mov edx, dword [eax]
mov dword [edi], edx
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov edx, dword [eax + 8]
mov dword [edi + 8], edx
mov eax, dword [eax + 0xc]
mov esi, edi
mov dword [edi + 0xc], eax
call fcn.0040e920
mov eax, dword [esp + 0x34]
add dword [esp + 0x38], 0xc
mov esi, dword [esp + 0x44]
inc eax
add edi, 0x10
add ebx, 0x24
mov dword [esp + 0x34], eax
cmp eax, 2
jl 0x4e1410
jmp 0x4e16e0
fstp st(1)
fstp st(0)
call fcn.004d9c40
mov esi, dword [esp + 0x44]
test al, al
je 0x4e16f6
push 1
mov ecx, esi
call fcn.004e0630
mov eax, dword [esi + 0x38]
xor edx, edx
cmp eax, edx
je 0x4e171c
mov ecx, dword [esp + 0x40]
fldz
mov edi, dword [ecx]
mov dword [eax + 4], edi
mov edi, dword [ecx + 4]
mov dword [eax + 8], edi
mov ecx, dword [ecx + 8]
mov dword [eax + 0xc], ecx
mov eax, dword [esi + 0x38]
fstp dword [eax + 0xc]
fld dword [ebp + 8]
fldz
fucompp
fnstsw ax
test ah, 0x44
jp 0x4e17c6
lea ebx, [esi + 0x40]
mov dword [esp + 0x34], 2
mov eax, 1
cmp dword [ebx], edx
je 0x4e17b2
test byte [0x5fc208], 1
jne 0x4e17a3
or dword [0x5fc208], eax
fldz
mov eax, dword [0x57c38c]
fstp dword [0x5bd5a0]
xor ecx, ecx
mov word [0x5bd5b4], cx
mov ecx, dword [0x57c390]
mov dword [0x5bd5c4], edx
mov dword [0x5bd5bc], edx
mov dword [0x5bd5b0], edx
mov edx, dword [0x57c388]
push 0x5292a0
mov dword [0x5bd5a4], edx
mov dword [0x5bd5a8], eax
mov dword [0x5bd5ac], ecx
call fcn.0045f177
add esp, 4
mov edx, dword [ebx]
push edx
mov edi, 0x5bd5a0
call fcn.004f8080
xor edx, edx
mov dword [ebx], edx
mov eax, 1
add ebx, 4
sub dword [esp + 0x34], eax
jne 0x4e173e
mov edi, dword [esi + 0x40]
cmp edi, edx
je 0x4e18ef
fld dword [esi + 0x9c]
lea ecx, [esp + 0x14]
fsub qword [0x554ee8]
lea eax, [esp + 0x48]
mov edx, 0x57c3a0
fstp dword [esp + 0x14]
call fcn.004037a0
mov edx, dword [esp + 0x40]
mov ecx, eax
lea eax, [esp + 0x58]
call fcn.00403dd0
fld dword [0x554d40]
mov ecx, dword [eax]
mov dword [edi + 8], ecx
mov edx, dword [eax + 4]
mov dword [edi + 0xc], edx
mov eax, dword [eax + 8]
mov dword [edi + 0x10], eax
mov ecx, dword [esi + 0x40]
mov eax, dword [esp + 0x24]
fstp dword [ecx + 0x10]
lea ecx, [esp + 0x90]
call fcn.0040eb50
fld dword [0x57c3a0]
fstp dword [esp + 0x18]
sub esp, 8
fld dword [0x57c3a4]
fstp dword [esp + 0x24]
fld dword [0x57c3a8]
fstp dword [esp + 0x28]
fld dword [esp + 0xa4]
fld dword [esp + 0x24]
fld st(0)
fmulp st(2)
fld dword [esp + 0x98]
fld dword [esp + 0x20]
fld st(0)
fmulp st(2)
fxch st(3)
faddp st(1)
fld dword [esp + 0xb0]
fld dword [esp + 0x28]
fld st(0)
fmulp st(2)
fxch st(2)
faddp st(1)
fstp dword [esp + 0x20]
fld dword [esp + 0xa8]
fmulp st(2)
fld dword [esp + 0x9c]
fmulp st(3)
fxch st(1)
faddp st(2)
fmul dword [esp + 0xb4]
faddp st(1)
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fstp dword [esp + 4]
fld dword [esp + 0x20]
fstp dword [esp]
call fcn.00416360
mov edx, dword [esi + 0x40]
movzx eax, ax
shr eax, 4
add eax, 0x400
add esp, 8
fld dword [eax*4 + 0x546b98]
and eax, 0xfff
fstp dword [edx + 0x34]
mov ecx, dword [esi + 0x40]
xor edx, edx
fld dword [eax*4 + 0x547b98]
fstp dword [ecx + 0x30]
mov edi, dword [esi + 0x44]
cmp edi, edx
je 0x4e19fc
lea ecx, [esi + 0x9c]
lea eax, [esp + 0x48]
mov edx, 0x57c3a0
call fcn.004037a0
mov edx, dword [esp + 0x30]
mov ecx, eax
lea eax, [esp + 0x58]
call fcn.00403dd0
mov edx, dword [eax]
mov dword [edi + 8], edx
mov ecx, dword [eax + 4]
mov dword [edi + 0xc], ecx
mov edx, dword [eax + 8]
mov eax, dword [esp + 0x24]
lea ecx, [esp + 0x90]
mov dword [edi + 0x10], edx
call fcn.0040eb50
fld dword [0x57c3a0]
fstp dword [esp + 0x18]
sub esp, 8
fld dword [0x57c3a4]
fstp dword [esp + 0x24]
fld dword [0x57c3a8]
fstp dword [esp + 0x28]
fld dword [esp + 0xa4]
fld dword [esp + 0x24]
fld st(0)
fmulp st(2)
fld dword [esp + 0x98]
fld dword [esp + 0x20]
fld st(0)
fmulp st(2)
fxch st(3)
faddp st(1)
fld dword [esp + 0xb0]
fld dword [esp + 0x28]
fld st(0)
fmulp st(2)
fxch st(2)
faddp st(1)
fstp dword [esp + 0x20]
fld dword [esp + 0xa8]
fmulp st(2)
fld dword [esp + 0x9c]
fmulp st(3)
fxch st(1)
faddp st(2)
fmul dword [esp + 0xb4]
faddp st(1)
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fstp dword [esp + 4]
fld dword [esp + 0x20]
fstp dword [esp]
call fcn.00416360
mov ecx, dword [esi + 0x44]
movzx eax, ax
shr eax, 4
add eax, 0x400
add esp, 8
fld dword [eax*4 + 0x546b98]
and eax, 0xfff
fstp dword [ecx + 0x34]
mov edx, dword [esi + 0x44]
fld dword [eax*4 + 0x547b98]
fstp dword [edx + 0x30]
mov ecx, dword [esp + 0x228]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x210]
xor ecx, esp
call fcn.0045f06e
mov esp, ebp
pop ebp
ret 4