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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffe0
push edi
push esi
push ebx
sub esp, 0x314
mov dword [esp + 0x23c], ecx
mov dword [esp + 0x2e4], edx
mov esi, eax
test esi, esi
je 0x40edf7
cmp dword [esi + 0x280], 0
je 0x40edf7
mov ecx, dword [0x872bd0]
test ecx, ecx
je 0x40edf7
movsx ebx, word [esi + 0xa2]
fild qword [esi + 0x218]
fdiv qword [0x5799f0]
fild qword [esi + 0x220]
fdiv qword [0x5799f0]
fild qword [esi + 0x228]
fdiv qword [0x5799f0]
fstp qword [esp + 0x268]
fild qword [esi + 0x230]
fdiv qword [0x5799f0]
fld dword [esi + 0x260]
fdiv qword [0x5799f0]
fstp qword [esp + 0x260]
fld dword [esi + 0x264]
fdiv qword [0x5799f0]
fstp qword [esp + 0x258]
fld dword [esi + 0x268]
fdiv qword [0x5799f0]
fstp qword [esp + 0x250]
fild qword [esi + 0x238]
fdiv qword [0x5799f0]
fstp qword [esp + 0x278]
fild qword [esi + 0x240]
fdiv qword [0x5799f0]
fstp qword [esp + 0x270]
movsx edx, byte [0x8723f4]
test edx, edx
je 0x40cfeb
cmp byte [esi + 0x10c], 2
jne 0x40cfeb
fstp st(0)
fstp st(0)
fstp st(0)
fld qword [0x5799f8]
fld qword [0x5799f8]
fld qword [0x5799f0]
fstp qword [esp + 0x268]
fld qword [0x5799f0]
fld qword [0x5799f8]
fstp qword [esp + 0x260]
fld qword [0x5799f8]
fstp qword [esp + 0x258]
fld qword [0x5799f8]
fstp qword [esp + 0x250]
mov edx, 0xff
cmp ebx, 0xff
jle 0x40cffa
mov ebx, edx
xor edi, edi
test ebx, ebx
jge 0x40d002
mov ebx, edi
cmp dword [ebp + 0x14], 0
jne 0x40d00a
xor ebx, ebx
mov edx, dword [ebp + 0x18]
test edx, edx
jne 0x40d032
movzx edx, bl
mov eax, edx
shl eax, 0x18
mov edi, edx
shl edi, 0x10
or eax, edi
mov edi, edx
shl edi, 8
or eax, edi
or eax, edx
mov dword [esp + 0x2e8], eax
jmp 0x40d086
mov edx, dword [ebp + 0x18]
cmp edx, 1
je 0x40d011
mov edx, dword [ebp + 0x18]
cmp edx, 2
je 0x40d011
mov edx, dword [ebp + 0x18]
cmp edx, 3
je 0x40d011
mov edx, dword [ebp + 0x18]
cmp edx, 5
je 0x40d011
mov edx, dword [ebp + 0x18]
cmp edx, 6
je 0x40d011
mov edx, dword [ebp + 0x18]
cmp edx, 7
je 0x40d011
mov edx, dword [ebp + 0x18]
cmp edx, 9
je 0x40d011
mov edx, dword [ebp + 0x18]
cmp edx, 0x64
je 0x40d011
mov edx, dword [ebp + 0x18]
cmp edx, 0x62
je 0x40d011
mov edx, 0xff000000
mov dword [esp + 0x2e8], edx
movzx edx, byte [esi + 0x10e]
mov dword [esp + 0x2dc], edx
movzx edi, byte [esi + 0x10f]
mov dword [esp + 0x3c], edi
fxch st(1)
fsub qword [0x579a00]
mov edx, dword [ecx]
push 0
push ecx
fstp qword [esp + 0x288]
fstp qword [esp + 0x1b0]
fstp qword [esp + 0x1a8]
call dword [edx + 0x1ac]
fld qword [esp + 0x1a0]
fld qword [esp + 0x1a8]
fld qword [esp + 0x280]
test eax, eax
jl 0x40f4ad
mov edx, dword [esp + 0x2e4]
test edx, edx
je 0x40f3fe
movsx edx, word [esi + 0xa6]
test edx, edx
jle 0x40f3fe
mov edx, dword [0x872cf0]
test edx, edx
je 0x40d149
mov ecx, dword [edx]
push 1
push edx
fstp qword [esp + 0x288]
fstp qword [esp + 0x1b0]
fstp qword [esp + 0x1a8]
call dword [ecx + 0x108]
fld qword [esp + 0x1a0]
fld qword [esp + 0x1a8]
fld qword [esp + 0x280]
test eax, eax
jl 0x40dc56
mov edx, 2
mov dword [esp + 0x2e0], edx
mov edx, edi
test edx, edx
jle 0x40f4ee
xor edi, edi
fld qword [esp + 0x278]
fchs
fld qword [esp + 0x270]
fchs
mov edx, dword [esp + 0x2dc]
lea edx, [edx + edx]
add edx, edx
shl ebx, 0x18
xor ecx, ecx
mov dword [esp + 0x1b4], ebx
mov dword [esp + 0x40], edx
mov dword [esp + 0x44], edi
fstp qword [esp + 0x290]
fstp qword [esp + 0x288]
fld qword [0x5799f0]
mov ebx, dword [esp + 0x44]
lea edx, [ebx + ebx]
mov dword [esp + 0x2d8], edx
fild dword [esi + ebx*4 + 0x198]
fld st(3)
fmul st(1)
fdiv st(2)
fld st(5)
fsub qword [0x579a00]
mov edi, dword [esp + 0x2dc]
test edi, edi
jle 0x40f3f1
xor edx, edx
fxch st(1)
fadd st(4)
mov ebx, dword [esp + 0x2e4]
lea eax, [ecx + ebx]
mov edi, dword [esp + 0x23c]
lea ebx, [ecx + edi]
lea edi, [esi + ecx]
mov dword [esp + 0x2d4], edi
mov dword [esp + 0x1b8], ebx
mov dword [esp + 0x2d0], eax
mov dword [esp + 0x2f4], edx
mov dword [esp + 0x1b0], ecx
mov dword [esp + 0x2ec], esi
fstp qword [esp + 0x2a0]
fstp qword [esp + 0x2c0]
fxch st(2)
fstp qword [esp + 0x280]
fxch st(2)
fstp qword [esp + 0x1a8]
fxch st(2)
fstp qword [esp + 0x1a0]
jmp 0x40d268
fld qword [0x5799f0]
mov edx, dword [esp + 0x2d8]
mov eax, dword [esp + 0x2ec]
fild dword [eax + edx*2 + 0x198]
fxch st(1)
mov ecx, dword [esp + 0x2f4]
lea esi, [ecx + ecx]
mov dword [esp + 0x2f0], esi
lea eax, [esi + esi]
mov dword [esp + 0x2f8], eax
mov edx, dword [esp + 0x2ec]
fild dword [edx + ecx*4 + 0x118]
fld qword [esp + 0x268]
fmul st(1)
fdivrp st(2)
fxch st(1)
fstp qword [esp + 0x298]
fld qword [0x579a08]
fld qword [esp + 0x2c0]
fmul st(1)
fnstcw word [esp + 0x30]
movzx eax, word [esp + 0x30]
or eax, 0xc00
mov dword [esp + 0x38], eax
fldcw word [esp + 0x38]
fistp qword [esp + 0x240]
fldcw word [esp + 0x30]
mov ebx, dword [esp + 0x240]
mov dword [esp + 0x308], ebx
mov esi, dword [esp + 0x244]
mov edx, esi
test edx, edx
jge 0x40d2f9
add ebx, 0xffff
adc edx, 0
shrd ebx, edx, 0x10
sar edx, 0x10
shld edx, ebx, 0x10
shl ebx, 0x10
mov eax, dword [esp + 0x308]
sub eax, ebx
mov dword [esp + 0x308], eax
sbb esi, edx
fld qword [esp + 0x280]
fmul st(1)
fnstcw word [esp + 0x30]
movzx eax, word [esp + 0x30]
or eax, 0xc00
mov dword [esp + 0x38], eax
fldcw word [esp + 0x38]
fistp qword [esp + 0x240]
fldcw word [esp + 0x30]
mov edx, dword [esp + 0x240]
mov dword [esp + 0x30c], edx
mov ecx, dword [esp + 0x244]
mov dword [esp + 0x2fc], ecx
test ecx, ecx
jge 0x40d36c
add edx, 0xffff
adc ecx, 0
shrd edx, ecx, 0x10
sar ecx, 0x10
shld ecx, edx, 0x10
shl edx, 0x10
mov ebx, dword [esp + 0x30c]
sub ebx, edx
mov dword [esp + 0x30c], ebx
mov eax, dword [esp + 0x2fc]
sbb eax, ecx
mov dword [esp + 0x2fc], eax
fld qword [esp + 0x298]
fadd qword [esp + 0x2c0]
fst qword [esp + 0x298]
fld st(1)
fmulp st(1)
fnstcw word [esp + 0x30]
movzx eax, word [esp + 0x30]
or eax, 0xc00
mov dword [esp + 0x38], eax
fldcw word [esp + 0x38]
fistp qword [esp + 0x240]
fldcw word [esp + 0x30]
mov edx, dword [esp + 0x240]
mov dword [esp + 0x300], edx
mov ebx, dword [esp + 0x244]
mov ecx, ebx
test ecx, ecx
jge 0x40d3f8
add edx, 0xffff
adc ecx, 0
shrd edx, ecx, 0x10
sar ecx, 0x10
shld ecx, edx, 0x10
shl edx, 0x10
mov eax, dword [esp + 0x300]
sub eax, edx
mov dword [esp + 0x300], eax
sbb ebx, ecx
fmul qword [esp + 0x2a0]
fnstcw word [esp + 0x30]
movzx eax, word [esp + 0x30]
or eax, 0xc00
mov dword [esp + 0x38], eax
fldcw word [esp + 0x38]
fistp qword [esp + 0x240]
fldcw word [esp + 0x30]
mov edx, dword [esp + 0x240]
mov ecx, dword [esp + 0x244]
mov dword [esp + 0x304], edx
mov eax, ecx
test eax, eax
jge 0x40d46d
mov edi, edx
add edi, 0xffff
mov dword [esp + 0x304], edi
adc eax, 0
mov edi, dword [esp + 0x304]
shrd edi, eax, 0x10
sar eax, 0x10
shld eax, edi, 0x10
shl edi, 0x10
sub edx, edi
sbb ecx, eax
mov eax, dword [esp + 0x308]
mov dword [esp + 0x248], eax
mov dword [esp + 0x24c], esi
fild qword [esp + 0x248]
fmul qword [0x579a10]
fdiv st(1)
fmul qword [0x579a18]
fst qword [esp + 0x2b8]
mov esi, dword [esp + 0x30c]
mov dword [esp + 0x248], esi
mov eax, dword [esp + 0x2fc]
mov dword [esp + 0x24c], eax
fild qword [esp + 0x248]
fmul qword [0x579a10]
fdiv st(3)
fmul qword [0x579a18]
fstp qword [esp + 0x2b0]
mov eax, dword [esp + 0x300]
mov dword [esp + 0x248], eax
mov dword [esp + 0x24c], ebx
fild qword [esp + 0x248]
fmul qword [0x579a10]
fdivrp st(2)
fxch st(1)
fmul qword [0x579a18]
fstp qword [esp + 0x2a8]
mov dword [esp + 0x248], edx
mov dword [esp + 0x24c], ecx
fild qword [esp + 0x248]
fmul qword [0x579a10]
fdivrp st(2)
fxch st(1)
fmul qword [0x579a18]
xor ecx, ecx
fld qword [esp + 0x2a0]
fstp qword [esp + 0xc]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], ecx
fld qword [0x5799f8]
faddp st(2)
fxch st(1)
fstp qword [esp + 0x20]
fld qword [0x579a20]
fadd st(1)
fstp qword [esp + 0x28]
lea eax, [esp + 0x4c]
fld qword [esp + 0x2c0]
mov edx, dword [esp + 0x2e8]
fxch st(1)
fstp qword [esp + 0x2c8]
call fcn.0040f700
fld qword [esp + 0x2c8]
fld qword [0x579a20]
fld qword [esp + 0x2a0]
fstp qword [esp + 0xc]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], ecx
fld qword [esp + 0x2a8]
fadd st(1)
fstp qword [esp + 0x20]
faddp st(1)
fstp qword [esp + 0x28]
lea eax, [esp + 0xa0]
fld qword [esp + 0x298]
mov edx, dword [esp + 0x2e8]
call fcn.0040f700
fld qword [0x5799f8]
xor ecx, ecx
fld qword [esp + 0x280]
fstp qword [esp + 0xc]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], ecx
fld qword [esp + 0x2b8]
fadd st(1)
fstp qword [esp + 0x20]
fadd qword [esp + 0x2b0]
fstp qword [esp + 0x28]
lea eax, [esp + 0xf4]
fld qword [esp + 0x2c0]
mov edx, dword [esp + 0x2e8]
call fcn.0040f700
xor ecx, ecx
fld qword [esp + 0x280]
fstp qword [esp + 0xc]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], ecx
fld qword [esp + 0x2a8]
fadd qword [0x579a20]
fstp qword [esp + 0x20]
fld qword [esp + 0x2b0]
fadd qword [0x5799f8]
fstp qword [esp + 0x28]
lea eax, [esp + 0x148]
fld qword [esp + 0x298]
mov edx, dword [esp + 0x2e8]
call fcn.0040f700
xor ecx, ecx
mov dword [esp + 0x1f4], ecx
mov dword [esp + 0x1f0], ecx
mov dword [esp + 0x1ec], ecx
mov dword [esp + 0x1e8], ecx
mov dword [esp + 0x1e0], ecx
mov dword [esp + 0x1dc], ecx
mov dword [esp + 0x1d8], ecx
mov dword [esp + 0x1d4], ecx
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1c8], ecx
mov dword [esp + 0x1c4], ecx
mov dword [esp + 0x1c0], ecx
mov edx, 0x3f800000
mov dword [esp + 0x1f8], edx
mov dword [esp + 0x1e4], edx
mov dword [esp + 0x1d0], edx
mov dword [esp + 0x1bc], edx
mov dword [esp + 0x234], ecx
mov dword [esp + 0x230], ecx
mov dword [esp + 0x22c], ecx
mov dword [esp + 0x228], ecx
mov dword [esp + 0x220], ecx
mov dword [esp + 0x21c], ecx
mov dword [esp + 0x218], ecx
mov dword [esp + 0x214], ecx
mov dword [esp + 0x20c], ecx
mov dword [esp + 0x208], ecx
mov dword [esp + 0x204], ecx
mov dword [esp + 0x200], ecx
mov dword [esp + 0x238], edx
mov dword [esp + 0x224], edx
mov dword [esp + 0x210], edx
mov dword [esp + 0x1fc], edx
fld qword [esp + 0x290]
fstp dword [esp + 8]
mov dword [esp + 0xc], ecx
lea eax, [esp + 0x4c]
fld qword [esp + 0x288]
call fcn.0040f754
fld qword [0x579a28]
add esp, 0xfffffff0
lea eax, [esp + 0x20c]
mov dword [esp], eax
fld qword [esp + 0x270]
fmul st(1)
fstp dword [esp + 4]
fld qword [esp + 0x268]
fmul st(1)
fstp dword [esp + 8]
fmul qword [esp + 0x260]
fstp dword [esp + 0xc]
call fcn.004b46e5
xor ebx, ebx
lea eax, [esp + 0x1bc]
push dword [esp + ebx + 0x54]
push dword [esp + ebx + 0x54]
push dword [esp + ebx + 0x54]
push eax
call fcn.004b4253
lea edx, [esp + 0x1bc]
lea eax, [esp + 0x1fc]
push eax
push edx
push edx
call fcn.004b38c2
mov eax, dword [esp + 0x1ec]
mov dword [esp + ebx + 0x4c], eax
mov edx, dword [esp + 0x1f0]
mov dword [esp + ebx + 0x50], edx
mov ecx, dword [esp + 0x1f4]
mov dword [esp + ebx + 0x54], ecx
add ebx, 0x54
cmp ebx, 0x150
jl 0x40d7c8
fld qword [esp + 0x270]
fstp dword [esp + 8]
mov dword [esp + 0xc], 0
lea eax, [esp + 0x4c]
fld qword [esp + 0x278]
call fcn.0040f754
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 0
push 2
push eax
call dword [edx + 0x104]
test eax, eax
jne 0x40f3d0
mov eax, dword [esp + 0x2e4]
test eax, eax
je 0x40f295
mov eax, dword [esp + 0x2ec]
movsx edx, word [eax + 0xa6]
test edx, edx
jle 0x40f295
mov edx, dword [0x872bd0]
mov eax, dword [esp + 0x2f8]
add eax, dword [esp + 0x2d4]
mov dword [esp + 0x2f8], eax
mov ecx, dword [edx]
push dword [eax + 0x280]
push 0
push edx
call dword [ecx + 0x104]
test eax, eax
jne 0x40f274
mov ecx, dword [0x872bd0]
mov ebx, dword [ecx]
mov eax, dword [esp + 0x2d0]
mov edx, dword [esp + 0x2f0]
push dword [eax + edx*2 + 0x280]
push 1
push ecx
call dword [ebx + 0x104]
test eax, eax
jne 0x40f253
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x40d947
mov eax, dword [ebp + 0x18]
cmp eax, 1
je 0x40eba2
mov eax, dword [ebp + 0x18]
cmp eax, 2
je 0x40e988
mov eax, dword [ebp + 0x18]
cmp eax, 3
je 0x40e671
mov eax, dword [ebp + 0x18]
cmp eax, 5
je 0x40e391
mov eax, dword [ebp + 0x18]
cmp eax, 6
je 0x40e173
mov eax, dword [ebp + 0x18]
cmp eax, 7
je 0x40dea4
mov eax, dword [ebp + 0x18]
cmp eax, 9
je 0x40dc97
jmp 0x40dbd9
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, dword [esp + 0x1b4]
push eax
push 0x3c
push edx
call dword [ecx + 0xe4]
test eax, eax
jne 0x40f232
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 1
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40d992
push 0x87cd60
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 2
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40d9c0
push 0x87cd78
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 1
push 2
push eax
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40d9ee
push 0x87cd60
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 2
push eax
push eax
push 1
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40da1c
push 0x87cd78
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 1
push eax
push eax
push 2
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40da4a
push 0x87cd90
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 4
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40da78
push 0x87cd90
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 5
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40daa2
push 0x87d0e4
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 3
push 6
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40dacc
push 0x87d0fc
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 4
push eax
push eax
push 1
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40dafa
push 0x87cd90
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 5
push 1
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40db24
push 0x87d0e4
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 3
push 6
push 1
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40db4e
push 0x87d0fc
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 1
push eax
push 4
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40db7c
push 0x87cd90
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 5
push 0x13
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40f211
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 6
push 0x14
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40f1f0
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 1
push 0xab
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40f1cf
mov eax, dword [ebp + 0x18]
cmp eax, 1
je 0x40eba2
mov eax, dword [esp + 0x2e0]
cmp eax, 1
je 0x40f169
cmp eax, 2
je 0x40ef92
cmp eax, 3
je 0x40ee5c
mov edx, dword [0x872bd0]
test edx, edx
je 0x40ee3b
mov ecx, dword [edx]
lea eax, [esp + 0x4c]
push 0x54
push eax
push 2
push 5
push edx
call dword [ecx + 0x14c]
test eax, eax
jne 0x40ee1a
fld qword [esp + 0x298]
fstp qword [esp + 0x2c0]
mov eax, dword [esp + 0x2f4]
inc eax
mov dword [esp + 0x2f4], eax
mov edx, dword [esp + 0x2dc]
cmp eax, edx
jl 0x40d24b
jmp 0x40ed95
push 0x87d09c
push 0x8782b0
fstp qword [esp + 0x288]
fstp qword [esp + 0x1b0]
fstp qword [esp + 0x1a8]
call fcn.0046ccf4
fld qword [esp + 0x1a8]
fld qword [esp + 0x1b0]
fld qword [esp + 0x288]
add esp, 8
jmp 0x40d149
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 4
push 1
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40dcc1
push 0x87cd60
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 2
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40dcef
push 0x87cd78
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
xor eax, eax
push eax
push 3
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40dd1a
push 0x87d12c
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 1
push eax
push eax
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40dd47
push 0x87cd60
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 4
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40dd75
push 0x87cd90
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 5
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40dd9f
push 0x87d0e4
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
xor eax, eax
push eax
push 6
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40ddca
push 0x87d0fc
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 1
push eax
push 4
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40ddf8
push 0x87cd90
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 0xa
push 0x13
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40de83
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 4
push 0x14
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40de62
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 1
push 0xab
push eax
call dword [edx + 0xe4]
test eax, eax
je 0x40dbd9
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 0xffffffffffffffff
push 0x3c
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40e152
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 4
push 1
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40dee8
push 0x87cd60
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 2
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40df16
push 0x87cd78
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
xor eax, eax
push eax
push 3
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40df41
push 0x87d12c
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 1
push 0x10
push eax
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40df6f
push 0x87cd60
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 1
push eax
push 2
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40df9d
push 0x87cd78
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 3
push eax
push eax
push 1
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40dfcb
push 0x87d12c
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 4
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40dff9
push 0x87cd90
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 5
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40e023
push 0x87d0e4
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
xor eax, eax
push eax
push 6
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e04e
push 0x87d0fc
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 4
push 1
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40e078
push 0x87cd90
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 1
push eax
push 5
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e0a6
push 0x87d0e4
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 0x13
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40e131
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 0x14
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40e110
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 4
push 0xab
push eax
call dword [edx + 0xe4]
test eax, eax
je 0x40dbd9
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 4
push 1
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40e19d
push 0x87cd60
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 2
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e1cb
push 0x87cd78
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
xor eax, eax
push eax
push 3
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e1f6
push 0x87cd78
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 1
push eax
push eax
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e223
push 0x87cd60
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 4
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e251
push 0x87cd90
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 5
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40e27b
push 0x87d0e4
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
xor eax, eax
push eax
push 6
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e2a6
push 0x87d0fc
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 1
push eax
push 4
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e2d4
push 0x87cd90
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 0x13
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40e370
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 0x14
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40e34f
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 5
push 0xab
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40e32e
mov eax, dword [ebp + 0x18]
cmp eax, 7
je 0x40dea4
jmp 0x40dbd9
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push dword [0x872c10]
push 1
push eax
call dword [edx + 0x104]
test eax, eax
jne 0x40e650
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 4
push 1
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40e3d9
push 0x87cd60
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 2
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e407
push 0x87cd78
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
xor eax, eax
push eax
push 3
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e432
push 0x87cd78
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 1
push 0x10
push eax
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e460
push 0x87cd60
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 1
push eax
push 2
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e48e
push 0x87cd60
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 3
push 1
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40e4b8
push 0x87cd60
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 4
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e4e6
push 0x87cd90
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 5
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40e510
push 0x87d0e4
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
xor eax, eax
push eax
push 6
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e53b
push 0x87d0fc
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 4
push 1
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40e565
push 0x87cd90
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 1
push eax
push 5
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e593
push 0x87cd90
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 0xa
push 0x13
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40e62f
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 0x14
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40e60e
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 1
push 0xab
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40e5ed
mov eax, dword [ebp + 0x18]
cmp eax, 6
je 0x40e173
jmp 0x40dbd9
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87cd30
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push dword [0x872c0c]
push 1
push eax
call dword [edx + 0x104]
test eax, eax
jne 0x40e967
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 0xffffffffffffffff
push 0x3c
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40e946
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 4
push 1
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40e6d3
push 0x87cd60
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
xor eax, eax
push eax
push 2
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e6fe
push 0x87cd78
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 3
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40e728
push 0x87d12c
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 1
push 0x10
push eax
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e756
push 0x87cd60
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 1
push eax
push 2
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e784
push 0x87cd78
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 3
push 1
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40e7ae
push 0x87d12c
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 4
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e7dc
push 0x87cd90
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
xor eax, eax
push eax
push 5
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e807
push 0x87d0e4
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 6
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40e831
push 0x87d0fc
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 4
push 1
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40e85b
push 0x87cd90
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 1
push eax
push 5
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e889
push 0x87d0e4
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 1
push 0x13
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40e925
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 3
push 0x14
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40e904
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 1
push 0xab
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40e8e3
mov eax, dword [ebp + 0x18]
cmp eax, 5
je 0x40e391
jmp 0x40dbd9
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87cd30
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 4
push 1
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40e9b2
push 0x87d114
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
xor eax, eax
push eax
push 2
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e9dd
push 0x87cd78
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 3
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40ea07
push 0x87d12c
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 1
push eax
push eax
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40ea34
push 0x87cd60
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 4
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40ea62
push 0x87d144
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
xor eax, eax
push eax
push 5
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40ea8d
push 0x87d0e4
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 6
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40eab7
push 0x87d0fc
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 1
push eax
push 4
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40eae5
push 0x87cd90
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 5
push 0x13
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40eb81
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 0x14
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40eb60
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 3
push 0xab
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40eb3f
mov eax, dword [ebp + 0x18]
cmp eax, 3
je 0x40e671
jmp 0x40dbd9
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 1
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40ebcc
push 0x87cd60
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 2
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40ebfa
push 0x87cd78
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 1
push eax
push eax
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40ec27
push 0x87cd60
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 4
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40ec55
push 0x87cd90
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 5
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40ec7f
push 0x87d0e4
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
xor eax, eax
push eax
push 6
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40ecaa
push 0x87d0fc
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov edx, dword [0x872bd0]
mov ecx, dword [edx]
mov eax, 1
push eax
push 4
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40ecd8
push 0x87cd90
push 0x8782b0
call fcn.0046ccf4
add esp, 8
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 5
push 0x13
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40ed74
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 2
push 0x14
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40ed53
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 1
push 0xab
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40ed32
mov eax, dword [ebp + 0x18]
cmp eax, 2
je 0x40e988
jmp 0x40dbd9
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov ecx, dword [esp + 0x1b0]
mov esi, dword [esp + 0x2ec]
fld qword [esp + 0x2a0]
fld qword [esp + 0x1a8]
fld qword [esp + 0x1a0]
fxch st(2)
add ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x44]
inc edx
mov dword [esp + 0x44], edx
mov ebx, dword [esp + 0x3c]
cmp edx, ebx
jl 0x40d1a1
fstp st(1)
fstp st(0)
fstp st(0)
mov edx, dword [0x872cf0]
test edx, edx
je 0x40ee06
mov eax, dword [esp + 0x2e0]
test eax, eax
jle 0x40edf7
mov eax, dword [edx]
push edx
call dword [eax + 0x110]
xor eax, eax
add esp, 0x314
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87d1d8
push 0x8782b0
call fcn.0046ccf4
add esp, 8
jmp 0x40edf7
push 0x87d1b0
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87d1c4
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov edx, dword [0x872cf0]
mov ecx, dword [edx]
mov eax, dword [esp + 0x2f8]
push dword [eax + 0x280]
push 0x87d15c
push edx
call dword [ecx + 0xd0]
mov eax, dword [esp + 0x23c]
test eax, eax
je 0x40eeb1
mov ecx, dword [0x872cf0]
mov ebx, dword [ecx]
mov eax, dword [esp + 0x1b8]
mov edx, dword [esp + 0x2f0]
push dword [eax + edx*2 + 0x280]
push 0x87d168
push ecx
call dword [ebx + 0xd0]
mov edx, dword [esp + 0x2ec]
movsx eax, word [edx + 0xa2]
mov dword [esp + 0x248], eax
fild dword [esp + 0x248]
fmul qword [0x579a30]
movsx ecx, word [edx + 0x27c]
mov dword [esp + 0x248], ecx
fild dword [esp + 0x248]
fmul qword [0x579a30]
fstp qword [esp + 0x2a8]
mov ebx, dword [0x872cf0]
mov esi, dword [ebx]
add esp, 0xfffffff4
mov dword [esp], ebx
mov dword [esp + 4], 0x87d174
fstp dword [esp + 8]
call dword [esi + 0x78]
test eax, eax
jl 0x40ef7e
mov eax, dword [0x872cf0]
mov edx, dword [eax]
add esp, 0xfffffff4
mov dword [esp], eax
mov dword [esp + 4], 0x87d198
fld qword [esp + 0x2b4]
fstp dword [esp + 8]
call dword [edx + 0x78]
test eax, eax
jl 0x40ef6a
mov eax, dword [0x872cf0]
mov edx, dword [eax]
push eax
call dword [edx + 0x10c]
test eax, eax
jge 0x40dbfb
push 0x87cdfc
push 0x8782b0
call fcn.0046ccf4
add esp, 8
jmp 0x40dbfb
push 0x87d180
push 0x8782b0
call fcn.0046ccf4
add esp, 8
jmp 0x40ef3d
push 0x87d180
push 0x8782b0
call fcn.0046ccf4
add esp, 8
jmp 0x40ef16
mov edx, dword [0x872cf0]
mov ecx, dword [edx]
mov eax, dword [esp + 0x2f8]
push dword [eax + 0x280]
push 0x87d15c
push edx
call dword [ecx + 0xd0]
mov edx, eax
mov eax, dword [esp + 0x2e4]
test eax, eax
je 0x40efeb
mov ecx, dword [0x872cf0]
mov ebx, dword [ecx]
mov eax, dword [esp + 0x2d0]
mov edx, dword [esp + 0x2f0]
push dword [eax + edx*2 + 0x280]
push 0x87d168
push ecx
call dword [ebx + 0xd0]
mov edx, eax
test edx, edx
jl 0x40f152
mov ecx, dword [esp + 0x2ec]
movsx eax, word [ecx + 0xa2]
mov dword [esp + 0x248], eax
fild dword [esp + 0x248]
fmul qword [0x579a30]
movsx edx, word [ecx + 0xa6]
mov dword [esp + 0x248], edx
fild dword [esp + 0x248]
fst dword [esp + 0x48]
fld qword [0x579a38]
movsx ebx, word [ecx + 0xa4]
mov dword [esp + 0x248], ebx
fild dword [esp + 0x248]
fld st(1)
fdivrp st(3)
fxch st(2)
fadd qword [0x579a40]
fdivp st(1)
fdivp st(1)
fmul qword [0x579a30]
mov esi, dword [0x872cf0]
mov edi, dword [esi]
add esp, 0xfffffff4
mov dword [esp], esi
mov dword [esp + 4], 0x87d174
fxch st(1)
fstp dword [esp + 8]
fstp qword [esp + 0x2d4]
call dword [edi + 0x78]
fld qword [esp + 0x2c8]
test eax, eax
jl 0x40f12d
mov eax, dword [0x872cf0]
mov edx, dword [eax]
add esp, 0xfffffff4
mov dword [esp], eax
mov dword [esp + 4], 0x87d198
fstp dword [esp + 8]
call dword [edx + 0x78]
test eax, eax
jl 0x40f119
mov eax, dword [0x872cf0]
mov edx, dword [eax]
add esp, 0xfffffff4
mov dword [esp], eax
mov dword [esp + 4], 0x87d1a4
fld dword [esp + 0x54]
fstp dword [esp + 8]
call dword [edx + 0x78]
test eax, eax
jl 0x40f105
mov eax, dword [0x872cf0]
mov edx, dword [eax]
push eax
call dword [edx + 0x10c]
test eax, eax
jge 0x40dbfb
push 0x87cdfc
push 0x8782b0
call fcn.0046ccf4
add esp, 8
jmp 0x40dbfb
push 0x87d180
push 0x8782b0
call fcn.0046ccf4
add esp, 8
jmp 0x40f0d8
push 0x87d180
push 0x8782b0
call fcn.0046ccf4
add esp, 8
jmp 0x40f0b4
push 0x87d180
push 0x8782b0
fstp qword [esp + 0x2d0]
call fcn.0046ccf4
fld qword [esp + 0x2d0]
add esp, 8
jmp 0x40f094
push 0x87cdb4
push 0x8782b0
call fcn.0046ccf4
add esp, 8
jmp 0x40eff3
mov edx, dword [0x872cf0]
mov ecx, dword [edx]
mov eax, dword [esp + 0x2f8]
push dword [eax + 0x280]
push 0x87d15c
push edx
call dword [ecx + 0xd0]
test eax, eax
jl 0x40f1bb
mov eax, dword [0x872cf0]
mov edx, dword [eax]
push eax
call dword [edx + 0x10c]
test eax, eax
jge 0x40dbfb
push 0x87cdfc
push 0x8782b0
call fcn.0046ccf4
add esp, 8
jmp 0x40dbfb
push 0x87cdb4
push 0x8782b0
call fcn.0046ccf4
add esp, 8
jmp 0x40f18e
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87d0cc
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87cd30
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87cd30
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov eax, dword [esp + 0x23c]
test eax, eax
je 0x40f344
mov edx, dword [0x872bd0]
mov eax, dword [esp + 0x2f8]
add eax, dword [esp + 0x2d4]
mov dword [esp + 0x2f8], eax
mov ecx, dword [edx]
push dword [eax + 0x280]
push 0
push edx
call dword [ecx + 0x104]
test eax, eax
jne 0x40f323
mov ecx, dword [0x872bd0]
mov ebx, dword [ecx]
mov eax, dword [esp + 0x1b8]
mov edx, dword [esp + 0x2f0]
push dword [eax + edx*2 + 0x280]
push 1
push ecx
call dword [ebx + 0x104]
test eax, eax
je 0x40d8e7
push 0x87cd30
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87cd30
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov edx, dword [0x872bd0]
mov eax, dword [esp + 0x2f8]
add eax, dword [esp + 0x2d4]
mov dword [esp + 0x2f8], eax
mov ecx, dword [edx]
push dword [eax + 0x280]
push 0
push edx
call dword [ecx + 0x104]
test eax, eax
jne 0x40f3af
mov eax, dword [0x872bd0]
mov edx, dword [eax]
push 0
push 1
push eax
call dword [edx + 0x104]
test eax, eax
je 0x40d8e7
push 0x87cd30
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87cd30
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x87cd30
push 0x8782b0
call fcn.0046ccf4
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
fstp st(3)
fstp st(1)
fstp st(1)
faddp st(1)
jmp 0x40edba
mov edx, dword [esp + 0x23c]
test edx, edx
je 0x40f49f
mov edx, dword [0x872cf0]
test edx, edx
je 0x40f450
mov ecx, dword [edx]
push 0
push edx
fstp qword [esp + 0x288]
fstp qword [esp + 0x1b0]
fstp qword [esp + 0x1a8]
call dword [ecx + 0x108]
fld qword [esp + 0x1a0]
fld qword [esp + 0x1a8]
fld qword [esp + 0x280]
test eax, eax
jl 0x40f461
mov edx, 3
mov dword [esp + 0x2e0], edx
jmp 0x40d155
push 0x87d0b4
push 0x8782b0
fstp qword [esp + 0x288]
fstp qword [esp + 0x1b0]
fstp qword [esp + 0x1a8]
call fcn.0046ccf4
fld qword [esp + 0x1a8]
fld qword [esp + 0x1b0]
fld qword [esp + 0x288]
add esp, 8
jmp 0x40f450
xor edx, edx
mov dword [esp + 0x2e0], edx
jmp 0x40d155
push 0x87d080
push 0x8782b0
fstp qword [esp + 0x288]
fstp qword [esp + 0x1b0]
fstp qword [esp + 0x1a8]
call fcn.0046ccf4
fld qword [esp + 0x1a8]
fld qword [esp + 0x1b0]
fld qword [esp + 0x288]
add esp, 8
jmp 0x40d0e4
fstp st(1)
fstp st(0)
fstp st(0)
jmp 0x40edd9