Function at 0x40d958
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 0x40f8a3
cmp dword [esi + 0x280], 0
je 0x40f8a3
mov ecx, dword [0x834be8]
test ecx, ecx
je 0x40f8a3
movsx ebx, word [esi + 0xa2]
fild qword [esi + 0x218]
fdiv qword [0x5799d0]
fild qword [esi + 0x220]
fdiv qword [0x5799d0]
fild qword [esi + 0x228]
fdiv qword [0x5799d0]
fstp qword [esp + 0x268]
fild qword [esi + 0x230]
fdiv qword [0x5799d0]
fld dword [esi + 0x260]
fdiv qword [0x5799d0]
fstp qword [esp + 0x260]
fld dword [esi + 0x264]
fdiv qword [0x5799d0]
fstp qword [esp + 0x258]
fld dword [esi + 0x268]
fdiv qword [0x5799d0]
fstp qword [esp + 0x250]
fild qword [esi + 0x238]
fdiv qword [0x5799d0]
fstp qword [esp + 0x278]
fild qword [esi + 0x240]
fdiv qword [0x5799d0]
fstp qword [esp + 0x270]
movsx edx, byte [0x834470]
test edx, edx
je 0x40da97
cmp byte [esi + 0x10c], 2
jne 0x40da97
fstp st(0)
fstp st(0)
fstp st(0)
fld qword [0x5799d8]
fld qword [0x5799d8]
fld qword [0x5799d0]
fstp qword [esp + 0x268]
fld qword [0x5799d0]
fld qword [0x5799d8]
fstp qword [esp + 0x260]
fld qword [0x5799d8]
fstp qword [esp + 0x258]
fld qword [0x5799d8]
fstp qword [esp + 0x250]
mov edx, 0xff
cmp ebx, 0xff
jle 0x40daa6
mov ebx, edx
xor edi, edi
test ebx, ebx
jge 0x40daae
mov ebx, edi
cmp dword [ebp + 0x14], 0
jne 0x40dab6
xor ebx, ebx
mov edx, dword [ebp + 0x18]
test edx, edx
jne 0x40dade
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 0x40db32
mov edx, dword [ebp + 0x18]
cmp edx, 1
je 0x40dabd
mov edx, dword [ebp + 0x18]
cmp edx, 2
je 0x40dabd
mov edx, dword [ebp + 0x18]
cmp edx, 3
je 0x40dabd
mov edx, dword [ebp + 0x18]
cmp edx, 5
je 0x40dabd
mov edx, dword [ebp + 0x18]
cmp edx, 6
je 0x40dabd
mov edx, dword [ebp + 0x18]
cmp edx, 7
je 0x40dabd
mov edx, dword [ebp + 0x18]
cmp edx, 9
je 0x40dabd
mov edx, dword [ebp + 0x18]
cmp edx, 0x64
je 0x40dabd
mov edx, dword [ebp + 0x18]
cmp edx, 0x62
je 0x40dabd
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 [0x5799e0]
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 0x40ff59
mov edx, dword [esp + 0x2e4]
test edx, edx
je 0x40feaa
movsx edx, word [esi + 0xa6]
test edx, edx
jle 0x40feaa
mov edx, dword [0x834d08]
test edx, edx
je 0x40dbf5
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 0x40e702
mov edx, 2
mov dword [esp + 0x2e0], edx
mov edx, edi
test edx, edx
jle 0x40ff9a
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 [0x5799d0]
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 [0x5799e0]
mov edi, dword [esp + 0x2dc]
test edi, edi
jle 0x40fe9d
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 0x40dd14
fld qword [0x5799d0]
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 [0x5799e8]
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 0x40dda5
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 0x40de18
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 0x40dea4
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 0x40df19
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 [0x5799f0]
fdiv st(1)
fmul qword [0x5799f8]
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 [0x5799f0]
fdiv st(3)
fmul qword [0x5799f8]
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 [0x5799f0]
fdivrp st(2)
fxch st(1)
fmul qword [0x5799f8]
fstp qword [esp + 0x2a8]
mov dword [esp + 0x248], edx
mov dword [esp + 0x24c], ecx
fild qword [esp + 0x248]
fmul qword [0x5799f0]
fdivrp st(2)
fxch st(1)
fmul qword [0x5799f8]
xor ecx, ecx
fld qword [esp + 0x2a0]
fstp qword [esp + 0xc]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], ecx
fld qword [0x5799d8]
faddp st(2)
fxch st(1)
fstp qword [esp + 0x20]
fld qword [0x579a00]
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.00410198
fld qword [esp + 0x2c8]
fld qword [0x579a00]
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.00410198
fld qword [0x5799d8]
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.00410198
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 [0x579a00]
fstp qword [esp + 0x20]
fld qword [esp + 0x2b0]
fadd qword [0x5799d8]
fstp qword [esp + 0x28]
lea eax, [esp + 0x148]
fld qword [esp + 0x298]
mov edx, dword [esp + 0x2e8]
call fcn.00410198
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.004101ec
fld qword [0x579a08]
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.004b4fc5
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.004b4b33
lea edx, [esp + 0x1bc]
lea eax, [esp + 0x1fc]
push eax
push edx
push edx
call fcn.004b41a2
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 0x40e274
fld qword [esp + 0x270]
fstp dword [esp + 8]
mov dword [esp + 0xc], 0
lea eax, [esp + 0x4c]
fld qword [esp + 0x278]
call fcn.004101ec
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 0
push 2
push eax
call dword [edx + 0x104]
test eax, eax
jne 0x40fe7c
mov eax, dword [esp + 0x2e4]
test eax, eax
je 0x40fd41
mov eax, dword [esp + 0x2ec]
movsx edx, word [eax + 0xa6]
test edx, edx
jle 0x40fd41
mov edx, dword [0x834be8]
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 0x40fd20
mov ecx, dword [0x834be8]
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 0x40fcff
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x40e3f3
mov eax, dword [ebp + 0x18]
cmp eax, 1
je 0x40f64e
mov eax, dword [ebp + 0x18]
cmp eax, 2
je 0x40f434
mov eax, dword [ebp + 0x18]
cmp eax, 3
je 0x40f11d
mov eax, dword [ebp + 0x18]
cmp eax, 5
je 0x40ee3d
mov eax, dword [ebp + 0x18]
cmp eax, 6
je 0x40ec1f
mov eax, dword [ebp + 0x18]
cmp eax, 7
je 0x40e950
mov eax, dword [ebp + 0x18]
cmp eax, 9
je 0x40e743
jmp 0x40e685
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, dword [esp + 0x1b4]
push eax
push 0x3c
push edx
call dword [ecx + 0xe4]
test eax, eax
jne 0x40fcde
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 1
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40e43e
push 0x83f020
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 2
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e46c
push 0x83f038
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 1
push 2
push eax
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e49a
push 0x83f020
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 2
push eax
push eax
push 1
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e4c8
push 0x83f038
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 1
push eax
push eax
push 2
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e4f6
push 0x83f050
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 4
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e524
push 0x83f050
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 5
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40e54e
push 0x83f3a4
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 3
push 6
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40e578
push 0x83f3bc
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 4
push eax
push eax
push 1
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e5a6
push 0x83f050
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 5
push 1
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40e5d0
push 0x83f3a4
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 3
push 6
push 1
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40e5fa
push 0x83f3bc
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 1
push eax
push 4
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e628
push 0x83f050
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 5
push 0x13
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40fcbd
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 6
push 0x14
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40fc9c
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 1
push 0xab
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40fc7b
mov eax, dword [ebp + 0x18]
cmp eax, 1
je 0x40f64e
mov eax, dword [esp + 0x2e0]
cmp eax, 1
je 0x40fc15
cmp eax, 2
je 0x40fa3e
cmp eax, 3
je 0x40f908
mov edx, dword [0x834be8]
test edx, edx
je 0x40f8e7
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 0x40f8c6
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 0x40dcf7
jmp 0x40f841
push 0x83f35c
push 0x83a2b0
fstp qword [esp + 0x288]
fstp qword [esp + 0x1b0]
fstp qword [esp + 0x1a8]
call fcn.0046d5d8
fld qword [esp + 0x1a8]
fld qword [esp + 0x1b0]
fld qword [esp + 0x288]
add esp, 8
jmp 0x40dbf5
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 4
push 1
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40e76d
push 0x83f020
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 2
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e79b
push 0x83f038
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
xor eax, eax
push eax
push 3
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e7c6
push 0x83f3ec
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 1
push eax
push eax
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e7f3
push 0x83f020
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 4
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e821
push 0x83f050
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 5
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40e84b
push 0x83f3a4
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
xor eax, eax
push eax
push 6
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e876
push 0x83f3bc
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 1
push eax
push 4
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e8a4
push 0x83f050
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 0xa
push 0x13
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40e92f
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 4
push 0x14
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40e90e
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 1
push 0xab
push eax
call dword [edx + 0xe4]
test eax, eax
je 0x40e685
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 0xffffffffffffffff
push 0x3c
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40ebfe
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 4
push 1
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40e994
push 0x83f020
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 2
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e9c2
push 0x83f038
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
xor eax, eax
push eax
push 3
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40e9ed
push 0x83f3ec
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 1
push 0x10
push eax
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40ea1b
push 0x83f020
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 1
push eax
push 2
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40ea49
push 0x83f038
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 3
push eax
push eax
push 1
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40ea77
push 0x83f3ec
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 4
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40eaa5
push 0x83f050
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 5
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40eacf
push 0x83f3a4
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
xor eax, eax
push eax
push 6
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40eafa
push 0x83f3bc
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 4
push 1
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40eb24
push 0x83f050
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 1
push eax
push 5
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40eb52
push 0x83f3a4
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 0x13
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40ebdd
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 0x14
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40ebbc
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 4
push 0xab
push eax
call dword [edx + 0xe4]
test eax, eax
je 0x40e685
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 4
push 1
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40ec49
push 0x83f020
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 2
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40ec77
push 0x83f038
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
xor eax, eax
push eax
push 3
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40eca2
push 0x83f038
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 1
push eax
push eax
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40eccf
push 0x83f020
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 4
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40ecfd
push 0x83f050
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 5
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40ed27
push 0x83f3a4
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
xor eax, eax
push eax
push 6
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40ed52
push 0x83f3bc
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 1
push eax
push 4
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40ed80
push 0x83f050
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 0x13
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40ee1c
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 0x14
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40edfb
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 5
push 0xab
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40edda
mov eax, dword [ebp + 0x18]
cmp eax, 7
je 0x40e950
jmp 0x40e685
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov eax, dword [0x834be8]
mov edx, dword [eax]
push dword [0x834c28]
push 1
push eax
call dword [edx + 0x104]
test eax, eax
jne 0x40f0fc
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 4
push 1
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40ee85
push 0x83f020
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 2
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40eeb3
push 0x83f038
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
xor eax, eax
push eax
push 3
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40eede
push 0x83f038
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 1
push 0x10
push eax
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40ef0c
push 0x83f020
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 1
push eax
push 2
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40ef3a
push 0x83f020
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 3
push 1
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40ef64
push 0x83f020
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 4
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40ef92
push 0x83f050
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 5
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40efbc
push 0x83f3a4
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
xor eax, eax
push eax
push 6
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40efe7
push 0x83f3bc
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 4
push 1
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40f011
push 0x83f050
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 1
push eax
push 5
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40f03f
push 0x83f050
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 0xa
push 0x13
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40f0db
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 0x14
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40f0ba
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 1
push 0xab
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40f099
mov eax, dword [ebp + 0x18]
cmp eax, 6
je 0x40ec1f
jmp 0x40e685
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83eff0
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov eax, dword [0x834be8]
mov edx, dword [eax]
push dword [0x834c24]
push 1
push eax
call dword [edx + 0x104]
test eax, eax
jne 0x40f413
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 0xffffffffffffffff
push 0x3c
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40f3f2
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 4
push 1
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40f17f
push 0x83f020
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
xor eax, eax
push eax
push 2
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40f1aa
push 0x83f038
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 3
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40f1d4
push 0x83f3ec
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 1
push 0x10
push eax
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40f202
push 0x83f020
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 1
push eax
push 2
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40f230
push 0x83f038
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 3
push 1
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40f25a
push 0x83f3ec
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 4
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40f288
push 0x83f050
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
xor eax, eax
push eax
push 5
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40f2b3
push 0x83f3a4
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 6
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40f2dd
push 0x83f3bc
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 4
push 1
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40f307
push 0x83f050
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 1
push eax
push 5
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40f335
push 0x83f3a4
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 1
push 0x13
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40f3d1
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 3
push 0x14
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40f3b0
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 1
push 0xab
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40f38f
mov eax, dword [ebp + 0x18]
cmp eax, 5
je 0x40ee3d
jmp 0x40e685
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83eff0
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 4
push 1
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40f45e
push 0x83f3d4
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
xor eax, eax
push eax
push 2
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40f489
push 0x83f038
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 3
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40f4b3
push 0x83f3ec
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 1
push eax
push eax
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40f4e0
push 0x83f020
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 4
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40f50e
push 0x83f404
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
xor eax, eax
push eax
push 5
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40f539
push 0x83f3a4
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 6
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40f563
push 0x83f3bc
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 1
push eax
push 4
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40f591
push 0x83f050
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 5
push 0x13
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40f62d
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 0x14
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40f60c
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 3
push 0xab
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40f5eb
mov eax, dword [ebp + 0x18]
cmp eax, 3
je 0x40f11d
jmp 0x40e685
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 1
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40f678
push 0x83f020
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 2
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40f6a6
push 0x83f038
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 1
push eax
push eax
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40f6d3
push 0x83f020
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 4
push eax
push eax
push 0
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40f701
push 0x83f050
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 5
push 0
push eax
call dword [edx + 0x10c]
test eax, eax
je 0x40f72b
push 0x83f3a4
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
xor eax, eax
push eax
push 6
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40f756
push 0x83f3bc
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov edx, dword [0x834be8]
mov ecx, dword [edx]
mov eax, 1
push eax
push 4
push eax
push edx
call dword [ecx + 0x10c]
test eax, eax
je 0x40f784
push 0x83f050
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 5
push 0x13
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40f820
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 2
push 0x14
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40f7ff
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 1
push 0xab
push eax
call dword [edx + 0xe4]
test eax, eax
jne 0x40f7de
mov eax, dword [ebp + 0x18]
cmp eax, 2
je 0x40f434
jmp 0x40e685
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
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 0x40dc4d
fstp st(1)
fstp st(0)
fstp st(0)
mov edx, dword [0x834d08]
test edx, edx
je 0x40f8b2
mov eax, dword [esp + 0x2e0]
test eax, eax
jle 0x40f8a3
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 0x83f498
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
jmp 0x40f8a3
push 0x83f470
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83f484
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov edx, dword [0x834d08]
mov ecx, dword [edx]
mov eax, dword [esp + 0x2f8]
push dword [eax + 0x280]
push 0x83f41c
push edx
call dword [ecx + 0xd0]
mov eax, dword [esp + 0x23c]
test eax, eax
je 0x40f95d
mov ecx, dword [0x834d08]
mov ebx, dword [ecx]
mov eax, dword [esp + 0x1b8]
mov edx, dword [esp + 0x2f0]
push dword [eax + edx*2 + 0x280]
push 0x83f428
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 [0x579a10]
movsx ecx, word [edx + 0x27c]
mov dword [esp + 0x248], ecx
fild dword [esp + 0x248]
fmul qword [0x579a10]
fstp qword [esp + 0x2a8]
mov ebx, dword [0x834d08]
mov esi, dword [ebx]
add esp, 0xfffffff4
mov dword [esp], ebx
mov dword [esp + 4], 0x83f434
fstp dword [esp + 8]
call dword [esi + 0x78]
test eax, eax
jl 0x40fa2a
mov eax, dword [0x834d08]
mov edx, dword [eax]
add esp, 0xfffffff4
mov dword [esp], eax
mov dword [esp + 4], 0x83f458
fld qword [esp + 0x2b4]
fstp dword [esp + 8]
call dword [edx + 0x78]
test eax, eax
jl 0x40fa16
mov eax, dword [0x834d08]
mov edx, dword [eax]
push eax
call dword [edx + 0x10c]
test eax, eax
jge 0x40e6a7
push 0x83f0bc
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
jmp 0x40e6a7
push 0x83f440
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
jmp 0x40f9e9
push 0x83f440
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
jmp 0x40f9c2
mov edx, dword [0x834d08]
mov ecx, dword [edx]
mov eax, dword [esp + 0x2f8]
push dword [eax + 0x280]
push 0x83f41c
push edx
call dword [ecx + 0xd0]
mov edx, eax
mov eax, dword [esp + 0x2e4]
test eax, eax
je 0x40fa97
mov ecx, dword [0x834d08]
mov ebx, dword [ecx]
mov eax, dword [esp + 0x2d0]
mov edx, dword [esp + 0x2f0]
push dword [eax + edx*2 + 0x280]
push 0x83f428
push ecx
call dword [ebx + 0xd0]
mov edx, eax
test edx, edx
jl 0x40fbfe
mov ecx, dword [esp + 0x2ec]
movsx eax, word [ecx + 0xa2]
mov dword [esp + 0x248], eax
fild dword [esp + 0x248]
fmul qword [0x579a10]
movsx edx, word [ecx + 0xa6]
mov dword [esp + 0x248], edx
fild dword [esp + 0x248]
fst dword [esp + 0x48]
fld qword [0x579a18]
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 [0x579a20]
fdivp st(1)
fdivp st(1)
fmul qword [0x579a10]
mov esi, dword [0x834d08]
mov edi, dword [esi]
add esp, 0xfffffff4
mov dword [esp], esi
mov dword [esp + 4], 0x83f434
fxch st(1)
fstp dword [esp + 8]
fstp qword [esp + 0x2d4]
call dword [edi + 0x78]
fld qword [esp + 0x2c8]
test eax, eax
jl 0x40fbd9
mov eax, dword [0x834d08]
mov edx, dword [eax]
add esp, 0xfffffff4
mov dword [esp], eax
mov dword [esp + 4], 0x83f458
fstp dword [esp + 8]
call dword [edx + 0x78]
test eax, eax
jl 0x40fbc5
mov eax, dword [0x834d08]
mov edx, dword [eax]
add esp, 0xfffffff4
mov dword [esp], eax
mov dword [esp + 4], 0x83f464
fld dword [esp + 0x54]
fstp dword [esp + 8]
call dword [edx + 0x78]
test eax, eax
jl 0x40fbb1
mov eax, dword [0x834d08]
mov edx, dword [eax]
push eax
call dword [edx + 0x10c]
test eax, eax
jge 0x40e6a7
push 0x83f0bc
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
jmp 0x40e6a7
push 0x83f440
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
jmp 0x40fb84
push 0x83f440
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
jmp 0x40fb60
push 0x83f440
push 0x83a2b0
fstp qword [esp + 0x2d0]
call fcn.0046d5d8
fld qword [esp + 0x2d0]
add esp, 8
jmp 0x40fb40
push 0x83f074
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
jmp 0x40fa9f
mov edx, dword [0x834d08]
mov ecx, dword [edx]
mov eax, dword [esp + 0x2f8]
push dword [eax + 0x280]
push 0x83f41c
push edx
call dword [ecx + 0xd0]
test eax, eax
jl 0x40fc67
mov eax, dword [0x834d08]
mov edx, dword [eax]
push eax
call dword [edx + 0x10c]
test eax, eax
jge 0x40e6a7
push 0x83f0bc
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
jmp 0x40e6a7
push 0x83f074
push 0x83a2b0
call fcn.0046d5d8
add esp, 8
jmp 0x40fc3a
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83f38c
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83eff0
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83eff0
push 0x83a2b0
call fcn.0046d5d8
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 0x40fdf0
mov edx, dword [0x834be8]
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 0x40fdcf
mov ecx, dword [0x834be8]
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 0x40e393
push 0x83eff0
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83eff0
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov edx, dword [0x834be8]
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 0x40fe5b
mov eax, dword [0x834be8]
mov edx, dword [eax]
push 0
push 1
push eax
call dword [edx + 0x104]
test eax, eax
je 0x40e393
push 0x83eff0
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83eff0
push 0x83a2b0
call fcn.0046d5d8
mov eax, 0xffffffff
add esp, 0x31c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push 0x83eff0
push 0x83a2b0
call fcn.0046d5d8
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 0x40f866
mov edx, dword [esp + 0x23c]
test edx, edx
je 0x40ff4b
mov edx, dword [0x834d08]
test edx, edx
je 0x40fefc
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 0x40ff0d
mov edx, 3
mov dword [esp + 0x2e0], edx
jmp 0x40dc01
push 0x83f374
push 0x83a2b0
fstp qword [esp + 0x288]
fstp qword [esp + 0x1b0]
fstp qword [esp + 0x1a8]
call fcn.0046d5d8
fld qword [esp + 0x1a8]
fld qword [esp + 0x1b0]
fld qword [esp + 0x288]
add esp, 8
jmp 0x40fefc
xor edx, edx
mov dword [esp + 0x2e0], edx
jmp 0x40dc01
push 0x83f340
push 0x83a2b0
fstp qword [esp + 0x288]
fstp qword [esp + 0x1b0]
fstp qword [esp + 0x1a8]
call fcn.0046d5d8
fld qword [esp + 0x1a8]
fld qword [esp + 0x1b0]
fld qword [esp + 0x288]
add esp, 8
jmp 0x40db90
fstp st(1)
fstp st(0)
fstp st(0)
jmp 0x40f885