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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
push 0xffffffffffffffff
push 0x69aa0b
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x708
cmp dword [0x705f5c], 6
push ebx
push esi
push edi
mov esi, ecx
je 0x442a31
mov al, byte [0x21ecb44]
xor edi, edi
test al, al
jne 0x442a31
cmp dword [0x705f48], edi
je 0x43b0eb
cmp dword [0x854e94], 0x12
jne 0x43b0f6
cmp dword [0x6f3558], 7
je 0x43b0f6
mov ecx, dword [0x8494ac]
cmp ecx, edi
je 0x442a31
push edi
call fcn.00411e20
mov eax, dword [0x8494ac]
mov dword [eax + 0xdc], edi
mov dword [esi + 0x1400e0], edi
jmp 0x442a31
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
lea edx, [esp + 0x330]
push edx
push 3
push eax
call dword [ecx + 0xb4]
fild dword [0x708794]
mov eax, dword [0x21f3f98]
mov ecx, dword [eax]
fadd st(0), st(0)
lea edx, [esp + 0x370]
fidiv dword [0x6f355c]
push edx
mov ebx, 2
push ebx
push eax
fsub dword [0x6a92f8]
fdiv dword [esp + 0x33c]
fstp dword [esp + 0x94]
fild dword [0x708798]
fadd st(0), st(0)
fidiv dword [0x6f3560]
fsub dword [0x6a92f8]
fdiv dword [esp + 0x350]
fchs
fstp dword [esp + 0x98]
call dword [ecx + 0xb4]
lea eax, [esp + 0x370]
push eax
push 0
lea ecx, [esp + 0x268]
push ecx
call fcn.005d2bb2
fld dword [esp + 0x270]
fmul dword [esp + 0x8c]
fld dword [esp + 0x260]
fmul dword [esp + 0x88]
faddp st(1)
fadd dword [esp + 0x280]
fst dword [esp + 0xbc]
fld dword [esp + 0x274]
fmul dword [esp + 0x8c]
fld dword [esp + 0x264]
fmul dword [esp + 0x88]
faddp st(1)
fadd dword [esp + 0x284]
fst dword [esp + 0xc0]
fld dword [esp + 0x278]
fmul dword [esp + 0x8c]
fld dword [esp + 0x268]
fmul dword [esp + 0x88]
faddp st(1)
fadd dword [esp + 0x288]
fstp dword [esp + 0xc4]
mov edx, dword [esp + 0xc4]
fld st(1)
mov dword [esp + 0x258], edx
fstp dword [esp + 0x250]
fst dword [esp + 0x254]
fld st(1)
fadd st(0), st(0)
fstp dword [esp + 0x220]
fld st(0)
fadd st(1)
fstp dword [esp + 0x224]
fld dword [esp + 0xc4]
fadd st(0), st(0)
fstp dword [esp + 0x228]
fld dword [esp + 0x220]
fadd dword [esp + 0x290]
fst dword [esp + 0x88]
fld dword [esp + 0x224]
fadd dword [esp + 0x294]
fst dword [esp + 0x8c]
fld dword [esp + 0x228]
mov ecx, edx
fadd dword [esp + 0x298]
mov edx, dword [esp + 0x88]
mov dword [esp + 0x21c], ecx
lea edi, [esi + 0x140210]
fstp dword [esp + 0x90]
mov eax, dword [esp + 0x90]
fxch st(1)
mov dword [esp + 0x210], eax
fstp dword [esp + 0x208]
fstp dword [esp + 0x20c]
fxch st(1)
fstp dword [esp + 0x214]
fstp dword [esp + 0x218]
mov dword [edi], edx
mov eax, dword [esp + 0x20c]
mov dword [edi + 4], eax
mov ecx, dword [esp + 0x210]
mov dword [edi + 8], ecx
mov edx, dword [esp + 0x214]
mov dword [edi + 0xc], edx
mov eax, dword [esp + 0x218]
mov dword [edi + 0x10], eax
mov ecx, dword [esp + 0x21c]
mov dword [edi + 0x14], ecx
lea ecx, [esp + 0x208]
call fcn.00697fa0
push 0x70955c
lea ecx, [esi + 0xc]
push edi
mov dword [esi + 0x140228], 0x497423f0
call fcn.00590b00
test al, al
je 0x43b373
fld dword [0x709564]
fsub dword [esp + 0x90]
fld dword [0x709560]
fsub dword [esp + 0x8c]
fld dword [0x70955c]
fsub dword [esp + 0x88]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fstp st(3)
fstp st(0)
fstp st(0)
fsqrt
fstp dword [esi + 0x140228]
mov eax, dword [esi + 0x13fecc]
cmp dword [eax + 0xcc], 0x65
je 0x442a31
mov ecx, dword [eax + 0xe4]
mov edx, dword [eax + 0xdc]
xor edi, edi
cmp ecx, edi
mov dword [0x709538], edx
je 0x43b3b6
cmp dword [0x705f58], edi
jne 0x442a31
mov ecx, esi
call fcn.00439f70
jmp 0x442a31
mov ecx, dword [0x21f4060]
mov edx, dword [0x21f4064]
mov dword [esp + 0x64], ecx
mov ecx, dword [0x21f4068]
mov dword [esp + 0x6c], ecx
movzx ecx, byte [eax + 0x275]
cmp ecx, 3
mov dword [esp + 0x68], edx
mov edx, dword [0x705d80]
mov dword [esp + 0x28], edx
jg 0x43b417
je 0x43b40b
sub ecx, edi
je 0x43b3ff
dec ecx
jne 0x43b43c
fld dword [esp + 0x28]
fsub dword [0x6a92f8]
jmp 0x43b438
fld dword [esp + 0x28]
fsub dword [0x6a972c]
jmp 0x43b438
fld dword [esp + 0x28]
fadd dword [0x6a92f8]
jmp 0x43b438
cmp ecx, 4
je 0x43b42e
cmp ecx, 0xff
jne 0x43b43c
mov dword [esp + 0x28], 0
jmp 0x43b43c
fld dword [esp + 0x28]
fadd dword [0x6a972c]
fstp dword [esp + 0x28]
mov cl, byte [eax + 0x378]
test cl, cl
je 0x43b45b
cmp cl, 2
mov dword [esp + 0x28], 0x40e00000
jne 0x43b45b
mov dword [esp + 0x28], 0x41000000
fld dword [eax + 0x15c]
fsub dword [eax + 0x24]
fld dword [eax + 0x158]
fsub dword [eax + 0x20]
fld dword [eax + 0x154]
fsub dword [eax + 0x1c]
lea eax, [esp + 0x178]
push eax
mov ecx, eax
fstp dword [esp + 0x17c]
push ecx
fst dword [esp + 0x184]
fld st(1)
fstp dword [esp + 0x188]
fld dword [esp + 0x180]
fmul dword [esp + 0x180]
fld st(1)
fmul st(2)
faddp st(1)
fld st(2)
fmul st(3)
faddp st(1)
fstp st(2)
fstp st(0)
fsqrt
fstp dword [esp + 0x68]
call fcn.005d19bf
fld dword [esp + 0x28]
fmul dword [0x6a95b8]
fst dword [esp + 0x18]
fld dword [esp + 0x180]
fmul st(1)
fld dword [esp + 0x17c]
fmul st(2)
fstp dword [esp + 0x4c]
fxch st(1)
fmul dword [esp + 0x178]
fstp dword [esp + 0x38]
fmul dword [0x705f54]
fld dword [esp + 0x4c]
fmul dword [0x705f54]
fld dword [esp + 0x38]
fmul dword [0x705f54]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fsqrt
fld dword [esp + 0x60]
fsub dword [0x6a95b4]
fcompp
fnstsw ax
test ah, 0x41
mov eax, dword [esi + 0x13fecc]
jne 0x43b54d
fadd dword [eax + 0x1c]
add eax, 0x1c
fstp dword [eax]
fadd dword [eax + 4]
fstp dword [eax + 4]
fadd dword [eax + 8]
fstp dword [eax + 8]
jmp 0x43b56c
lea edx, [eax + 0x154]
fstp st(0)
mov ecx, dword [edx]
fstp st(0)
add eax, 0x1c
fstp st(0)
mov dword [eax], ecx
mov ecx, dword [edx + 4]
mov dword [eax + 4], ecx
mov edx, dword [edx + 8]
mov dword [eax + 8], edx
mov eax, dword [esi + 0x13fecc]
mov dword [eax + 0x20], edi
mov dword [esi + 0x1400e0], edi
mov eax, dword [0x6f3558]
cmp eax, 1
mov dword [esp + 0x58], edi
mov dword [esp + 0x5c], 1
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x24], 0
jne 0x43b680
mov eax, dword [0x705f58]
test eax, eax
mov edi, dword [0x21ee220]
jne 0x43b5fc
mov al, byte [0x21ed127]
test al, al
jne 0x43b5fc
mov al, byte [0x21ed124]
test al, al
jne 0x43b5fc
push 0x2c
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43b5e6
mov word [0x21e98a4], 4
jmp 0x43b5fc
push 0x14
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43b5fc
mov word [0x21e98a4], 5
push 0x58
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43b619
mov al, byte [0x21e9fd6]
test al, al
sete cl
mov byte [0x21e9fd6], cl
push 0xb7
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43b797
xor eax, eax
mov ecx, 0x41
lea edi, [esp + 0x3f8]
lea edx, [esp + 0x3f8]
rep stosd dword es:[edi], eax
push edx
mov ecx, 0x21f3fa0
call fcn.0052d5e0
lea eax, [esp + 0x3f8]
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x43b660
sub eax, edx
mov dword [esp + 0x4c], eax
je 0x43b782
lea eax, [esp + 0x3f8]
push eax
jmp 0x43b767
cmp eax, 3
jne 0x43b701
cmp dword [0x8512e8], edi
jne 0x43b791
mov edi, dword [0x21ee220]
push 0x58
mov ecx, edi
call fcn.00425c50
test al, al
jne 0x43b6b8
push 0xb7
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43b797
xor eax, eax
mov ecx, 0x41
lea edi, [esp + 0x500]
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x500]
push ecx
mov ecx, 0x21f3fa0
call fcn.0052d5e0
lea eax, [esp + 0x500]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x43b6e4
sub eax, edx
mov dword [esp + 0x4c], eax
je 0x43b782
lea edx, [esp + 0x500]
push edx
jmp 0x43b767
mov edi, dword [0x21ee220]
push 0x58
mov ecx, edi
call fcn.00425c50
test al, al
jne 0x43b724
push 0xb7
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43b797
xor eax, eax
mov ecx, 0x41
lea edi, [esp + 0x608]
rep stosd dword es:[edi], eax
lea eax, [esp + 0x608]
push eax
mov ecx, 0x21f3fa0
call fcn.0052d5e0
lea eax, [esp + 0x608]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x43b750
sub eax, edx
mov dword [esp + 0x4c], eax
je 0x43b782
lea ecx, [esp + 0x608]
push ecx
push 0x7068b8
call fcn.0041b710
push 0x167
push 7
call fcn.0041dfb0
add esp, 0x10
jmp 0x43b791
push 0x168
push 0x11
call fcn.0041dfb0
add esp, 8
mov edi, dword [0x21ee220]
push 0x43
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43b7cf
cmp dword [0x6f3558], 3
jne 0x43b7b6
mov eax, dword [0x8512e8]
test eax, eax
jne 0x43b7cf
mov ecx, esi
push 0
mov dword [0x705dc8], 0
call fcn.00442d10
mov edi, dword [0x21ee220]
push 0x44
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43b812
cmp dword [0x6f3558], 3
jne 0x43b7ee
mov eax, dword [0x8512e8]
test eax, eax
jne 0x43b812
mov edx, dword [0x705dc8]
xor eax, eax
test edx, edx
sete al
test eax, eax
mov dword [0x705dc8], eax
jne 0x43b812
mov ecx, esi
push eax
call fcn.00442d10
mov edi, dword [0x21ee220]
push 0x57
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43b857
cmp dword [0x6f3558], 3
jne 0x43b845
mov eax, dword [0x8512e8]
test eax, eax
jne 0x43b857
mov eax, dword [0x705dc4]
xor edx, edx
test eax, eax
sete dl
mov dword [0x705dc4], edx
jmp 0x43b857
mov ecx, dword [0x705dc4]
xor eax, eax
test ecx, ecx
sete al
mov dword [0x705dc4], eax
mov eax, dword [0x705f58]
test eax, eax
jne 0x43b8a1
mov al, byte [0x21ed127]
test al, al
jne 0x43b8a1
mov al, byte [0x21ed124]
test al, al
jne 0x43b8a1
push 0xe
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43b8a1
mov ecx, dword [esi + 0x13fecc]
add ecx, 0x160
push ecx
push 0x853e50
mov ecx, 0x851aa0
call fcn.004c0ef0
mov edi, dword [0x21ee220]
mov al, byte [0x21e8d60]
test al, al
je 0x43b96f
push 0x3b
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43b8bf
xor eax, eax
jmp 0x43b922
push 0x3c
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43b8d3
mov eax, 1
jmp 0x43b922
push 0x3d
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43b8e4
mov eax, ebx
jmp 0x43b922
push 0x3e
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43b8f8
mov eax, 3
jmp 0x43b922
push 0x3f
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43b90c
mov eax, 4
jmp 0x43b922
push 0x40
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43bdf9
mov eax, 5
mov ecx, dword [0x21e8cb4]
lea edx, [ecx + ecx*2]
lea eax, [eax + edx*2]
push eax
mov ecx, 0x21e8c80
call fcn.004200f0
test eax, eax
je 0x43bdf9
cmp dword [0x6f3558], 3
jne 0x43bc22
mov ecx, dword [0x8512e8]
test ecx, ecx
jne 0x43bdf9
mov ecx, dword [esi + 0x13fecc]
mov edx, dword [eax]
mov dword [ecx + 0x160], edx
jmp 0x43bddb
mov ecx, dword [0x21e8c70]
test ecx, ecx
je 0x43bd52
mov eax, dword [0x21e8c74]
sub eax, ecx
sar eax, 2
test eax, eax
je 0x43bd52
push 0x3b
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43ba04
cmp dword [0x6f3558], 3
jne 0x43b9b2
mov eax, dword [0x8512e8]
test eax, eax
jne 0x43bdf9
push 0
mov ecx, 0x21e8c68
call fcn.0043a4c0
test eax, eax
je 0x43bdf9
mov ecx, dword [0x7094a0]
mov edx, dword [ecx]
mov ecx, dword [edx + 0x280]
mov dword [ecx + 0x104], 0
mov edx, dword [esi + 0x13fecc]
mov eax, dword [eax]
mov dword [edx + 0x160], eax
mov dword [0x853e50], ebx
mov ecx, dword [esi + 0x13fecc]
mov edx, dword [ecx + 0x160]
push edx
jmp 0x43bdee
push 0x3c
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43ba79
cmp dword [0x6f3558], 3
jne 0x43ba27
mov eax, dword [0x8512e8]
test eax, eax
jne 0x43bdf9
push 1
mov ecx, 0x21e8c68
call fcn.0043a4c0
test eax, eax
je 0x43bdf9
mov ecx, dword [0x7094a0]
mov edx, dword [ecx]
mov ecx, dword [edx + 0x280]
mov dword [ecx + 0x104], 1
mov edx, dword [esi + 0x13fecc]
mov eax, dword [eax]
mov dword [edx + 0x160], eax
mov dword [0x853e50], ebx
mov ecx, dword [esi + 0x13fecc]
mov edx, dword [ecx + 0x160]
push edx
jmp 0x43bdee
push 0x3d
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43bae9
cmp dword [0x6f3558], 3
jne 0x43ba9c
mov eax, dword [0x8512e8]
test eax, eax
jne 0x43bdf9
push ebx
mov ecx, 0x21e8c68
call fcn.0043a4c0
test eax, eax
je 0x43bdf9
mov ecx, dword [0x7094a0]
mov edx, dword [ecx]
mov ecx, dword [edx + 0x280]
mov dword [ecx + 0x104], ebx
mov edx, dword [esi + 0x13fecc]
mov eax, dword [eax]
mov dword [edx + 0x160], eax
mov dword [0x853e50], ebx
mov ecx, dword [esi + 0x13fecc]
mov edx, dword [ecx + 0x160]
push edx
jmp 0x43bdee
push 0x3e
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43bb5e
mov eax, dword [0x6f3558]
mov edi, 3
cmp eax, edi
jne 0x43bb11
mov eax, dword [0x8512e8]
test eax, eax
jne 0x43bdf9
push edi
mov ecx, 0x21e8c68
call fcn.0043a4c0
test eax, eax
je 0x43bdf9
mov ecx, dword [0x7094a0]
mov edx, dword [ecx]
mov ecx, dword [edx + 0x280]
mov dword [ecx + 0x104], edi
mov edx, dword [esi + 0x13fecc]
mov eax, dword [eax]
mov dword [edx + 0x160], eax
mov dword [0x853e50], ebx
mov ecx, dword [esi + 0x13fecc]
mov edx, dword [ecx + 0x160]
push edx
jmp 0x43bdee
push 0x3f
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43bbd3
cmp dword [0x6f3558], 3
jne 0x43bb81
mov eax, dword [0x8512e8]
test eax, eax
jne 0x43bdf9
push 4
mov ecx, 0x21e8c68
call fcn.0043a4c0
test eax, eax
je 0x43bdf9
mov ecx, dword [0x7094a0]
mov edx, dword [ecx]
mov ecx, dword [edx + 0x280]
mov dword [ecx + 0x104], 4
mov edx, dword [esi + 0x13fecc]
mov eax, dword [eax]
mov dword [edx + 0x160], eax
mov dword [0x853e50], ebx
mov ecx, dword [esi + 0x13fecc]
mov edx, dword [ecx + 0x160]
push edx
jmp 0x43bdee
push 0x40
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43bc48
cmp dword [0x6f3558], 3
jne 0x43bbf6
mov eax, dword [0x8512e8]
test eax, eax
jne 0x43bdf9
push 5
mov ecx, 0x21e8c68
call fcn.0043a4c0
test eax, eax
je 0x43bdf9
mov ecx, dword [0x7094a0]
mov edx, dword [ecx]
mov ecx, dword [edx + 0x280]
mov dword [ecx + 0x104], 5
mov edx, dword [esi + 0x13fecc]
mov eax, dword [eax]
mov dword [edx + 0x160], eax
mov dword [0x853e50], ebx
mov ecx, dword [esi + 0x13fecc]
mov edx, dword [ecx + 0x160]
push edx
jmp 0x43bdee
push 0x41
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43bcec
cmp dword [0x6f3558], 3
jne 0x43bcad
mov eax, dword [0x8512e8]
test eax, eax
jne 0x43bdf9
mov eax, dword [0x7094a0]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x280]
push 6
mov ecx, 0x21e8c68
mov dword [edx + 0x104], 6
call fcn.0043a4c0
test eax, eax
je 0x43bdf9
mov ecx, dword [esi + 0x13fecc]
mov edx, dword [eax]
mov dword [ecx + 0x160], edx
jmp 0x43bddb
push 6
mov ecx, 0x21e8c68
call fcn.0043a4c0
test eax, eax
je 0x43bdf9
mov edx, dword [0x7094a0]
mov ecx, dword [edx]
mov edx, dword [ecx + 0x280]
mov dword [edx + 0x104], 6
mov ecx, dword [esi + 0x13fecc]
mov edx, dword [eax]
mov dword [ecx + 0x160], edx
jmp 0x43bddb
push 0x42
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43bdf9
cmp dword [0x6f3558], 3
jne 0x43bd13
mov eax, dword [0x8512e8]
test eax, eax
jne 0x43bdf9
push 7
mov ecx, 0x21e8c68
call fcn.0043a4c0
test eax, eax
je 0x43bdf9
mov edx, dword [0x7094a0]
mov ecx, dword [edx]
mov edx, dword [ecx + 0x280]
mov dword [edx + 0x104], 7
mov ecx, dword [esi + 0x13fecc]
mov edx, dword [eax]
mov dword [ecx + 0x160], edx
jmp 0x43bddb
push 0x3b
mov ecx, edi
call fcn.00425c50
test al, al
jne 0x43bdba
push 0x3c
mov ecx, edi
call fcn.00425c50
test al, al
jne 0x43bdba
push 0x3d
mov ecx, edi
call fcn.00425c50
test al, al
jne 0x43bdba
push 0x3e
mov ecx, edi
call fcn.00425c50
test al, al
jne 0x43bdba
push 0x3f
mov ecx, edi
call fcn.00425c50
test al, al
jne 0x43bdba
push 0x40
mov ecx, edi
call fcn.00425c50
test al, al
jne 0x43bdba
push 0x41
mov ecx, edi
call fcn.00425c50
test al, al
jne 0x43bdba
push 0x42
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43bdf9
cmp dword [0x6f3558], 3
jne 0x43bdcc
mov eax, dword [0x8512e8]
test eax, eax
jne 0x43bdf9
mov eax, dword [esi + 0x13fecc]
mov edx, dword [eax + 0x34]
mov dword [eax + 0x160], edx
mov dword [0x853e50], ebx
mov eax, dword [esi + 0x13fecc]
mov ecx, dword [eax + 0x160]
push ecx
mov ecx, 0x851aa0
push ebx
call fcn.004c6bf0
mov eax, dword [0x705f58]
or edi, 0xffffffff
test eax, eax
jne 0x43be97
mov ecx, dword [0x21ee220]
push 0x21
call fcn.00425c50
test al, al
je 0x43be97
mov ecx, dword [esi + 0x13fecc]
mov eax, dword [ecx + 0x160]
cmp eax, edi
je 0x43be97
cmp dword [0x853e50], ebx
jne 0x43be97
cmp eax, dword [ecx + 0x34]
je 0x43be97
push eax
mov ecx, 0x851aa0
call fcn.004c7b00
test eax, eax
jne 0x43be61
mov edx, dword [esi + 0x13fecc]
mov eax, dword [edx + 0x160]
push eax
mov ecx, 0x851aa0
call fcn.004c4a00
test al, al
je 0x43be97
mov ecx, dword [esi + 0x13fecc]
mov edx, dword [ecx + 0x160]
push edx
mov ecx, esi
call fcn.00446890
test eax, eax
je 0x43be97
mov ecx, dword [eax + 0x37c]
mov dword [0x853e50], ecx
mov edx, dword [esi + 0x13fecc]
mov eax, dword [eax + 0x380]
mov dword [edx + 0x160], eax
mov eax, dword [0x6f3558]
dec eax
je 0x43beb4
sub eax, ebx
je 0x43beb4
mov eax, dword [0x705f58]
test eax, eax
jne 0x43c3c2
push 0x29
jmp 0x43beb6
push 0xf
mov ecx, dword [0x21ee220]
call fcn.00425c50
test al, al
je 0x43c3c2
mov edx, dword [esi + 0x13fecc]
mov eax, dword [edx + 0x160]
xor ecx, ecx
cmp eax, edi
mov dword [esp + 0x48], 0x497423f0
mov dword [esp + 0x54], 0
mov dword [esp + 0x50], edi
mov dword [esp + 0x44], ecx
mov dword [esp + 0xfc], ecx
mov dword [esp + 0x4c], ecx
je 0x43bf85
mov edx, dword [0x853e50]
cmp edx, ecx
jne 0x43bf37
push eax
mov ecx, esi
call fcn.00446910
test eax, eax
mov dword [esp + 0xfc], eax
je 0x43bf85
mov ecx, dword [esi + 0x13fecc]
fld dword [ecx + 0x18]
fld dword [ecx + 0x10]
fld dword [eax + 0xc]
mov eax, dword [eax + 4]
mov dword [esp + 0x38], eax
jmp 0x43bf61
cmp edx, ebx
jne 0x43bf85
push eax
mov ecx, esi
call fcn.00446890
test eax, eax
mov dword [esp + 0x4c], eax
je 0x43bf85
mov ecx, dword [esi + 0x13fecc]
fld dword [ecx + 0x18]
fld dword [ecx + 0x10]
mov ecx, dword [eax + 0x10]
fld dword [eax + 0x18]
mov dword [esp + 0x38], ecx
fxch st(2)
fsub st(2)
fstp dword [esp + 0x54]
fstp st(1)
fsub dword [esp + 0x38]
fld st(0)
fmulp st(1)
fld dword [esp + 0x54]
fmul dword [esp + 0x54]
faddp st(1)
fsqrt
fabs
fstp dword [esp + 0x54]
mov eax, dword [esi + 0x13d8a0]
mov eax, dword [eax]
lea ebx, [esi + 0x13d8a8]
mov dword [ebx], eax
cmp eax, dword [esi + 0x13d8a0]
je 0x43c056
mov edx, dword [ebx]
mov edi, dword [edx + 0x10]
test edi, edi
je 0x43c033
mov eax, dword [edi + 0xb0]
test eax, eax
jne 0x43c033
cmp dword [esp + 0xfc], edi
je 0x43c033
mov ecx, edi
call fcn.00430ab0
test eax, eax
jne 0x43c033
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x18]
fld dword [eax + 0x10]
mov eax, dword [edi + 4]
fld dword [edi + 0xc]
mov dword [esp + 0x38], eax
fxch st(2)
fsub st(2)
fstp dword [esp + 0x60]
fstp st(1)
fsub dword [esp + 0x38]
fld st(0)
fmulp st(1)
fld dword [esp + 0x60]
fmul dword [esp + 0x60]
faddp st(1)
fsqrt
fabs
fld dword [esp + 0x54]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x43c031
fld dword [esp + 0x48]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x43c031
mov ecx, dword [edi + 0x28]
fstp dword [esp + 0x48]
mov dword [esp + 0x50], ecx
mov dword [esp + 0x44], 1
jmp 0x43c033
fstp st(0)
mov ecx, ebx
call fcn.0040bbe0
mov eax, dword [esi + 0x13d8a0]
cmp dword [ebx], eax
jne 0x43bfa1
mov eax, dword [esp + 0x44]
xor ecx, ecx
cmp eax, ecx
jne 0x43c0f7
mov eax, dword [esi + 0x13d8a0]
mov eax, dword [eax]
mov dword [ebx], eax
cmp eax, dword [esi + 0x13d8a0]
je 0x43c0f5
lea esp, [esp]
mov edx, dword [ebx]
mov edi, dword [edx + 0x10]
test edi, edi
je 0x43c0e0
mov eax, dword [edi + 0xb0]
test eax, eax
jne 0x43c0e0
mov ecx, edi
call fcn.00430ab0
test eax, eax
jne 0x43c0e0
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x18]
fld dword [eax + 0x10]
mov eax, dword [edi + 4]
fld dword [edi + 0xc]
mov dword [esp + 0x38], eax
fxch st(2)
fsub st(2)
fstp dword [esp + 0x60]
fstp st(1)
fsub dword [esp + 0x38]
fld st(0)
fmulp st(1)
fld dword [esp + 0x60]
fmul dword [esp + 0x60]
faddp st(1)
fsqrt
fabs
fld dword [esp + 0x48]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x43c0de
mov ecx, dword [edi + 0x28]
fstp dword [esp + 0x48]
mov dword [esp + 0x50], ecx
jmp 0x43c0e0
fstp st(0)
mov ecx, ebx
call fcn.0040bbe0
mov eax, dword [esi + 0x13d8a0]
cmp dword [ebx], eax
jne 0x43c070
xor ecx, ecx
mov eax, dword [esp + 0x50]
cmp eax, 0xffffffff
je 0x43c152
mov dword [0x853e50], ecx
mov edx, dword [esi + 0x13fecc]
mov dword [edx + 0x164], 1
mov dword [0x709510], ecx
mov dword [0x709508], ecx
mov dword [0x70950c], ecx
mov ecx, dword [esi + 0x13fecc]
mov dword [ecx + 0x160], eax
mov edx, dword [esi + 0x13fecc]
mov eax, dword [edx + 0x160]
mov ecx, dword [0x853e50]
push eax
push ecx
mov ecx, 0x851aa0
call fcn.004c6bf0
mov eax, dword [esi + 0x13d878]
mov eax, dword [eax]
lea ebx, [esi + 0x13d880]
mov dword [ebx], eax
cmp eax, dword [esi + 0x13d878]
mov dword [esp + 0x50], 0xffffffff
je 0x43c26f
jmp 0x43c180
mov eax, dword [eax + 0x10]
mov edi, dword [esi + 0x13fecc]
mov ecx, dword [eax + 0x34]
cmp ecx, dword [edi + 0x34]
je 0x43c258
mov dl, byte [0x21e8d7a]
cmp dl, byte [eax + 0x276]
jne 0x43c1e0
mov edx, 2
cmp dword [0x7089f4], edx
jne 0x43c1b8
cmp ecx, dword [0x7089f8]
je 0x43c1e0
cmp dword [0x708a10], edx
jne 0x43c258
mov edx, dword [eax + 0x2c8]
cmp edx, dword [0x7088d4]
jne 0x43c258
mov dl, byte [eax + 0x37a]
test dl, dl
je 0x43c258
mov edx, dword [eax + 0x250]
test edx, edx
jne 0x43c258
cmp dword [esp + 0x4c], eax
je 0x43c258
mov edx, dword [eax + 0x27c]
test edx, edx
jne 0x43c258
fld dword [edi + 0x18]
fld dword [edi + 0x10]
fld dword [eax + 0x18]
mov eax, dword [eax + 0x10]
fxch st(2)
mov dword [esp + 0x38], eax
fsub st(2)
fstp dword [esp + 0x60]
fstp st(1)
fsub dword [esp + 0x38]
fld st(0)
fmulp st(1)
fld dword [esp + 0x60]
fmul dword [esp + 0x60]
faddp st(1)
fsqrt
fabs
fld dword [esp + 0x54]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x43c256
fld dword [esp + 0x48]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x43c256
fstp dword [esp + 0x48]
mov dword [esp + 0x50], ecx
mov dword [esp + 0x44], 1
jmp 0x43c258
fstp st(0)
mov ecx, ebx
call fcn.0040bbe0
mov ecx, dword [esi + 0x13d878]
mov eax, dword [ebx]
cmp eax, ecx
jne 0x43c180
mov eax, dword [esp + 0x44]
test eax, eax
jne 0x43c35d
mov eax, dword [esi + 0x13d878]
mov eax, dword [eax]
mov dword [ebx], eax
cmp eax, dword [esi + 0x13d878]
je 0x43c35d
mov eax, dword [eax + 0x10]
mov ecx, dword [esi + 0x13fecc]
mov edi, dword [eax + 0x34]
cmp edi, dword [ecx + 0x34]
je 0x43c346
mov dl, byte [0x21e8d7a]
cmp dl, byte [eax + 0x276]
jne 0x43c2e9
mov edx, 2
cmp dword [0x7089f4], edx
jne 0x43c2c9
cmp edi, dword [0x7089f8]
je 0x43c2e9
cmp dword [0x708a10], edx
jne 0x43c346
mov edx, dword [eax + 0x2c8]
cmp edx, dword [0x7088d4]
jne 0x43c346
mov dl, byte [eax + 0x37a]
test dl, dl
je 0x43c346
mov edx, dword [eax + 0x250]
test edx, edx
jne 0x43c346
mov edx, dword [eax + 0x27c]
test edx, edx
jne 0x43c346
fld dword [ecx + 0x18]
fld dword [ecx + 0x10]
fld dword [eax + 0x18]
mov eax, dword [eax + 0x10]
fxch st(2)
mov dword [esp + 0x38], eax
fsub st(2)
fstp dword [esp + 0x4c]
fstp st(1)
fsub dword [esp + 0x38]
fld st(0)
fmulp st(1)
fld dword [esp + 0x4c]
fmul dword [esp + 0x4c]
faddp st(1)
fsqrt
fabs
fld dword [esp + 0x48]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x43c344
fstp dword [esp + 0x48]
mov dword [esp + 0x50], edi
jmp 0x43c346
fstp st(0)
mov ecx, ebx
call fcn.0040bbe0
mov ecx, dword [esi + 0x13d878]
mov eax, dword [ebx]
cmp eax, ecx
jne 0x43c291
mov ecx, dword [esp + 0x50]
cmp ecx, 0xffffffff
je 0x43c3ba
mov dword [0x853e50], 2
mov edx, dword [esi + 0x13fecc]
xor eax, eax
mov dword [edx + 0x164], 1
mov dword [0x709510], eax
mov dword [0x709508], eax
mov dword [0x70950c], eax
mov eax, dword [esi + 0x13fecc]
mov dword [eax + 0x160], ecx
mov ecx, dword [esi + 0x13fecc]
mov edx, dword [ecx + 0x160]
mov eax, dword [0x853e50]
push edx
push eax
mov ecx, 0x851aa0
call fcn.004c6bf0
mov ebx, 2
or edi, 0xffffffff
mov edx, dword [0x8494ac]
mov eax, dword [edx + 0x3cc]
xor ecx, ecx
cmp eax, ecx
je 0x43c56d
cmp dword [0x705f58], ecx
jne 0x43c44e
mov al, byte [0x21ed127]
test al, al
jne 0x43c44e
mov al, byte [0x21ed124]
test al, al
jne 0x43c44e
mov eax, dword [esi + 0x13fecc]
mov eax, dword [eax + 0xdc]
cmp eax, 3
je 0x43c44e
cmp eax, ebx
je 0x43c44e
cmp eax, 9
je 0x43c44e
mov ecx, 0x851aa0
call fcn.004c3c70
test eax, eax
jne 0x43c447
mov ecx, dword [0x705eb4]
push ecx
mov ecx, dword [0x21ee220]
call fcn.00425c50
test al, al
je 0x43c447
mov al, byte [0x709540]
test al, al
jne 0x43c44e
mov byte [0x709540], 1
call fcn.0058ce60
jmp 0x43c44e
mov byte [0x709540], 0
mov eax, dword [0x8494ac]
mov ebx, dword [eax + 0xdc]
xor edx, edx
cmp ebx, 1
sete dl
mov dword [esi + 0x1400e0], edx
mov ecx, dword [0x8494ac]
mov edx, dword [ecx + 0x3cc]
push edx
mov ecx, 0x7095e0
call fcn.00446890
test eax, eax
je 0x43c491
mov ecx, dword [0x8494ac]
mov edx, dword [ecx + 0x34]
mov dword [eax + 0x3d0], edx
mov eax, dword [esi + 0x13fecc]
fld dword [0x6f3bd8]
fsub dword [0x6a975c]
add eax, 0x10
mov ecx, dword [eax]
mov dword [0x21f406c], ecx
mov edx, dword [eax + 4]
mov dword [0x21f4070], edx
fadd dword [0x21f4070]
mov eax, dword [eax + 8]
mov dword [0x21f4074], eax
fstp dword [0x21f4070]
mov al, byte [esi + 9]
mov ecx, dword [esi + 0x13fecc]
mov edx, dword [ecx + 0x14]
test al, al
mov eax, dword [0x21f4068]
mov dword [esp + 0x18], edx
push eax
je 0x43c4fc
mov ecx, edx
mov edx, dword [0x21f4060]
push ecx
push edx
lea ecx, [esi + 0x13cc3c]
call fcn.00592bc0
jmp 0x43c50b
mov ecx, dword [0x21f4060]
push ecx
lea ecx, [esi + 0xc]
call fcn.00590a50
mov al, byte [esi + 9]
fadd dword [0x6a95b8]
test al, al
je 0x43c53a
mov edx, dword [esi + 0x13fecc]
fld dword [edx + 0x14]
fadd dword [0x6a9778]
fst dword [esp + 0x5c]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x43c53a
fstp st(0)
fld dword [esp + 0x5c]
fld dword [0x21f4064]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x43c55d
push 1
fstp dword [0x21f4064]
mov ecx, esi
call fcn.004387a0
jmp 0x442a31
push 1
fstp st(0)
mov ecx, esi
call fcn.004387a0
jmp 0x442a31
mov ax, word [0x21e98a4]
cmp ax, 5
jne 0x43c853
cmp dword [0x853e50], ebx
mov word [0x21e98a4], cx
mov dword [esp + 0x44], 0x497423f0
jne 0x43c5f9
mov eax, dword [esi + 0x13fecc]
mov ecx, dword [eax + 0x160]
push ecx
mov ecx, esi
call fcn.00446890
test eax, eax
je 0x43c5f9
mov dl, byte [0x21e8d7a]
cmp dl, byte [eax + 0x276]
jne 0x43c5f9
cmp dword [0x7089f4], ebx
jne 0x43c5cd
mov ecx, dword [eax + 0x34]
cmp ecx, dword [0x7089f8]
je 0x43c5f9
cmp dword [0x708a10], ebx
jne 0x43c5ed
mov edx, dword [eax + 0x2c8]
cmp edx, dword [0x7088d4]
jne 0x43c5ed
mov cl, byte [eax + 0x37a]
test cl, cl
jne 0x43c5f9
mov eax, dword [esi + 0x13fecc]
mov dword [eax + 0x160], edi
mov ecx, dword [esi + 0x13fecc]
cmp dword [ecx + 0x160], edi
je 0x43c614
cmp dword [0x853e50], 1
jne 0x43c803
mov edx, dword [esi + 0x13d8a0]
mov eax, dword [edx]
lea edi, [esi + 0x13d8a8]
mov dword [edi], eax
cmp eax, dword [esi + 0x13d8a0]
je 0x43c6ae
xor ebx, ebx
mov eax, dword [edi]
mov ecx, dword [eax + 0x10]
cmp ecx, ebx
je 0x43c69d
cmp dword [ecx + 0xb0], ebx
jne 0x43c69d
mov edx, dword [esi + 0x13fecc]
fld dword [edx + 0x10]
mov eax, dword [ecx + 0xc]
fld dword [edx + 0x18]
mov dword [esp + 0x40], eax
fld dword [ecx + 4]
fxch st(2)
fsub st(2)
fstp dword [esp + 0x64]
fstp st(1)
fsub dword [esp + 0x40]
fld st(0)
fmulp st(1)
fld dword [esp + 0x64]
fmul dword [esp + 0x64]
faddp st(1)
fsqrt
fabs
fld dword [esp + 0x44]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x43c69b
mov ecx, dword [ecx + 0x28]
fstp dword [esp + 0x44]
mov dword [edx + 0x160], ecx
mov dword [0x853e50], ebx
jmp 0x43c69d
fstp st(0)
mov ecx, edi
call fcn.0040bbe0
mov edx, dword [edi]
cmp edx, dword [esi + 0x13d8a0]
jne 0x43c632
mov eax, dword [esi + 0x13d878]
mov eax, dword [eax]
mov dword [esi + 0x13d880], eax
cmp eax, dword [esi + 0x13d878]
je 0x43c803
mov edx, 2
lea ecx, [ecx]
mov ecx, dword [esi + 0x13d880]
mov eax, dword [ecx + 0x10]
mov ecx, dword [esi + 0x13fecc]
mov edi, dword [eax + 0x34]
cmp edi, dword [ecx + 0x34]
je 0x43c792
mov bl, byte [0x21e8d7a]
cmp bl, byte [eax + 0x276]
jne 0x43c72d
cmp dword [0x7089f4], edx
jne 0x43c709
cmp edi, dword [0x7089f8]
je 0x43c72d
cmp dword [0x708a10], edx
jne 0x43c792
mov ebx, dword [eax + 0x2c8]
cmp ebx, dword [0x7088d4]
jne 0x43c792
mov bl, byte [eax + 0x37a]
test bl, bl
je 0x43c792
mov ebx, dword [eax + 0x250]
test ebx, ebx
jne 0x43c792
mov ebx, dword [eax + 0x27c]
test ebx, ebx
jne 0x43c792
fld dword [ecx + 0x10]
fld dword [ecx + 0x18]
fld dword [eax + 0x10]
mov eax, dword [eax + 0x18]
fxch st(2)
mov dword [esp + 0x40], eax
fsub st(2)
fstp dword [esp + 0x64]
fstp st(1)
fsub dword [esp + 0x40]
fld st(0)
fmulp st(1)
fld dword [esp + 0x64]
fmul dword [esp + 0x64]
faddp st(1)
fsqrt
fabs
fld dword [esp + 0x44]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x43c790
mov dword [ecx + 0x160], edi
fstp dword [esp + 0x44]
mov dword [0x853e50], edx
jmp 0x43c792
fstp st(0)
mov ecx, dword [esi + 0x13d880]
mov al, byte [ecx + 0x15]
test al, al
jne 0x43c7f1
mov eax, dword [ecx + 8]
mov bl, byte [eax + 0x15]
test bl, bl
jne 0x43c7bf
mov ecx, dword [eax]
mov bl, byte [ecx + 0x15]
test bl, bl
jne 0x43c7eb
mov eax, ecx
mov ecx, dword [eax]
mov bl, byte [ecx + 0x15]
test bl, bl
je 0x43c7b2
jmp 0x43c7eb
mov eax, dword [ecx + 4]
mov cl, byte [eax + 0x15]
test cl, cl
jne 0x43c7eb
lea esp, [esp]
mov ecx, dword [esi + 0x13d880]
cmp ecx, dword [eax + 8]
jne 0x43c7eb
mov dword [esi + 0x13d880], eax
mov eax, dword [eax + 4]
mov cl, byte [eax + 0x15]
test cl, cl
je 0x43c7d0
mov dword [esi + 0x13d880], eax
mov eax, dword [esi + 0x13d880]
cmp eax, dword [esi + 0x13d878]
jne 0x43c6d0
mov edx, dword [0x853e50]
xor ecx, ecx
cmp edx, 2
mov edx, dword [esi + 0x13fecc]
setne cl
add ecx, 2
xor eax, eax
mov dword [0x709510], eax
mov dword [0x709508], eax
mov dword [0x70950c], eax
mov eax, 1
mov dword [0x7094f0], ecx
mov dword [edx + 0x164], eax
mov ecx, dword [esp + 0x714]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp ax, 4
jne 0x43c992
mov eax, dword [0x853e50]
mov edx, 1
cmp eax, edx
mov word [0x21e98a4], cx
jne 0x43c8b7
mov eax, dword [esi + 0x13fecc]
cmp dword [eax + 0x160], edi
je 0x43c8b7
mov dword [eax + 0x164], edx
mov dword [0x709510], ecx
mov dword [0x709508], ecx
mov dword [0x70950c], ecx
mov dword [0x7094f0], edx
mov eax, edx
mov ecx, dword [esp + 0x714]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, dword [esi + 0x13d88c]
mov eax, dword [eax]
lea edi, [esi + 0x13d894]
mov dword [edi], eax
mov ecx, dword [esi + 0x13d88c]
or ebx, 0xffffffff
cmp eax, ecx
mov dword [esp + 0x60], 0x497423f0
je 0x43c992
mov ecx, dword [eax + 0x10]
test ecx, ecx
je 0x43c942
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x18]
fld dword [eax + 0x10]
mov eax, dword [ecx + 0x20]
fld dword [ecx + 0x28]
mov dword [esp + 0x38], eax
fxch st(2)
fsub st(2)
fstp dword [esp + 0x4c]
fstp st(1)
fsub dword [esp + 0x38]
fld st(0)
fmulp st(1)
fld dword [esp + 0x4c]
fmul dword [esp + 0x4c]
faddp st(1)
fsqrt
fabs
fcom dword [0x6a95c8]
fnstsw ax
test ah, 5
jp 0x43c940
fld dword [esp + 0x60]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x43c940
mov ebx, dword [ecx + 4]
fstp dword [esp + 0x60]
jmp 0x43c942
fstp st(0)
mov ecx, edi
call fcn.0040bbe0
mov ecx, dword [esi + 0x13d88c]
mov eax, dword [edi]
cmp eax, ecx
jne 0x43c8e0
cmp ebx, 0xffffffff
je 0x43c992
xor eax, eax
mov dword [0x709510], eax
mov dword [0x709508], eax
mov dword [0x70950c], eax
mov eax, 1
mov dword [0x853e50], eax
mov ecx, dword [esi + 0x13fecc]
mov dword [ecx + 0x164], eax
mov edx, dword [esi + 0x13fecc]
mov dword [edx + 0x160], ebx
mov dword [0x7094f0], eax
mov eax, dword [0x705f58]
test eax, eax
jne 0x43cb70
mov bl, byte [0x21ed127]
test bl, bl
jne 0x43c9d5
mov al, byte [0x21ed124]
test al, al
jne 0x43c9d5
mov ecx, dword [0x21ee220]
push 0x23
call fcn.00425c50
test al, al
je 0x43c9d5
mov ecx, dword [0x21f43b0]
xor eax, eax
test ecx, ecx
sete al
mov dword [0x21f43b0], eax
mov ecx, dword [esi + 0x13fecc]
mov eax, dword [ecx + 0xe0]
test eax, eax
jne 0x43ca87
test bl, bl
jne 0x43ca1a
mov al, byte [0x21ed124]
test al, al
jne 0x43ca1a
mov ecx, 0x851aa0
call fcn.004c3c70
test eax, eax
jne 0x43ca1a
mov edx, dword [0x705ea0]
mov ecx, dword [0x21ee220]
push edx
call fcn.00425c50
test al, al
jne 0x43ca24
cmp word [0x21e98a4], 1
jne 0x43ca81
mov eax, dword [esi + 0x13fecc]
cmp dword [eax + 0xdc], 3
je 0x43ca81
mov word [0x21e98a4], 0
mov ecx, dword [esi + 0x13fecc]
mov eax, dword [ecx + 0xdc]
cmp eax, 5
je 0x43ca60
test eax, eax
jne 0x43ca60
push 1
call fcn.00589c60
add esp, 4
jmp 0x442a31
cmp eax, 6
je 0x43cb8f
cmp eax, 7
jne 0x43cb8f
push 0
call fcn.00589c60
add esp, 4
jmp 0x442a31
mov bl, byte [0x21ed127]
mov eax, dword [esi + 0x13fecc]
mov ecx, dword [eax + 0xe0]
test ecx, ecx
jne 0x43cb70
mov eax, dword [eax + 0xdc]
cmp eax, 3
je 0x43cb70
cmp eax, 6
je 0x43cb70
cmp eax, 7
jne 0x43cb70
test bl, bl
jne 0x43cafe
mov al, byte [0x21ed124]
test al, al
jne 0x43cafe
mov ecx, 0x851aa0
call fcn.004c3c70
test eax, eax
mov edi, dword [0x21ee220]
jne 0x43cb04
mov edx, dword [0x705e90]
push edx
mov ecx, edi
call fcn.00425c50
test al, al
je 0x43cb04
push 0
call fcn.00589c60
add esp, 4
jmp 0x442a31
mov edi, dword [0x21ee220]
mov eax, dword [0x705ea4]
push eax
mov ecx, edi
call fcn.00425c50
test al, al
jne 0x43ca72
mov ecx, dword [0x705e94]
push ecx
mov ecx, edi
call fcn.00425c50
test al, al
jne 0x43ca72
mov edx, dword [0x705ea8]
push edx
mov ecx, edi
call fcn.00425c50
test al, al
jne 0x43ca72
mov eax, dword [0x705e98]
push eax
mov ecx, edi
call fcn.00425c50
test al, al
jne 0x43ca72
mov ecx, dword [0x705eac]
push ecx
mov ecx, edi
call fcn.00425c50
test al, al
jne 0x43ca72
cmp word [0x21e98a4], 3
jne 0x43cb8f
xor ebx, ebx
mov word [0x21e98a4], bx
mov dword [0x709524], 1
jmp 0x43cb9e
mov eax, dword [0x709524]
xor ebx, ebx
test eax, eax
je 0x43cc8e
cmp dword [0x705f58], ebx
je 0x43cc8e
mov eax, dword [esi + 0x13fecc]
mov ecx, dword [eax + 0xdc]
cmp ecx, 1
je 0x43cbc8
cmp ecx, ebx
je 0x43cbc8
cmp ecx, 3
jne 0x43cc8e
cmp dword [eax + 0x168], ebx
je 0x43cbd6
fld dword [esp + 0x28]
jmp 0x43cbda
fld dword [esp + 0x18]
fmul dword [0x705f54]
add eax, 0x154
mov dword [0x7094f0], ebx
fstp dword [esp + 0x44]
fld dword [0x21f4074]
fsub dword [0x21f4068]
fld dword [0x21f4070]
fsub dword [0x21f4064]
fld dword [0x21f406c]
fsub dword [0x21f4060]
fstp dword [esp + 0x2c]
mov edx, dword [esp + 0x2c]
mov dword [eax], edx
fstp dword [esp + 0x30]
mov ecx, dword [esp + 0x30]
mov dword [eax + 4], ecx
fstp dword [esp + 0x34]
mov edx, dword [esp + 0x34]
mov dword [eax + 8], edx
mov eax, dword [esi + 0x13fecc]
mov dword [eax + 0x158], ebx
mov eax, dword [esi + 0x13fecc]
add eax, 0x154
push eax
push eax
call fcn.005d19bf
fld dword [esp + 0x44]
mov eax, dword [esi + 0x13fecc]
fmul dword [eax + 0x15c]
add eax, 0x154
fld dword [esp + 0x44]
fmul dword [eax + 4]
fld dword [esp + 0x44]
fmul dword [eax]
mov eax, 1
mov dword [esp + 0x58], eax
mov dword [esi + 0x1400e0], eax
fstp dword [esp + 0x1c]
fstp dword [esp + 0x20]
fstp dword [esp + 0x24]
mov ecx, dword [esi + 0x13fecc]
cmp dword [ecx + 0x250], ebx
jne 0x440f6c
mov eax, dword [ecx + 0xdc]
cmp eax, 1
je 0x43ccbd
cmp eax, ebx
je 0x43ccbd
cmp eax, 3
je 0x43ccbd
cmp eax, 8
jne 0x440f6c
cmp dword [ecx + 0x168], ebx
je 0x43cccb
fld dword [esp + 0x28]
jmp 0x43cccf
fld dword [esp + 0x18]
cmp ecx, ebx
fmul dword [0x705f54]
fstp dword [esp + 0x28]
je 0x43d2cc
cmp dword [0x21ecd90], ebx
je 0x43d0dd
cmp dword [esi + 0x1400dc], ebx
je 0x43cd00
mov dword [esi + 0x1400dc], ebx
call fcn.00589600
cmp dword [0x709524], ebx
je 0x43cd0e
mov dword [0x709524], ebx
cmp dword [0x7094f0], ebx
je 0x43cd1c
mov dword [0x7094f0], ebx
mov ecx, dword [0x21ecd94]
push ecx
mov ecx, 0x7095e0
call fcn.00446890
cmp eax, ebx
je 0x43cd42
add eax, 0x10
mov edi, dword [eax]
mov ebx, dword [eax + 4]
mov edx, dword [eax + 8]
mov dword [esp + 0x34], edx
jmp 0x43cd65
mov eax, dword [esi + 0x13fecc]
add eax, 0x10
mov edi, dword [eax]
mov ebx, dword [eax + 4]
mov ecx, dword [eax + 8]
mov dword [esp + 0x34], ecx
fld dword [esp + 0x34]
fadd dword [0x6a960c]
fstp dword [esp + 0x34]
mov eax, dword [esi + 0x13fecc]
fld dword [esp + 0x34]
fsub dword [eax + 0x18]
add eax, 0x10
mov dword [esp + 0x2c], edi
fld dword [esp + 0x2c]
fsub dword [eax]
lea edx, [esp + 0x13c]
push edx
mov eax, edx
fstp dword [esp + 0x140]
push eax
mov dword [esp + 0x148], 0
fstp dword [esp + 0x14c]
call fcn.005d19bf
mov ecx, dword [esi + 0x13fecc]
fld dword [esp + 0x28]
mov edx, dword [esp + 0x13c]
add ecx, 0x154
mov dword [ecx], edx
mov eax, dword [esp + 0x140]
mov dword [ecx + 4], eax
mov edx, dword [esp + 0x144]
mov dword [ecx + 8], edx
mov eax, dword [esi + 0x13fecc]
mov ecx, dword [esp + 0x34]
add eax, 0x148
mov dword [eax], edi
mov dword [eax + 4], ebx
mov dword [eax + 8], ecx
fmul dword [esp + 0x144]
mov eax, dword [esi + 0x13fecc]
lea edx, [esp + 0x130]
fstp dword [esp + 0x54]
push edx
fld dword [esp + 0x144]
fmul dword [esp + 0x2c]
fstp dword [esp + 0x48]
fld dword [esp + 0x2c]
fmul dword [esp + 0x140]
fstp dword [esp + 0x74]
fld dword [eax + 0x150]
fsub dword [eax + 0x18]
fld dword [eax + 0x148]
fsub dword [eax + 0x10]
mov eax, edx
push eax
mov dword [esp + 0x13c], 0
fstp dword [esp + 0x138]
fstp dword [esp + 0x140]
call fcn.005d19bf
fld dword [esp + 0x138]
mov ecx, dword [esi + 0x13fecc]
fmul dword [esp + 0x28]
mov edx, dword [ecx + 0x148]
mov dword [esp + 0x2c], edx
fstp dword [esp + 0x60]
fld dword [esp + 0x134]
fmul dword [esp + 0x28]
fstp dword [esp + 0x4c]
fld dword [esp + 0x130]
fmul dword [esp + 0x28]
fstp dword [esp + 0x38]
fld dword [ecx + 0x18]
fld dword [ecx + 0x10]
fld dword [ecx + 0x150]
fsub st(2)
fstp dword [esp + 0x18]
fld dword [esp + 0x2c]
fsub st(1)
fstp st(2)
fstp st(0)
fld st(0)
fmulp st(1)
fld dword [esp + 0x18]
fmul dword [esp + 0x18]
faddp st(1)
fsqrt
fabs
fstp dword [esp + 0xfc]
fld dword [esp + 0x130]
fabs
fld dword [0x6a867c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x43d02e
fld dword [esp + 0x138]
fabs
fld dword [0x6a867c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x43d02e
mov edx, dword [esp + 0x138]
mov eax, dword [esp + 0x130]
add ecx, 0x154
mov dword [ecx], eax
mov dword [esp + 0x34], edx
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x30], 0
mov edx, dword [esp + 0x30]
mov dword [ecx + 4], edx
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x15c]
lea ecx, [esp + 0x154]
fsub dword [eax + 0x24]
push ecx
fld dword [eax + 0x158]
mov edx, ecx
fsub dword [eax + 0x20]
push edx
fld dword [eax + 0x154]
fsub dword [eax + 0x1c]
fstp dword [esp + 0x15c]
fst dword [esp + 0x160]
fld st(1)
fstp dword [esp + 0x164]
fld dword [esp + 0x15c]
fmul dword [esp + 0x15c]
fld st(1)
fmul st(2)
faddp st(1)
fld st(2)
fmul st(3)
faddp st(1)
fstp st(2)
fstp st(0)
fsqrt
fstp dword [esp + 0x20]
call fcn.005d19bf
fld dword [esp + 0x15c]
fmul dword [esp + 0x28]
fld dword [esp + 0x158]
fmul dword [esp + 0x28]
fld dword [esp + 0x28]
fmul dword [esp + 0x154]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fsqrt
fld dword [esp + 0x18]
fsub dword [0x6a95b4]
fcompp
fnstsw ax
test ah, 0x41
mov eax, dword [esi + 0x13fecc]
jne 0x43d002
fadd dword [eax + 0x1c]
add eax, 0x1c
fstp dword [eax]
fadd dword [eax + 4]
fstp dword [eax + 4]
fadd dword [eax + 8]
fstp dword [eax + 8]
jmp 0x43d021
lea ecx, [eax + 0x154]
fstp st(0)
mov edx, dword [ecx]
fstp st(0)
add eax, 0x1c
fstp st(0)
mov dword [eax], edx
mov edx, dword [ecx + 4]
mov dword [eax + 4], edx
mov ecx, dword [ecx + 8]
mov dword [eax + 8], ecx
mov edx, dword [esi + 0x13fecc]
mov dword [edx + 0x20], 0
fld dword [esp + 0x38]
fmul dword [esp + 0x38]
fld dword [esp + 0x4c]
fmul dword [esp + 0x4c]
faddp st(1)
fld dword [esp + 0x60]
fmul dword [esp + 0x60]
faddp st(1)
fsqrt
fld dword [esp + 0xfc]
fsub dword [0x6a95b8]
fcompp
fnstsw ax
test ah, 0x41
jne 0x43d0ae
mov eax, dword [esi + 0x13fecc]
cmp dword [eax + 0xdc], 3
je 0x43d079
mov dword [esp + 0x58], 1
fld dword [esp + 0x1c]
mov dword [esi + 0x1400e0], 1
fadd dword [esp + 0x70]
xor ebx, ebx
fstp dword [esp + 0x1c]
fld dword [esp + 0x20]
fadd dword [esp + 0x44]
fstp dword [esp + 0x20]
fld dword [esp + 0x24]
fadd dword [esp + 0x54]
fstp dword [esp + 0x24]
jmp 0x43d2cc
mov dword [esi + 0x1400e0], 1
mov eax, dword [esi + 0x13fecc]
lea ecx, [eax + 0x10]
mov edx, dword [ecx]
add eax, 0x148
mov dword [eax], edx
mov edx, dword [ecx + 4]
mov dword [eax + 4], edx
mov ecx, dword [ecx + 8]
mov dword [eax + 8], ecx
xor ebx, ebx
jmp 0x43d2cc
cmp dword [0x21ecda8], ebx
je 0x43d225
cmp dword [esi + 0x1400dc], ebx
je 0x43d0fc
mov dword [esi + 0x1400dc], ebx
call fcn.00589600
cmp dword [0x7094f0], ebx
je 0x43d10a
mov dword [0x7094f0], ebx
mov edi, dword [0x21ecdb8]
cmp edi, ebx
jge 0x43d1f9
call fcn.005bb061
cdq
mov ecx, 0x168
idiv ecx
push ecx
mov dword [esp + 0x230], 0
mov dword [esp + 0x234], 0
mov dword [esp + 0x238], 0x3f800000
mov dword [esp + 0x1ac], 0
mov dword [esp + 0x1b0], 0
mov dword [esp + 0x1b4], 0x3f800000
mov dword [esp + 0x1c], edx
fild dword [esp + 0x1c]
lea edx, [esp + 0x3b4]
fmul dword [0x6ab5d8]
fstp dword [esp]
push edx
call fcn.005d3149
lea eax, [esp + 0x3b0]
push eax
lea ecx, [esp + 0x230]
push ecx
lea edx, [esp + 0x1b0]
push edx
call fcn.005d1da5
lea eax, [esp + 0x1a8]
push eax
mov ecx, eax
push ecx
mov dword [esp + 0x238], 0
call fcn.005d19bf
mov edx, dword [esp + 0x1a8]
mov eax, dword [esp + 0x1ac]
mov ecx, dword [esp + 0x1b0]
mov dword [0x21ecdac], edx
mov dword [0x21ecdb0], eax
mov dword [0x21ecdb4], ecx
call fcn.005bb061
cdq
mov ecx, 0xfa0
idiv ecx
mov edi, edx
add edi, 0x3e8
fld dword [0x705f54]
fmul dword [0x6ab5c0]
call fcn.005ba9a8
mov ecx, dword [0x21ecdb0]
mov edx, dword [0x21ecdb4]
add edi, eax
mov eax, dword [0x21ecdac]
mov dword [0x21ecdb8], edi
jmp 0x43d263
cmp dword [0x21ecd98], ebx
je 0x43d2cc
cmp dword [esi + 0x1400dc], ebx
je 0x43d244
mov dword [esi + 0x1400dc], ebx
call fcn.00589600
cmp dword [0x7094f0], ebx
je 0x43d252
mov dword [0x7094f0], ebx
mov eax, dword [0x21ecd9c]
mov ecx, dword [0x21ecda0]
mov edx, dword [0x21ecda4]
mov edi, dword [esi + 0x13fecc]
fld dword [esp + 0x28]
add edi, 0x154
mov dword [edi], eax
mov dword [edi + 4], ecx
mov dword [edi + 8], edx
mov eax, dword [esi + 0x13fecc]
fmul dword [eax + 0x15c]
add eax, 0x154
fld dword [esp + 0x28]
fmul dword [eax + 4]
fld dword [esp + 0x28]
fmul dword [eax]
mov eax, 1
fld dword [esp + 0x1c]
mov dword [esp + 0x58], eax
mov dword [esi + 0x1400e0], eax
fadd st(1)
fstp dword [esp + 0x1c]
fstp st(0)
fld dword [esp + 0x20]
fadd st(1)
fstp dword [esp + 0x20]
fstp st(0)
fld dword [esp + 0x24]
fadd st(1)
fstp dword [esp + 0x24]
fstp st(0)
cmp dword [0x705f58], ebx
jne 0x43e9d9
mov al, byte [0x21ed127]
test al, al
jne 0x43d30e
mov al, byte [0x21ed124]
test al, al
jne 0x43d30e
mov ecx, 0x851aa0
call fcn.004c3c70
test eax, eax
jne 0x43d30e
mov edx, dword [0x705e9c]
mov ecx, dword [0x21ee220]
push edx
call fcn.00425c50
test al, al
jne 0x43d318
cmp word [0x21e98a4], 2
jne 0x43d324
mov word [0x21e98a4], bx
call fcn.005895d0
mov al, byte [0x21ed127]
test al, al
jne 0x43d360
mov al, byte [0x21ed124]
test al, al
jne 0x43d360
mov ecx, dword [0x21ee220]
push 0x26
call fcn.00425c50
test al, al
je 0x43d360
mov eax, dword [esi + 0x13fecc]
mov edx, dword [eax + 0x170]
xor ecx, ecx
cmp edx, ebx
sete cl
mov dword [eax + 0x170], ecx
test byte [0x709598], 1
mov edi, dword [0x6a8588]
jne 0x43d37d
or dword [0x709598], 1
call edi
mov dword [0x709594], eax
test byte [0x709598], 2
jne 0x43d394
or dword [0x709598], 2
call edi
mov dword [0x709590], eax
test byte [0x709598], 4
jne 0x43d3ab
or dword [0x709598], 4
call edi
mov dword [0x70958c], eax
test byte [0x709598], 8
jne 0x43d3c2
or dword [0x709598], 8
call edi
mov dword [0x709588], eax
test byte [0x709598], 0x10
jne 0x43d3f0
or dword [0x709598], 0x10
mov dword [0x70957c], 0
mov dword [0x709580], 0
mov dword [0x709584], 0
mov edx, dword [esi + 0x13fecc]
mov eax, dword [edx + 0xe0]
xor ebx, ebx
test eax, eax
jne 0x43e26c
mov al, byte [0x21ed127]
test al, al
jne 0x43d7b8
mov al, byte [0x21ed124]
test al, al
jne 0x43d7b8
mov ecx, 0x851aa0
call fcn.004c3c70
test eax, eax
mov edi, dword [0x21ee220]
jne 0x43d5df
mov eax, dword [0x705e98]
push eax
mov ecx, edi
call fcn.00438630
test al, al
je 0x43d5df
mov ecx, dword [0x705e94]
push ecx
mov ecx, edi
call fcn.00438630
test al, al
je 0x43d5df
mov eax, dword [0x709578]
test eax, eax
mov ebx, 1
mov dword [esi + 0x1400e0], ebx
mov dword [0x7094f0], 0
jne 0x43d4a3
mov edx, dword [esi + 0x13fecc]
add edx, 0x1c
mov eax, dword [edx]
mov dword [0x70957c], eax
mov ecx, dword [edx + 4]
mov dword [0x709580], ecx
mov edx, dword [edx + 8]
mov dword [0x709584], edx
mov eax, dword [esi + 0x13fecc]
fld dword [0x709580]
fmul dword [eax + 0x30]
add eax, 0x28
fld dword [0x709584]
mov dword [0x709578], ebx
fmul dword [eax + 4]
fsubp st(1)
fstp dword [esp + 0x2c]
fld dword [0x709584]
fmul dword [eax]
fld dword [0x70957c]
fmul dword [eax + 8]
fsubp st(1)
fstp dword [esp + 0x30]
mov ecx, dword [esp + 0x30]
fld dword [0x70957c]
fmul dword [eax + 4]
fld dword [0x709580]
fmul dword [eax]
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x10c], eax
mov dword [esp + 0x110], ecx
fsubp st(1)
lea eax, [esp + 0x10c]
push eax
mov ecx, eax
fstp dword [esp + 0x38]
mov edx, dword [esp + 0x38]
fld dword [0x70957c]
mov dword [esp + 0x118], edx
fadd dword [esp + 0x110]
push ecx
fstp dword [esp + 0x114]
fld dword [0x709580]
fadd dword [esp + 0x118]
fstp dword [esp + 0x118]
fld dword [0x709584]
fadd dword [esp + 0x11c]
fstp dword [esp + 0x11c]
call fcn.005d19bf
mov edx, dword [esi + 0x13fecc]
fld dword [esp + 0x28]
mov eax, dword [esp + 0x10c]
add edx, 0x154
mov dword [edx], eax
mov ecx, dword [esp + 0x110]
mov dword [edx + 4], ecx
mov eax, dword [esp + 0x114]
mov dword [edx + 8], eax
mov eax, dword [esi + 0x13fecc]
fmul dword [eax + 0x15c]
add eax, 0x154
fld dword [esp + 0x28]
mov dword [esp + 0x58], ebx
fmul dword [eax + 4]
xor edi, edi
fld dword [esp + 0x28]
fmul dword [eax]
fld dword [esp + 0x1c]
fadd st(1)
fstp dword [esp + 0x1c]
fstp st(0)
fld dword [esp + 0x20]
fadd st(1)
fstp dword [esp + 0x20]
fstp st(0)
fld dword [esp + 0x24]
fadd st(1)
fstp dword [esp + 0x24]
fstp st(0)
jmp 0x43e12e
mov al, byte [0x21ed127]
test al, al
jne 0x43d7b8
mov al, byte [0x21ed124]
test al, al
jne 0x43d7b8
mov ecx, 0x851aa0
call fcn.004c3c70
test eax, eax
jne 0x43d7b8
mov ecx, dword [0x705eac]
mov edi, dword [0x21ee220]
push ecx
mov ecx, edi
call fcn.00438630
test al, al
je 0x43d7b8
mov edx, dword [0x705e94]
push edx
mov ecx, edi
call fcn.00438630
test al, al
je 0x43d7b8
mov eax, dword [0x709578]
test eax, eax
mov ebx, 1
mov dword [esi + 0x1400e0], ebx
mov dword [0x7094f0], 0
jne 0x43d67d
mov eax, dword [esi + 0x13fecc]
add eax, 0x1c
mov ecx, dword [eax]
mov dword [0x70957c], ecx
mov edx, dword [eax + 4]
mov dword [0x709580], edx
mov eax, dword [eax + 8]
mov dword [0x709584], eax
mov eax, dword [esi + 0x13fecc]
fld dword [0x709584]
fmul dword [eax + 0x2c]
add eax, 0x28
fld dword [0x709580]
mov dword [0x709578], ebx
fmul dword [eax + 8]
fsubp st(1)
fstp dword [esp + 0x2c]
mov ecx, dword [esp + 0x2c]
fld dword [0x70957c]
fmul dword [eax + 8]
fld dword [0x709584]
fmul dword [eax]
fsubp st(1)
fstp dword [esp + 0x30]
mov edx, dword [esp + 0x30]
fld dword [0x709580]
fmul dword [eax]
fld dword [0x70957c]
fmul dword [eax + 4]
mov dword [esp + 0x100], ecx
mov dword [esp + 0x104], edx
lea ecx, [esp + 0x100]
fsubp st(1)
push ecx
mov edx, ecx
push edx
fstp dword [esp + 0x3c]
mov eax, dword [esp + 0x3c]
fld dword [0x70957c]
mov dword [esp + 0x110], eax
fadd dword [esp + 0x108]
fstp dword [esp + 0x108]
fld dword [0x709580]
fadd dword [esp + 0x10c]
fstp dword [esp + 0x10c]
fld dword [0x709584]
fadd dword [esp + 0x110]
fstp dword [esp + 0x110]
call fcn.005d19bf
mov eax, dword [esi + 0x13fecc]
fld dword [esp + 0x28]
mov ecx, dword [esp + 0x100]
add eax, 0x154
mov dword [eax], ecx
mov edx, dword [esp + 0x104]
mov dword [eax + 4], edx
mov ecx, dword [esp + 0x108]
mov dword [eax + 8], ecx
mov eax, dword [esi + 0x13fecc]
fmul dword [eax + 0x15c]
add eax, 0x154
fld dword [esp + 0x28]
mov dword [esp + 0x58], ebx
fmul dword [eax + 4]
xor edi, edi
fld dword [esp + 0x28]
fmul dword [eax]
fld dword [esp + 0x1c]
fadd st(1)
fstp dword [esp + 0x1c]
fstp st(0)
fld dword [esp + 0x20]
fadd st(1)
fstp dword [esp + 0x20]
fstp st(0)
fld dword [esp + 0x24]
fadd st(1)
fstp dword [esp + 0x24]
fstp st(0)
jmp 0x43e12e
mov al, byte [0x21ed127]
xor edi, edi
test al, al
mov dword [0x709578], edi
jne 0x43d8a8
mov al, byte [0x21ed124]
test al, al
jne 0x43d8a8
mov ecx, 0x851aa0
call fcn.004c3c70
test eax, eax
jne 0x43d861
mov edx, dword [0x705e98]
mov ecx, dword [0x21ee220]
push edx
call fcn.00438650
test al, al
je 0x43d861
mov eax, dword [esi + 0x13fecc]
cmp dword [eax + 0xdc], 3
je 0x43d861
mov dword [0x709524], edi
call dword [0x6a8588]
sub eax, dword [0x70958c]
cmp eax, 0x12c
jbe 0x43d83d
mov dword [0x70952c], edi
call dword [0x6a8588]
mov dword [0x70958c], eax
jmp 0x43d861
mov eax, dword [esi + 0x13fecc]
mov cl, byte [eax + 0x378]
test cl, cl
mov dword [0x70952c], 1
jne 0x43d861
mov dword [eax + 0xdc], 3
mov al, byte [0x21ed127]
test al, al
jne 0x43d8a8
mov al, byte [0x21ed124]
test al, al
jne 0x43d8a8
mov ecx, 0x851aa0
call fcn.004c3c70
test eax, eax
jne 0x43d8a8
mov ecx, dword [0x705e98]
push ecx
mov ecx, dword [0x21ee220]
call fcn.00438630
test al, al
je 0x43d8a8
mov ecx, dword [esi + 0x13fecc]
mov eax, dword [ecx + 0xdc]
cmp eax, 3
jne 0x43d8c9
cmp dword [0x70952c], edi
je 0x43dc3f
mov ecx, dword [esi + 0x13fecc]
mov eax, dword [ecx + 0xdc]
cmp eax, 3
jne 0x43dc3f
cmp dword [0x70952c], edi
je 0x43d8ed
cmp eax, 3
jne 0x43d8ed
push 0xe
call fcn.00411e20
test eax, eax
je 0x43d8ff
push 0xa
call fcn.00589c60
add esp, 4
jmp 0x43d8ff
mov dword [esp + 0x58], 3
mov dword [ecx + 0xdc], 1
mov dword [esi + 0x1400e0], 1
mov ecx, dword [esi + 0x13fecc]
cmp dword [ecx + 0xcc], 0xe
mov dword [0x7094f0], edi
mov dword [0x709528], edi
mov dword [0x709530], edi
jne 0x43d9ea
fld dword [ecx + 0xc8]
fcomp dword [0x6a95ec]
fnstsw ax
test ah, 5
jp 0x43dc3a
fld dword [ecx + 0x158]
fmul dword [ecx + 0x30]
fld dword [ecx + 0x15c]
fmul dword [ecx + 0x2c]
fsubp st(1)
fstp dword [esp + 0x2c]
mov edx, dword [esp + 0x2c]
fld dword [ecx + 0x28]
fmul dword [ecx + 0x15c]
fld dword [ecx + 0x154]
fmul dword [ecx + 0x30]
fsubp st(1)
fstp dword [esp + 0x30]
mov eax, dword [esp + 0x30]
fld dword [ecx + 0x154]
fmul dword [ecx + 0x2c]
fld dword [ecx + 0x28]
fmul dword [ecx + 0x158]
mov dword [esp + 0x1cc], edx
lea edx, [esp + 0x1cc]
mov dword [esp + 0x1d0], eax
fsubp st(1)
push edx
mov eax, edx
push eax
fstp dword [esp + 0x3c]
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x1dc], ecx
call fcn.005d19bf
fld dword [esp + 0x1d4]
fmul dword [0x6a9778]
fld dword [esp + 0x1d0]
fmul dword [0x6a9778]
fld dword [esp + 0x1cc]
fmul dword [0x6a9778]
jmp 0x43dbf6
fld dword [ecx + 0x158]
fmul dword [ecx + 0x30]
fld dword [ecx + 0x2c]
fmul dword [ecx + 0x15c]
fsubp st(1)
fstp dword [esp + 0x2c]
fld dword [ecx + 0x28]
fmul dword [ecx + 0x15c]
fld dword [ecx + 0x154]
fmul dword [ecx + 0x30]
fsubp st(1)
fstp dword [esp + 0x30]
mov edx, dword [esp + 0x30]
fld dword [ecx + 0x2c]
fmul dword [ecx + 0x154]
fld dword [ecx + 0x158]
fmul dword [ecx + 0x28]
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0xa8], ecx
lea ecx, [esp + 0xa8]
fsubp st(1)
mov dword [esp + 0xac], edx
push ecx
mov edx, ecx
fstp dword [esp + 0x38]
mov eax, dword [esp + 0x38]
push edx
mov dword [esp + 0xb8], eax
call fcn.005d19bf
mov eax, dword [esi + 0x13fecc]
movzx ecx, byte [eax + 0x275]
cmp ecx, 4
ja case.default.0x43da79
jmp dword [ecx*4 + 0x442a50]
fld dword [esp + 0xb0]
fmul dword [0x6a95b8]
fld dword [esp + 0xac]
fmul dword [0x6a95b8]
fld dword [esp + 0xa8]
fmul dword [0x6a95b8]
jmp 0x43db69
fld dword [esp + 0xb0]
fmul dword [0x705f54]
fld dword [esp + 0xac]
fmul dword [0x705f54]
fld dword [esp + 0xa8]
fmul dword [0x705f54]
fld dword [esp + 0x1c]
fadd st(1)
fstp dword [esp + 0x1c]
fstp st(0)
fld dword [esp + 0x20]
fadd st(1)
fstp dword [esp + 0x20]
fstp st(0)
fld dword [esp + 0x24]
fadd st(1)
fstp dword [esp + 0x24]
fstp st(0)
jmp case.default.0x43da79
fld dword [esp + 0xb0]
fmul dword [0x6a9764]
fld dword [esp + 0xac]
fmul dword [0x6a9764]
fld dword [esp + 0xa8]
fmul dword [0x6a9764]
jmp 0x43db69
fld dword [esp + 0xb0]
fadd st(0), st(0)
fld dword [esp + 0xac]
fadd st(0), st(0)
fld dword [esp + 0xa8]
fadd st(0), st(0)
jmp 0x43db69
fld dword [esp + 0xb0]
fmul dword [0x6a9760]
fld dword [esp + 0xac]
fmul dword [0x6a9760]
fld dword [esp + 0xa8]
fmul dword [0x6a9760]
fstp dword [esp + 0x70]
fxch st(1)
fmul dword [0x705f54]
fstp dword [esp + 0x18]
fmul dword [0x705f54]
fld dword [esp + 0x70]
fmul dword [0x705f54]
fld dword [esp + 0x1c]
fadd st(1)
fstp dword [esp + 0x1c]
fstp st(0)
fld dword [esp + 0x20]
fadd st(1)
fstp dword [esp + 0x20]
fstp st(0)
fld dword [esp + 0x24]
fadd dword [esp + 0x18]
fstp dword [esp + 0x24]
mov cl, byte [eax + 0x378]
test cl, cl
je 0x43dc3a
mov ecx, dword [esp + 0xa8]
add eax, 0x1c
mov dword [eax], ecx
mov edx, dword [esp + 0xac]
mov dword [eax + 4], edx
mov ecx, dword [esp + 0xb0]
mov dword [eax + 8], ecx
fld dword [esp + 0xb0]
fadd st(0), st(0)
fld dword [esp + 0xac]
fadd st(0), st(0)
fld dword [esp + 0xa8]
fadd st(0), st(0)
fstp dword [esp + 0x70]
fxch st(1)
fmul dword [0x705f54]
fstp dword [esp + 0x18]
fmul dword [0x705f54]
fld dword [esp + 0x70]
fmul dword [0x705f54]
fld dword [esp + 0x1c]
fadd st(1)
fstp dword [esp + 0x1c]
fstp st(0)
fld dword [esp + 0x20]
fadd st(1)
fstp dword [esp + 0x20]
fstp st(0)
fld dword [esp + 0x24]
fadd dword [esp + 0x18]
fstp dword [esp + 0x24]
mov ebx, 1
mov al, byte [0x21ed127]
test al, al
jne 0x43dd27
mov al, byte [0x21ed124]
test al, al
jne 0x43dd27
mov ecx, 0x851aa0
call fcn.004c3c70
test eax, eax
jne 0x43dce0
mov edx, dword [0x705eac]
mov ecx, dword [0x21ee220]
push edx
call fcn.00438650
test al, al
je 0x43dce0
mov eax, dword [esi + 0x13fecc]
cmp dword [eax + 0xdc], 3
je 0x43dce0
mov dword [0x709524], edi
call dword [0x6a8588]
sub eax, dword [0x709588]
cmp eax, 0x12c
jbe 0x43dcbc
mov dword [0x709530], edi
call dword [0x6a8588]
mov dword [0x709588], eax
jmp 0x43dce0
mov eax, dword [esi + 0x13fecc]
mov cl, byte [eax + 0x378]
test cl, cl
mov dword [0x709530], 1
jne 0x43dce0
mov dword [eax + 0xdc], 3
mov al, byte [0x21ed127]
test al, al
jne 0x43dd27
mov al, byte [0x21ed124]
test al, al
jne 0x43dd27
mov ecx, 0x851aa0
call fcn.004c3c70
test eax, eax
jne 0x43dd27
mov ecx, dword [0x705eac]
push ecx
mov ecx, dword [0x21ee220]
call fcn.00438630
test al, al
je 0x43dd27
mov ecx, dword [esi + 0x13fecc]
mov eax, dword [ecx + 0xdc]
cmp eax, 3
jne 0x43dd48
cmp dword [0x709530], edi
je 0x43e12e
mov ecx, dword [esi + 0x13fecc]
mov eax, dword [ecx + 0xdc]
cmp eax, 3
jne 0x43e12e
cmp dword [0x709530], edi
je 0x43dd6c
cmp eax, 3
jne 0x43dd6c
push 0xf
call fcn.00411e20
test eax, eax
je 0x43dd7e
push 0xb
call fcn.00589c60
add esp, 4
jmp 0x43dd7e
mov dword [esp + 0x58], 4
mov dword [ecx + 0xdc], 1
mov dword [esi + 0x1400e0], 1
mov ecx, dword [esi + 0x13fecc]
cmp dword [ecx + 0xcc], 0xf
mov dword [0x7094f0], edi
mov dword [0x709528], edi
mov dword [0x70952c], edi
jne 0x43dea9
fld dword [ecx + 0xc8]
fcomp dword [0x6a95ec]
fnstsw ax
test ah, 5
jp 0x43e129
fld dword [ecx + 0x15c]
fmul dword [ecx + 0x2c]
fld dword [ecx + 0x158]
fmul dword [ecx + 0x30]
fsubp st(1)
fstp dword [esp + 0x2c]
mov edx, dword [esp + 0x2c]
fld dword [ecx + 0x154]
fmul dword [ecx + 0x30]
fld dword [ecx + 0x15c]
fmul dword [ecx + 0x28]
fsubp st(1)
fstp dword [esp + 0x30]
mov eax, dword [esp + 0x30]
fld dword [ecx + 0x28]
fmul dword [ecx + 0x158]
fld dword [ecx + 0x154]
fmul dword [ecx + 0x2c]
mov dword [esp + 0x1c0], edx
lea edx, [esp + 0x1c0]
mov dword [esp + 0x1c4], eax
fsubp st(1)
push edx
mov eax, edx
push eax
fstp dword [esp + 0x3c]
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x1d0], ecx
call fcn.005d19bf
fld dword [esp + 0x1c8]
fmul dword [0x6a9778]
fld dword [esp + 0x1c4]
fmul dword [0x6a9778]
fld dword [esp + 0x1c0]
fmul dword [0x6a9778]
fstp dword [esp + 0x70]
fxch st(1)
fmul dword [0x705f54]
fstp dword [esp + 0x18]
fmul dword [0x705f54]
fld dword [esp + 0x70]
fmul dword [0x705f54]
fld dword [esp + 0x1c]
fadd st(1)
fstp dword [esp + 0x1c]
fstp st(0)
fld dword [esp + 0x20]
fadd st(1)
fstp dword [esp + 0x20]
fstp st(0)
fld dword [esp + 0x24]
fadd dword [esp + 0x18]
jmp 0x43e125
fld dword [ecx + 0x15c]
fmul dword [ecx + 0x2c]
fld dword [ecx + 0x30]
fmul dword [ecx + 0x158]
fsubp st(1)
fstp dword [esp + 0x2c]
fld dword [ecx + 0x30]
fmul dword [ecx + 0x154]
fld dword [ecx + 0x28]
fmul dword [ecx + 0x15c]
fsubp st(1)
fstp dword [esp + 0x30]
mov edx, dword [esp + 0x30]
fld dword [ecx + 0x28]
fmul dword [ecx + 0x158]
fld dword [ecx + 0x154]
fmul dword [ecx + 0x2c]
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x9c], ecx
lea ecx, [esp + 0x9c]
fsubp st(1)
mov dword [esp + 0xa0], edx
push ecx
mov edx, ecx
fstp dword [esp + 0x38]
mov eax, dword [esp + 0x38]
push edx
mov dword [esp + 0xac], eax
call fcn.005d19bf
mov eax, dword [esi + 0x13fecc]
movzx ecx, byte [eax + 0x275]
cmp ecx, 4
ja case.default.0x43df38
jmp dword [ecx*4 + 0x442a64]
fld dword [esp + 0xa4]
fmul dword [0x6a95b8]
fld dword [esp + 0xa0]
fmul dword [0x6a95b8]
fld dword [esp + 0x9c]
fmul dword [0x6a95b8]
fstp dword [esp + 0x70]
fxch st(1)
fmul dword [0x705f54]
fstp dword [esp + 0x18]
fmul dword [0x705f54]
fld dword [esp + 0x70]
fmul dword [0x705f54]
fld dword [esp + 0x1c]
fadd st(1)
fstp dword [esp + 0x1c]
fstp st(0)
fld dword [esp + 0x20]
fadd st(1)
fstp dword [esp + 0x20]
fstp st(0)
fld dword [esp + 0x24]
fadd dword [esp + 0x18]
jmp 0x43e0a0
fld dword [esp + 0xa4]
fmul dword [0x705f54]
fld dword [esp + 0xa0]
fmul dword [0x705f54]
fld dword [esp + 0x9c]
fmul dword [0x705f54]
fld dword [esp + 0x1c]
fadd st(1)
fstp dword [esp + 0x1c]
fstp st(0)
fld dword [esp + 0x20]
fadd st(1)
fstp dword [esp + 0x20]
fstp st(0)
fld dword [esp + 0x24]
fadd st(1)
fstp dword [esp + 0x24]
fstp st(0)
jmp case.default.0x43df38
fld dword [esp + 0xa4]
fmul dword [0x6a9764]
fld dword [esp + 0xa0]
fmul dword [0x6a9764]
fld dword [esp + 0x9c]
fmul dword [0x6a9764]
jmp 0x43e068
fld dword [esp + 0xa4]
fadd st(0), st(0)
fld dword [esp + 0xa0]
fadd st(0), st(0)
fld dword [esp + 0x9c]
fadd st(0), st(0)
jmp 0x43e068
fld dword [esp + 0xa4]
fmul dword [0x6a9760]
fld dword [esp + 0xa0]
fmul dword [0x6a9760]
fld dword [esp + 0x9c]
fmul dword [0x6a9760]
fstp dword [esp + 0x70]
fxch st(1)
fmul dword [0x705f54]
fstp dword [esp + 0x18]
fmul dword [0x705f54]
fld dword [esp + 0x70]
fmul dword [0x705f54]
fadd dword [esp + 0x1c]
fstp dword [esp + 0x1c]
fadd dword [esp + 0x20]
fstp dword [esp + 0x20]
fld dword [esp + 0x18]
fadd dword [esp + 0x24]
fstp dword [esp + 0x24]
mov cl, byte [eax + 0x378]
test cl, cl
je 0x43e129
mov ecx, dword [esp + 0x9c]
add eax, 0x1c
mov dword [eax], ecx
mov edx, dword [esp + 0xa0]
mov dword [eax + 4], edx
mov ecx, dword [esp + 0xa4]
mov dword [eax + 8], ecx
fld dword [esp + 0xa4]
fadd st(0), st(0)
fld dword [esp + 0xa0]
fadd st(0), st(0)
fld dword [esp + 0x9c]
fadd st(0), st(0)
fstp dword [esp + 0x70]
fxch st(1)
fmul dword [0x705f54]
fstp dword [esp + 0x18]
fmul dword [0x705f54]
fld dword [esp + 0x70]
fmul dword [0x705f54]
fadd dword [esp + 0x1c]
fstp dword [esp + 0x1c]
fadd dword [esp + 0x20]
fstp dword [esp + 0x20]
fld dword [esp + 0x18]
fadd dword [esp + 0x24]
fstp dword [esp + 0x24]
mov ebx, 1
mov al, byte [0x21ed127]
test al, al
jne 0x43e264
mov al, byte [0x21ed124]
test al, al
jne 0x43e264
mov edx, dword [esi + 0x13fecc]
mov eax, dword [edx + 0xdc]
cmp eax, 3
je 0x43e264
cmp eax, 2
je 0x43e264
cmp eax, 9
je 0x43e264
mov ecx, 0x851aa0
call fcn.004c3c70
test eax, eax
jne 0x43e25d
mov eax, dword [0x705eb4]
mov ecx, dword [0x21ee220]
push eax
call fcn.00425c50
test al, al
je 0x43e25d
mov al, byte [0x709540]
test al, al
jne 0x43e264
mov eax, dword [esi + 0x13fecc]
cmp dword [eax + 0x288], edi
mov byte [0x709540], 1
mov dword [0x709528], edi
mov dword [0x70952c], edi
mov dword [0x709530], edi
mov dword [0x7094fc], 0x41100000
mov dword [0x709500], 1
je 0x43e21d
mov cl, byte [eax + 0x378]
test cl, cl
je 0x43e264
mov ecx, esi
mov dword [eax + 0xdc], 3
mov dword [0x7094f8], 1
mov dword [0x709500], edi
call fcn.00439510
push 2
call fcn.00589c60
add esp, 4
jmp 0x43e264
mov dword [eax + 0xdc], 3
mov ecx, dword [esi + 0x13fecc]
mov dword [ecx + 0xd8], edi
mov edx, dword [esi + 0x13fecc]
mov dword [edx + 0xd4], edi
mov eax, dword [esi + 0x13fecc]
mov dword [eax + 0xc8], edi
mov ecx, dword [esi + 0x13fecc]
mov dword [ecx + 0xcc], 8
jmp 0x43e264
mov byte [0x709540], 0
cmp ebx, edi
jne 0x43e9d9
mov eax, dword [0x7094f0]
xor ebx, ebx
cmp eax, ebx
je 0x43e282
mov dword [0x709524], ebx
jmp 0x43e394
mov al, byte [0x21ed127]
test al, al
jne 0x43e3ca
mov al, byte [0x21ed124]
test al, al
jne 0x43e3ca
mov ecx, 0x851aa0
call fcn.004c3c70
test eax, eax
jne 0x43e2f6
mov edx, dword [0x705eb0]
mov ecx, dword [0x21ee220]
push edx
call fcn.00438650
test al, al
je 0x43e2f6
mov edi, dword [0x6a8588]
call edi
sub eax, dword [0x709594]
cmp eax, 0x12c
jbe 0x43e2e7
mov dword [0x709524], ebx
call edi
mov dword [0x709594], eax
jmp 0x43e394
mov dword [0x709524], 1
jmp 0x43e394
mov al, byte [0x21ed127]
test al, al
jne 0x43e3ca
mov al, byte [0x21ed124]
test al, al
jne 0x43e3ca
mov ecx, 0x851aa0
call fcn.004c3c70
test eax, eax
jne 0x43e394
mov eax, dword [0x705ea8]
mov ecx, dword [0x21ee220]
push eax
call fcn.00438650
test al, al
je 0x43e394
mov ecx, dword [esi + 0x13fecc]
cmp dword [ecx + 0xdc], 3
je 0x43e394
mov edi, dword [0x6a8588]
mov dword [0x709524], ebx
call edi
sub eax, dword [0x709590]
cmp eax, 0x12c
jbe 0x43e370
mov dword [0x709528], ebx
call edi
mov dword [0x709590], eax
jmp 0x43e394
mov eax, dword [esi + 0x13fecc]
mov cl, byte [eax + 0x378]
test cl, cl
mov dword [0x709528], 1
jne 0x43e394
mov dword [eax + 0xdc], 3
mov al, byte [0x21ed127]
test al, al
jne 0x43e3ca
mov al, byte [0x21ed124]
test al, al
jne 0x43e3ca
mov ecx, 0x851aa0
call fcn.004c3c70
test eax, eax
jne 0x43e3ca
mov edx, dword [0x705ea8]
mov ecx, dword [0x21ee220]
push edx
call fcn.00438630
test al, al
jne 0x43e3e9
cmp dword [0x709528], ebx
je 0x43e5ad
mov eax, dword [esi + 0x13fecc]
cmp dword [eax + 0xdc], 3
jne 0x43e5ad
cmp dword [0x709528], ebx
je 0x43e417
mov ecx, dword [esi + 0x13fecc]
cmp dword [ecx + 0xdc], 3
jne 0x43e417
push 0xd
call fcn.00411e20
test eax, eax
je 0x43e41f
push 3
call fcn.00589c60
add esp, 4
jmp 0x43e41f
mov dword [esp + 0x58], 2
fld dword [0x21f4074]
mov ecx, dword [esi + 0x13fecc]
fsub dword [0x21f4068]
add ecx, 0x154
fld dword [0x21f4070]
mov dword [0x7094f0], ebx
fsub dword [0x21f4064]
mov dword [0x70952c], ebx
fld dword [0x21f406c]
mov dword [0x709530], ebx
fsub dword [0x21f4060]
fstp dword [esp + 0x2c]
mov edx, dword [esp + 0x2c]
mov dword [ecx], edx
fstp dword [esp + 0x30]
mov eax, dword [esp + 0x30]
mov dword [ecx + 4], eax
fstp dword [esp + 0x34]
mov edx, dword [esp + 0x34]
mov dword [ecx + 8], edx
mov eax, dword [esi + 0x13fecc]
mov dword [eax + 0x158], ebx
mov eax, dword [esi + 0x13fecc]
add eax, 0x154
push eax
push eax
call fcn.005d19bf
mov eax, dword [esi + 0x13fecc]
cmp dword [eax + 0xcc], 0xd
je case.0x43e4be.4
movzx ecx, byte [eax + 0x275]
cmp ecx, 4
ja case.default.0x43e4be
jmp dword [ecx*4 + 0x442a78]
fld dword [0x705f54]
fmul dword [0x6a95b8]
jmp 0x43e4ff
fld dword [0x705f54]
jmp 0x43e4ff
fld dword [0x705f54]
fmul dword [0x6a9764]
jmp 0x43e4ff
fld dword [0x705f54]
fadd st(0), st(0)
jmp 0x43e4ff
fld dword [0x705f54]
fmul dword [0x6a9760]
fld st(0)
fmul dword [eax + 0x15c]
fld st(1)
fmul dword [eax + 0x158]
fstp dword [esp + 0x18]
fxch st(1)
fmul dword [eax + 0x154]
fstp dword [esp + 0x70]
fchs
fld dword [esp + 0x18]
fchs
fld dword [esp + 0x70]
fchs
fadd dword [esp + 0x1c]
fstp dword [esp + 0x1c]
fadd dword [esp + 0x20]
fstp dword [esp + 0x20]
fadd dword [esp + 0x24]
fstp dword [esp + 0x24]
mov cl, byte [eax + 0x378]
test cl, cl
je 0x43e59d
fld dword [0x705f54]
fadd st(0), st(0)
fld st(0)
fmul dword [eax + 0x15c]
fld st(1)
fmul dword [eax + 0x158]
fstp dword [esp + 0x18]
fxch st(1)
fmul dword [eax + 0x154]
fstp dword [esp + 0x70]
fchs
fld dword [esp + 0x18]
fchs
fld dword [esp + 0x70]
fchs
fadd dword [esp + 0x1c]
fstp dword [esp + 0x1c]
fadd dword [esp + 0x20]
fstp dword [esp + 0x20]
fadd dword [esp + 0x24]
fstp dword [esp + 0x24]
mov edi, 1
mov dword [esi + 0x1400e0], edi
jmp 0x43e6b3
mov al, byte [0x21ed127]
test al, al
jne 0x43e5e3
mov al, byte [0x21ed124]
test al, al
jne 0x43e5e3
mov ecx, 0x851aa0
call fcn.004c3c70
test eax, eax
jne 0x43e5e3
mov ecx, dword [0x705e94]
push ecx
mov ecx, dword [0x21ee220]
call fcn.00438630
test al, al
jne 0x43e5ef
cmp dword [0x709524], ebx
je 0x43e6ae
fld dword [0x21f4074]
mov edx, dword [esi + 0x13fecc]
fsub dword [0x21f4068]
add edx, 0x154
fld dword [0x21f4070]
mov dword [0x7094f0], ebx
fsub dword [0x21f4064]
fld dword [0x21f406c]
fsub dword [0x21f4060]
fstp dword [esp + 0x2c]
mov eax, dword [esp + 0x2c]
mov dword [edx], eax
fstp dword [esp + 0x30]
mov ecx, dword [esp + 0x30]
mov dword [edx + 4], ecx
fstp dword [esp + 0x34]
mov eax, dword [esp + 0x34]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0x13fecc]
mov dword [ecx + 0x158], ebx
mov eax, dword [esi + 0x13fecc]
add eax, 0x154
push eax
push eax
call fcn.005d19bf
fld dword [esp + 0x28]
mov eax, dword [esi + 0x13fecc]
fmul dword [eax + 0x15c]
add eax, 0x154
fld dword [esp + 0x28]
mov edi, 1
fmul dword [eax + 4]
mov dword [esp + 0x58], edi
fld dword [esp + 0x28]
fmul dword [eax]
mov dword [esi + 0x1400e0], edi
fadd dword [esp + 0x1c]
fstp dword [esp + 0x1c]
fadd dword [esp + 0x20]
fstp dword [esp + 0x20]
fadd dword [esp + 0x24]
fstp dword [esp + 0x24]
jmp 0x43e6b3
mov edi, 1
mov al, byte [0x21ed127]
test al, al
jne 0x43e9d9
mov al, byte [0x21ed124]
test al, al
jne 0x43e9d9
mov edx, dword [0x705e90]
mov ecx, dword [0x21ee220]
push edx
call fcn.00438630
test al, al
je 0x43e860
mov ecx, 0x851aa0
call fcn.004c3c70
test eax, eax
jne 0x43e846
fld dword [esp + 0x28]
mov eax, dword [esi + 0x13fecc]
fmul dword [0x6a95ec]
add eax, 0x154
mov edx, eax
mov ecx, dword [edx]
fmul dword [0x6ab5d8]
mov dword [esp + 0x2c], ecx
mov ecx, dword [edx + 4]
fst dword [esp + 0x18]
fcos
mov edx, dword [edx + 8]
mov dword [esp + 0x34], edx
mov dword [0x7094f0], ebx
mov dword [esp + 0x5c], ebx
fst dword [esp + 0x4c]
fld dword [esp + 0x18]
fsin
fld st(0)
fld st(1)
fld st(3)
fmul dword [esp + 0x34]
fxch st(1)
fmul dword [esp + 0x2c]
faddp st(1)
fld dword [esp + 0x4c]
fmul dword [esp + 0x2c]
fxch st(2)
fmul dword [esp + 0x34]
fsubp st(2)
fxch st(1)
fstp dword [esp + 0x2c]
mov edx, dword [esp + 0x2c]
mov dword [eax], edx
fstp dword [esp + 0x34]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x34]
mov dword [eax + 8], ecx
fld dword [0x21f4068]
fsub dword [0x21f4074]
fld dword [0x21f4064]
fsub dword [0x21f4070]
fld dword [0x21f4060]
fsub dword [0x21f406c]
fstp dword [esp + 0x38]
mov edx, dword [esp + 0x38]
mov dword [esp + 0x2c], edx
fstp dword [esp + 0x3c]
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x30], eax
fstp dword [esp + 0x40]
mov ecx, dword [esp + 0x40]
fld st(1)
mov dword [esp + 0x34], ecx
fld st(1)
fxch st(1)
fmul dword [esp + 0x2c]
fxch st(1)
fmul dword [esp + 0x34]
fsubp st(1)
fstp dword [esp + 0x18]
fxch st(1)
fmul dword [esp + 0x34]
fxch st(1)
fmul dword [esp + 0x2c]
faddp st(1)
fadd dword [0x21f4074]
fld dword [esp + 0x30]
fadd dword [0x21f4070]
fld dword [0x21f406c]
fadd dword [esp + 0x18]
fstp dword [esp + 0x38]
mov edx, dword [esp + 0x38]
mov dword [0x21f4060], edx
fstp dword [esp + 0x3c]
mov eax, dword [esp + 0x3c]
mov dword [0x21f4064], eax
fstp dword [esp + 0x40]
mov ecx, dword [esp + 0x40]
mov dword [0x21f4068], ecx
mov eax, dword [esi + 0x13fecc]
cmp dword [eax + 0xdc], 3
je 0x43e840
mov dword [eax + 0xdc], edi
mov dword [esi + 0x1400e0], edi
mov al, byte [0x21ed127]
test al, al
jne 0x43e9d9
mov al, byte [0x21ed124]
test al, al
jne 0x43e9d9
mov ecx, 0x851aa0
call fcn.004c3c70
test eax, eax
jne 0x43e9d9
mov edx, dword [0x705ea4]
mov ecx, dword [0x21ee220]
push edx
call fcn.00438630
test al, al
je 0x43e9d9
fld dword [esp + 0x28]
mov eax, dword [esi + 0x13fecc]
fmul dword [0x6ab5fc]
add eax, 0x154
mov edx, eax
mov ecx, dword [edx]
fmul dword [0x6ab5d8]
mov dword [esp + 0x2c], ecx
mov ecx, dword [edx + 4]
fst dword [esp + 0x18]
fcos
mov edx, dword [edx + 8]
mov dword [esp + 0x34], edx
mov dword [0x7094f0], ebx
mov dword [esp + 0x5c], ebx
fst dword [esp + 0x4c]
fld dword [esp + 0x18]
fsin
fld st(0)
fld st(1)
fld st(3)
fmul dword [esp + 0x34]
fxch st(1)
fmul dword [esp + 0x2c]
faddp st(1)
fld dword [esp + 0x4c]
fmul dword [esp + 0x2c]
fxch st(2)
fmul dword [esp + 0x34]
fsubp st(2)
fxch st(1)
fstp dword [esp + 0x2c]
mov edx, dword [esp + 0x2c]
mov dword [eax], edx
fstp dword [esp + 0x34]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x34]
mov dword [eax + 8], ecx
fld dword [0x21f4068]
fsub dword [0x21f4074]
fld dword [0x21f4064]
fsub dword [0x21f4070]
fld dword [0x21f4060]
fsub dword [0x21f406c]
fstp dword [esp + 0x38]
mov edx, dword [esp + 0x38]
mov dword [esp + 0x2c], edx
fstp dword [esp + 0x3c]
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x30], eax
fstp dword [esp + 0x40]
mov ecx, dword [esp + 0x40]
fld st(1)
mov dword [esp + 0x34], ecx
fld st(1)
fxch st(1)
fmul dword [esp + 0x2c]
fxch st(1)
fmul dword [esp + 0x34]
fsubp st(1)
fstp dword [esp + 0x18]
fxch st(1)
fmul dword [esp + 0x34]
fxch st(1)
fmul dword [esp + 0x2c]
faddp st(1)
fadd dword [0x21f4074]
fld dword [esp + 0x30]
fadd dword [0x21f4070]
fld dword [0x21f406c]
fadd dword [esp + 0x18]
fstp dword [esp + 0x38]
mov edx, dword [esp + 0x38]
mov dword [0x21f4060], edx
fstp dword [esp + 0x3c]
mov eax, dword [esp + 0x3c]
mov dword [0x21f4064], eax
fstp dword [esp + 0x40]
mov ecx, dword [esp + 0x40]
mov dword [0x21f4068], ecx
mov eax, dword [esi + 0x13fecc]
cmp dword [eax + 0xdc], 3
je 0x43e9d3
mov dword [eax + 0xdc], edi
mov dword [esi + 0x1400e0], edi
mov eax, dword [esp + 0x58]
xor edi, edi
cmp eax, edi
mov dword [esi + 0x1400d8], edi
je 0x43ea29
cmp dword [0x709508], edi
jne 0x43e9f9
cmp dword [0x70950c], edi
je 0x43ea29
call dword [0x6a8588]
mov ebx, dword [0x709568]
mov edx, eax
sub edx, ebx
cmp edx, 0xfa
jbe 0x43ea29
mov ecx, esi
mov dword [0x709568], eax
call fcn.00439510
mov dword [0x70950c], edi
mov dword [0x709508], edi
mov eax, dword [0x7094f0]
cmp eax, 6
ja case.default.0x43ea37
jmp dword [eax*4 + 0x442a8c]
mov dword [0x709510], edi
mov dword [0x709508], edi
mov dword [0x70950c], edi
jmp case.default.0x43ea37
mov eax, dword [esi + 0x13fecc]
mov eax, dword [eax + 0x160]
cmp eax, 0xffffffff
mov dword [0x709524], edi
je case.default.0x43ea37
push eax
mov ecx, esi
call fcn.004468d0
mov edi, eax
xor ebx, ebx
cmp edi, ebx
je case.default.0x43ea37
cmp dword [0x8496bc], ebx
je 0x43ea97
mov dword [0x8496bc], ebx
call fcn.00589600
mov edx, dword [esi + 0x13fecc]
lea ecx, [edi + 0x20]
mov eax, dword [ecx]
add edx, 0x148
mov dword [edx], eax
mov eax, dword [ecx + 4]
mov dword [edx + 4], eax
mov ecx, dword [ecx + 8]
mov dword [edx + 8], ecx
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x150]
lea edx, [esp + 0xe4]
fsub dword [eax + 0x18]
push edx
fld dword [eax + 0x148]
fsub dword [eax + 0x10]
mov eax, edx
push eax
mov dword [esp + 0xf0], 0
fstp dword [esp + 0xec]
fstp dword [esp + 0xf4]
call fcn.005d19bf
fld dword [esp + 0x28]
mov ecx, dword [esi + 0x13fecc]
fmul dword [esp + 0xec]
mov edx, dword [ecx + 0x148]
mov dword [esp + 0x70], edx
fstp dword [esp + 0x54]
fld dword [esp + 0x28]
fmul dword [esp + 0xe8]
fstp dword [esp + 0x44]
fld dword [esp + 0x28]
fmul dword [esp + 0xe4]
fstp dword [esp + 0x2c]
fld dword [ecx + 0x18]
fld dword [ecx + 0x10]
fld dword [ecx + 0x150]
fsub st(2)
fstp dword [esp + 0x18]
fld dword [esp + 0x70]
fsub st(1)
fstp st(2)
fstp st(0)
fld st(0)
fmulp st(1)
fld dword [esp + 0x18]
fmul dword [esp + 0x18]
faddp st(1)
fsqrt
fstp dword [esp + 0x18]
fld dword [esp + 0xe4]
fabs
fcomp dword [0x6a867c]
fnstsw ax
test ah, 0x41
jne 0x43eccc
fld dword [esp + 0xec]
fabs
fcomp dword [0x6a867c]
fnstsw ax
test ah, 0x41
jne 0x43eccc
mov edx, dword [esp + 0xec]
mov eax, dword [esp + 0xe4]
add ecx, 0x154
mov dword [ecx], eax
mov dword [esp + 0x40], edx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x3c], 0
mov edx, dword [esp + 0x3c]
mov dword [ecx + 4], edx
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x15c]
lea ecx, [esp + 0x148]
fsub dword [eax + 0x24]
push ecx
fld dword [eax + 0x158]
mov edx, ecx
fsub dword [eax + 0x20]
push edx
fld dword [eax + 0x154]
fsub dword [eax + 0x1c]
fstp dword [esp + 0x150]
fst dword [esp + 0x154]
fld st(1)
fstp dword [esp + 0x158]
fld dword [esp + 0x150]
fmul dword [esp + 0x150]
fld st(1)
fmul st(2)
faddp st(1)
fld st(2)
fmul st(3)
faddp st(1)
fstp st(2)
fstp st(0)
fsqrt
fstp dword [esp + 0x54]
call fcn.005d19bf
fld dword [esp + 0x150]
fmul dword [esp + 0x28]
fld dword [esp + 0x14c]
fmul dword [esp + 0x28]
fld dword [esp + 0x148]
fmul dword [esp + 0x28]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fsqrt
fld dword [esp + 0x4c]
fsub dword [0x6a95b4]
fcompp
fnstsw ax
test ah, 0x41
mov eax, dword [esi + 0x13fecc]
jne 0x43eca4
fadd dword [eax + 0x1c]
add eax, 0x1c
fstp dword [eax]
fadd dword [eax + 4]
fstp dword [eax + 4]
fadd dword [eax + 8]
fstp dword [eax + 8]
mov dword [esi + 0x1400e0], 1
jmp 0x43ecc3
lea ecx, [eax + 0x154]
fstp st(0)
mov edx, dword [ecx]
fstp st(0)
add eax, 0x1c
fstp st(0)
mov dword [eax], edx
mov edx, dword [ecx + 4]
mov dword [eax + 4], edx
mov ecx, dword [ecx + 8]
mov dword [eax + 8], ecx
mov edx, dword [esi + 0x13fecc]
mov dword [edx + 0x20], ebx
fld dword [esp + 0x18]
fcomp dword [0x6a92f8]
fnstsw ax
test ah, 0x41
jne 0x43ed60
fld dword [esp + 0x2c]
fmul dword [esp + 0x2c]
fld dword [esp + 0x44]
fmul dword [esp + 0x44]
faddp st(1)
fld dword [esp + 0x54]
fmul dword [esp + 0x54]
faddp st(1)
fsqrt
fld dword [esp + 0x18]
fsub dword [0x6a95b4]
fcompp
fnstsw ax
test ah, 0x41
mov eax, dword [esi + 0x13fecc]
jne 0x440afa
cmp dword [eax + 0xdc], 3
je 0x43ed2d
mov dword [esp + 0x58], 1
fld dword [esp + 0x2c]
mov dword [esi + 0x1400e0], 1
fadd dword [esp + 0x1c]
fstp dword [esp + 0x1c]
fld dword [esp + 0x44]
fadd dword [esp + 0x20]
fstp dword [esp + 0x20]
fld dword [esp + 0x54]
fadd dword [esp + 0x24]
fstp dword [esp + 0x24]
jmp case.default.0x43ea37
fld dword [esp + 0xe4]
fabs
fld dword [0x6a867c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x43edc7
fld dword [esp + 0xec]
fabs
fld dword [0x6a867c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x43edc7
mov eax, dword [esp + 0xec]
mov ecx, dword [esi + 0x13fecc]
mov edx, dword [esp + 0xe4]
add ecx, 0x1c
mov dword [esp + 0x40], eax
mov dword [ecx], edx
mov dword [esp + 0x3c], 0
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x40]
mov dword [ecx + 4], eax
mov dword [ecx + 8], edx
mov eax, dword [edi + 4]
push eax
call fcn.00589490
mov ecx, dword [esi + 0x13fecc]
mov dword [ecx + 0x164], ebx
mov edx, dword [esi + 0x13fecc]
add esp, 4
mov dword [0x7094f0], ebx
mov dword [edx + 0x160], 0xffffffff
jmp case.default.0x43ea37
mov ecx, dword [esi + 0x13fecc]
mov eax, dword [ecx + 0x160]
cmp eax, 0xffffffff
mov dword [0x709524], edi
je case.default.0x43ea37
cmp eax, dword [ecx + 0x34]
je case.default.0x43ea37
push eax
mov ecx, esi
call fcn.00446890
mov edi, eax
test edi, edi
mov dword [esp + 0x48], edi
je 0x43f8b9
mov eax, dword [esi + 0x13fecc]
xor ecx, ecx
mov cl, byte [eax + 0x192]
xor edx, edx
mov dl, byte [eax + 0x185]
push ecx
mov ecx, 0x859304
push edx
call fcn.0045f410
test eax, eax
je 0x43ee72
movzx eax, word [eax + 0x26]
mov dword [esp + 0x18], eax
fild dword [esp + 0x18]
fadd dword [0x6a95b8]
fstp dword [esp + 0x50]
jmp 0x43ee7a
mov dword [esp + 0x50], 0x3f800000
mov eax, dword [0x709514]
test eax, eax
je 0x43eecf
dec eax
push eax
mov ecx, 0x21e8c0c
call fcn.0043a4c0
test eax, eax
je 0x43eecf
xor ecx, ecx
mov cl, byte [eax + 4]
xor edx, edx
mov dx, word [eax + 2]
push ecx
mov ecx, 0x859304
push edx
call fcn.004602e0
test eax, eax
je 0x43eecf
movzx eax, byte [eax + 0x38]
mov dword [esp + 0x18], eax
fild dword [esp + 0x18]
fld dword [esp + 0x50]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x43eecd
fstp dword [esp + 0x50]
jmp 0x43eecf
fstp st(0)
mov ecx, dword [esi + 0x13fecc]
xor edx, edx
mov dl, byte [ecx + 0x185]
mov ecx, 0x851aa0
push edx
call fcn.004bef80
test eax, eax
je 0x43ef03
movzx eax, word [0x21e98a6]
mov dword [esp + 0x18], eax
fild dword [esp + 0x18]
fadd dword [esp + 0x50]
fstp dword [esp + 0x50]
mov eax, dword [0x709514]
test eax, eax
jne 0x43ef5c
mov cl, byte [0x21e8d7a]
cmp cl, byte [edi + 0x276]
jne 0x43ef5c
mov ecx, dword [0x7089f4]
mov eax, 2
cmp ecx, eax
jne 0x43ef34
mov edx, dword [edi + 0x34]
cmp edx, dword [0x7089f8]
je 0x43ef5c
cmp dword [0x708a10], eax
jne 0x43ef54
mov eax, dword [edi + 0x2c8]
cmp eax, dword [0x7088d4]
jne 0x43ef54
mov al, byte [edi + 0x37a]
test al, al
jne 0x43ef5c
mov dword [esp + 0x50], 0x3fc00000
mov eax, dword [esi + 0x13fecc]
mov ecx, dword [eax + 0x288]
test ecx, ecx
je 0x43ef76
mov ecx, dword [ecx + 0x88]
mov dword [esp + 0x50], ecx
mov ebx, dword [esp + 0x48]
add ebx, 0x10
add eax, 0x148
mov edx, ebx
mov ecx, dword [edx]
mov dword [eax], ecx
mov ecx, dword [edx + 4]
mov dword [eax + 4], ecx
mov edx, dword [edx + 8]
mov dword [eax + 8], edx
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x150]
fsub dword [eax + 0x18]
fld dword [eax + 0x148]
fsub dword [eax + 0x10]
lea eax, [esp + 0xd8]
push eax
mov ecx, eax
fstp dword [esp + 0xdc]
push ecx
mov dword [esp + 0xe4], 0
fstp dword [esp + 0xe8]
call fcn.005d19bf
fld dword [esp + 0x28]
mov ecx, dword [esi + 0x13fecc]
fmul dword [esp + 0xe0]
mov edx, dword [ecx + 0x148]
mov dword [esp + 0x70], edx
fstp dword [esp + 0x54]
fld dword [esp + 0x28]
fmul dword [esp + 0xdc]
fstp dword [esp + 0x44]
fld dword [esp + 0x28]
fmul dword [esp + 0xd8]
fstp dword [esp + 0x2c]
fld dword [ecx + 0x18]
fld dword [ecx + 0x10]
fld dword [ecx + 0x150]
fsub st(2)
fstp dword [esp + 0x18]
fld dword [esp + 0x70]
fsub st(1)
fstp st(2)
fstp st(0)
fld st(0)
fmulp st(1)
fld dword [esp + 0x18]
fmul dword [esp + 0x18]
faddp st(1)
fsqrt
fabs
fstp dword [esp + 0x18]
fld dword [esp + 0xd8]
fabs
fld dword [0x6a867c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x43f1b5
fld dword [esp + 0xe0]
fabs
fld dword [0x6a867c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x43f1b5
mov edx, dword [esp + 0xe0]
mov eax, dword [esp + 0xd8]
add ecx, 0x154
mov dword [ecx], eax
mov dword [esp + 0x40], edx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x3c], 0
mov edx, dword [esp + 0x3c]
mov dword [ecx + 4], edx
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x15c]
lea ecx, [esp + 0x19c]
fsub dword [eax + 0x24]
push ecx
fld dword [eax + 0x158]
mov edx, ecx
fsub dword [eax + 0x20]
push edx
fld dword [eax + 0x154]
fsub dword [eax + 0x1c]
fstp dword [esp + 0x1a4]
fst dword [esp + 0x1a8]
fld st(1)
fstp dword [esp + 0x1ac]
fld dword [esp + 0x1a4]
fmul dword [esp + 0x1a4]
fld st(1)
fmul st(2)
faddp st(1)
fld st(2)
fmul st(3)
faddp st(1)
fstp st(2)
fstp st(0)
fsqrt
fstp dword [esp + 0x54]
call fcn.005d19bf
fld dword [esp + 0x1a4]
fmul dword [esp + 0x28]
fld dword [esp + 0x1a0]
fmul dword [esp + 0x28]
fld dword [esp + 0x28]
fmul dword [esp + 0x19c]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fsqrt
fld dword [esp + 0x4c]
fsub dword [0x6a95b4]
fcompp
fnstsw ax
test ah, 0x41
mov eax, dword [esi + 0x13fecc]
jne 0x43f189
fadd dword [eax + 0x1c]
add eax, 0x1c
xor edi, edi
fstp dword [eax]
fadd dword [eax + 4]
fstp dword [eax + 4]
fadd dword [eax + 8]
fstp dword [eax + 8]
mov edx, dword [esi + 0x13fecc]
mov dword [edx + 0x20], edi
jmp 0x43f1b7
lea ecx, [eax + 0x154]
fstp st(0)
mov edx, dword [ecx]
fstp st(0)
add eax, 0x1c
fstp st(0)
mov dword [eax], edx
mov edx, dword [ecx + 4]
mov dword [eax + 4], edx
mov ecx, dword [ecx + 8]
mov dword [eax + 8], ecx
mov edx, dword [esi + 0x13fecc]
xor edi, edi
mov dword [edx + 0x20], edi
jmp 0x43f1b7
xor edi, edi
mov ecx, dword [esi + 0x13fecc]
mov eax, dword [0x6f3be4]
cmp eax, dword [ecx + 0x160]
jne 0x43f1d3
cmp dword [0x70953c], 2
je 0x43f206
mov dword [0x709504], edi
mov dword [esi + 0x1400dc], edi
call fcn.00589600
mov ecx, dword [esi + 0x13fecc]
mov edx, dword [ecx + 0x160]
mov dword [0x6f3be4], edx
mov dword [0x70953c], 2
mov dword [0x709504], edi
fld dword [esp + 0x18]
fcomp dword [esp + 0x50]
fnstsw ax
test ah, 0x41
jne 0x43f2ce
cmp dword [esi + 0x1400dc], edi
je 0x43f22c
mov dword [esi + 0x1400dc], edi
call fcn.00589600
fld dword [esp + 0x2c]
fmul dword [esp + 0x2c]
fld dword [esp + 0x44]
fmul dword [esp + 0x44]
faddp st(1)
fld dword [esp + 0x54]
fmul dword [esp + 0x54]
faddp st(1)
fsqrt
fld dword [esp + 0x18]
fsub dword [0x6a95b4]
fcompp
fnstsw ax
test ah, 0x41
mov eax, dword [esi + 0x13fecc]
jne 0x440d91
cmp dword [eax + 0xdc], 3
je 0x43f27e
mov dword [esp + 0x58], 1
mov dword [0x709508], edi
fld dword [esp + 0x1c]
mov dword [eax + 0x1a8], edi
fadd dword [esp + 0x2c]
mov eax, dword [0x709504]
cmp eax, edi
mov dword [esi + 0x1400e0], 1
fstp dword [esp + 0x1c]
fld dword [esp + 0x20]
fadd dword [esp + 0x44]
fstp dword [esp + 0x20]
fld dword [esp + 0x24]
fadd dword [esp + 0x54]
fstp dword [esp + 0x24]
je case.default.0x43ea37
mov dword [esi + 0x1400d8], 1
jmp case.default.0x43ea37
mov edx, dword [esp + 0x48]
cmp dword [edx + 0xdc], 4
jne 0x43f2e6
mov dword [0x7094f0], edi
jmp case.default.0x43ea37
cmp dword [ecx + 0xdc], 2
je case.default.0x43ea37
fld dword [esp + 0xd8]
fabs
fld dword [0x6a867c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x43f48f
fld dword [esp + 0xe0]
fabs
fld dword [0x6a867c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x43f48f
cmp dword [0x709508], 1
je 0x43f48f
mov edx, dword [esp + 0xe0]
mov eax, dword [esp + 0xd8]
add ecx, 0x1c
mov dword [ecx], eax
mov dword [esp + 0x40], edx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x3c], 0
mov edx, dword [esp + 0x3c]
mov dword [ecx + 4], edx
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x24]
mov ecx, dword [eax + 0x1c]
lea edx, [esp + 0x1f0]
fstp dword [esp + 0x1f8]
push edx
mov eax, edx
push eax
mov dword [esp + 0x1f8], ecx
mov dword [esp + 0x1fc], 0
mov dword [esp + 0x1ec], 0
mov dword [esp + 0x1f0], 0
mov dword [esp + 0x1f4], 0x3f800000
call fcn.005d19bf
lea ecx, [esp + 0x1e4]
push ecx
mov edx, ecx
push edx
call fcn.005d19bf
fld dword [esp + 0x1ec]
fmul dword [esp + 0x1f8]
fld dword [esp + 0x1e8]
fmul dword [esp + 0x1f4]
faddp st(1)
fld dword [esp + 0x1e4]
fmul dword [esp + 0x1f0]
faddp st(1)
fst dword [esp + 0x18]
call fcn.005bbb80
fmul dword [0x6ab574]
call fcn.005ba9a8
mov edi, eax
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x1c]
fcomp dword [0x6a867c]
fnstsw ax
test ah, 0x41
jne 0x43f432
mov ecx, 0x168
sub ecx, edi
mov edi, ecx
call dword [0x6a8588]
mov ecx, dword [0x709568]
mov edx, eax
sub edx, ecx
cmp edx, 0xfa
jbe 0x43f48f
mov dword [0x709568], eax
mov eax, dword [0x709504]
test eax, eax
mov eax, dword [esi + 0x13fecc]
mov ecx, dword [eax + 0x18]
mov edx, dword [eax + 0x14]
push ecx
mov ecx, dword [eax + 0x10]
push edx
push ecx
push edi
je 0x43f47a
xor edx, edx
mov dl, byte [eax + 0x25c]
push edx
push 4
push 0
jmp 0x43f487
xor edx, edx
mov dl, byte [eax + 0x25c]
push edx
push 4
push 1
call fcn.00589b50
add esp, 0x1c
mov eax, dword [0x709514]
test eax, eax
mov edi, 2
mov dword [esi + 0x1400e0], edi
je 0x43f600
dec eax
push eax
mov ecx, 0x21e8c0c
call fcn.0043a4c0
mov edi, eax
test edi, edi
je case.default.0x43ea37
lea eax, [esp + 0xb9]
push eax
lea ecx, [esp + 0x9f]
push ecx
mov byte [esp + 0xa3], 0
mov byte [esp + 0xc1], 0
mov edx, dword [esi + 0x13fecc]
push ebx
add edx, 0x10
push edx
mov ecx, esi
call fcn.00437700
test eax, eax
je 0x43f552
xor eax, eax
mov al, byte [edi + 4]
xor ecx, ecx
mov cx, word [edi + 2]
push eax
push ecx
mov ecx, 0x859304
call fcn.004602e0
movzx ecx, byte [esp + 0x9b]
dec ecx
jne 0x43f552
mov al, byte [eax + 0x1d]
cmp al, 2
je 0x43f552
cmp al, 4
je 0x43f552
cmp al, 6
je 0x43f552
push 0xd8
push 0x11
call fcn.0041dfb0
mov ecx, dword [0x709508]
xor eax, eax
add esp, 8
cmp ecx, eax
mov dword [0x709514], eax
jne 0x442a31
mov dword [0x7094f0], eax
jmp 0x442a31
mov eax, dword [ebx]
mov ecx, dword [ebx + 4]
sub esp, 0xc
mov edx, esp
mov dword [edx], eax
mov eax, dword [ebx + 8]
mov dword [edx + 4], ecx
mov ecx, dword [esi + 0x13fecc]
mov dword [edx + 8], eax
add ecx, 0x10
mov eax, dword [ecx]
sub esp, 0xc
mov edx, esp
mov dword [edx], eax
mov eax, dword [ecx + 4]
mov ecx, dword [ecx + 8]
mov dword [edx + 4], eax
mov dword [edx + 8], ecx
mov ecx, esi
call fcn.00437090
test eax, eax
je 0x4400bd
xor edx, edx
mov dl, byte [edi + 4]
xor eax, eax
mov ax, word [edi + 2]
mov ecx, 0x859304
push edx
push eax
call fcn.004602e0
cmp word [eax + 0x1e], 0x5a
jne 0x43f5c6
cmp byte [eax + 0x42], 2
jne 0x43f5c6
mov ecx, dword [0x8494ac]
mov edx, dword [ecx + 0x160]
jmp 0x43f5cd
mov ecx, dword [esp + 0x48]
mov edx, dword [ecx + 0x34]
xor eax, eax
mov al, byte [edi]
push edx
push eax
call fcn.00589d40
mov ecx, dword [0x709508]
xor eax, eax
add esp, 8
cmp ecx, eax
mov dword [0x21e8d74], 1
jne 0x43f5f6
mov dword [0x7094f0], eax
mov dword [0x709514], eax
jmp case.default.0x43ea37
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x18]
add eax, 0x10
fsub dword [ebx + 8]
fld dword [eax + 4]
fsub dword [ebx + 4]
fld dword [eax]
fsub dword [ebx]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fstp st(3)
fstp st(0)
fstp st(0)
fsqrt
fabs
fld dword [esp + 0x50]
fadd dword [0x6a9774]
fcompp
fnstsw ax
test ah, 0x41
jne case.default.0x43ea37
mov eax, dword [0x709508]
test eax, eax
jne case.default.0x43ea37
mov ecx, dword [0x705814]
mov edx, dword [ecx]
push 0x1b
call dword [edx + 4]
test al, al
je 0x43f74b
call dword [0x6a8588]
mov edx, dword [0x70956c]
mov edi, eax
sub eax, edx
cmp eax, 0xfa
jbe 0x43f8aa
sub esp, 0xc
mov ecx, ebx
mov eax, dword [ecx]
mov edx, esp
mov dword [edx], eax
mov eax, dword [ecx + 4]
mov ecx, dword [ecx + 8]
mov dword [edx + 4], eax
mov dword [edx + 8], ecx
mov edx, dword [esi + 0x13fecc]
add edx, 0x10
mov ecx, dword [edx]
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [edx + 4]
mov edx, dword [edx + 8]
mov dword [eax + 4], ecx
mov ecx, esi
mov dword [eax + 8], edx
call fcn.00437090
test eax, eax
je 0x43f89a
mov eax, dword [esi + 0x13fecc]
mov ecx, dword [eax + 0x160]
lea edx, [esp + 0xb7]
push edx
mov dword [0x6f3be4], ecx
lea eax, [esp + 0x9e]
mov byte [esp + 0x9e], 0
mov byte [esp + 0xbb], 0
mov ecx, dword [esi + 0x13fecc]
push eax
add ecx, 0x10
push ebx
push ecx
mov ecx, esi
mov dword [0x709504], 1
mov dword [0x70953c], 2
call fcn.00437700
test eax, eax
je 0x43f736
movzx eax, byte [esp + 0x9a]
dec eax
je 0x43f864
mov edx, dword [esp + 0x48]
mov eax, dword [edx + 0x34]
push eax
call fcn.00589c00
add esp, 4
jmp 0x43f8a4
mov eax, dword [esp + 0x48]
mov cl, byte [0x21e8d7a]
cmp cl, byte [eax + 0x276]
jne 0x43f79c
cmp dword [0x7089f4], edi
jne 0x43f770
mov edx, dword [eax + 0x34]
cmp edx, dword [0x7089f8]
je 0x43f79c
cmp dword [0x708a10], edi
jne 0x43f8aa
mov ecx, dword [eax + 0x2c8]
cmp ecx, dword [0x7088d4]
jne 0x43f8aa
mov cl, byte [eax + 0x37a]
test cl, cl
je 0x43f8aa
call dword [0x6a8588]
mov ecx, dword [0x70956c]
mov edi, eax
mov edx, edi
sub edx, ecx
cmp edx, 0xfa
jbe 0x43f8aa
sub esp, 0xc
mov eax, ebx
mov edx, dword [eax]
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [ecx + 4], edx
mov dword [ecx + 8], eax
mov ecx, dword [esi + 0x13fecc]
add ecx, 0x10
mov eax, dword [ecx]
sub esp, 0xc
mov edx, esp
mov dword [edx], eax
mov eax, dword [ecx + 4]
mov ecx, dword [ecx + 8]
mov dword [edx + 4], eax
mov dword [edx + 8], ecx
mov ecx, esi
call fcn.00437090
test eax, eax
je 0x43f89a
mov edx, dword [esi + 0x13fecc]
mov eax, dword [edx + 0x160]
lea ecx, [esp + 0xb8]
push ecx
mov dword [0x6f3be4], eax
lea edx, [esp + 0x9d]
mov byte [esp + 0x9d], 0
mov byte [esp + 0xbc], 0
mov eax, dword [esi + 0x13fecc]
push edx
push ebx
add eax, 0x10
push eax
mov ecx, esi
mov dword [0x709504], 1
mov dword [0x70953c], 2
call fcn.00437700
test eax, eax
je 0x43f888
movzx eax, byte [esp + 0x99]
dec eax
jne 0x43f888
push 0x13c
push 0x11
call fcn.0041dfb0
add esp, 8
mov dword [0x7094f0], 0
mov dword [0x70956c], edi
jmp 0x442a31
mov ecx, dword [esp + 0x48]
mov edx, dword [ecx + 0x34]
push edx
call fcn.00589c00
add esp, 4
jmp 0x43f8a4
mov dword [0x7094f0], 0
mov dword [0x70956c], edi
mov dword [0x709508], 1
jmp case.default.0x43ea37
mov dword [0x7094f0], 0
jmp case.default.0x43ea37
mov eax, dword [esi + 0x13fecc]
mov eax, dword [eax + 0x160]
cmp eax, 0xffffffff
mov dword [0x709524], edi
je case.default.0x43ea37
push eax
mov ecx, esi
call fcn.00446910
cmp eax, edi
mov dword [esp + 0x50], eax
je case.default.0x43ea37
cmp dword [eax + 0xb0], edi
jne case.default.0x43ea37
fld dword [eax + 0x88]
mov eax, dword [esi + 0x13fecc]
fsub dword [0x6a9774]
xor ecx, ecx
mov cl, byte [eax + 0x192]
xor edx, edx
mov dl, byte [eax + 0x185]
fstp dword [esp + 0x48]
push ecx
mov ecx, 0x859304
push edx
call fcn.0045f410
cmp eax, edi
je 0x43f94f
movzx eax, word [eax + 0x26]
mov dword [esp + 0x18], eax
fild dword [esp + 0x18]
fadd dword [esp + 0x48]
fstp dword [esp + 0x48]
jmp 0x43f957
mov dword [esp + 0x48], 0x3f800000
mov eax, dword [0x709514]
cmp eax, edi
je 0x43f9ac
dec eax
push eax
mov ecx, 0x21e8c0c
call fcn.0043a4c0
cmp eax, edi
je 0x43f9ac
xor ecx, ecx
mov cl, byte [eax + 4]
xor edx, edx
mov dx, word [eax + 2]
push ecx
mov ecx, 0x859304
push edx
call fcn.004602e0
cmp eax, edi
je 0x43f9ac
movzx eax, byte [eax + 0x38]
mov dword [esp + 0x18], eax
fild dword [esp + 0x18]
fld dword [esp + 0x48]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x43f9aa
fstp dword [esp + 0x48]
jmp 0x43f9ac
fstp st(0)
mov ecx, dword [esi + 0x13fecc]
xor edx, edx
mov dl, byte [ecx + 0x185]
mov ecx, 0x851aa0
push edx
call fcn.004bef80
test eax, eax
je 0x43f9e0
movzx eax, word [0x21e98a6]
mov dword [esp + 0x18], eax
fild dword [esp + 0x18]
fadd dword [esp + 0x48]
fstp dword [esp + 0x48]
mov eax, dword [esi + 0x13fecc]
mov ecx, dword [eax + 0x288]
cmp ecx, edi
je 0x43f9fa
mov ecx, dword [ecx + 0x88]
mov dword [esp + 0x48], ecx
mov ebx, dword [esp + 0x50]
add ebx, 4
add eax, 0x148
mov edx, ebx
mov ecx, dword [edx]
mov dword [eax], ecx
mov ecx, dword [edx + 4]
mov dword [eax + 4], ecx
mov edx, dword [edx + 8]
mov dword [eax + 8], edx
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x150]
fsub dword [eax + 0x18]
fld dword [eax + 0x148]
fsub dword [eax + 0x10]
lea eax, [esp + 0xf0]
push eax
mov ecx, eax
fstp dword [esp + 0xf4]
push ecx
mov dword [esp + 0xfc], 0
fstp dword [esp + 0x100]
call fcn.005d19bf
mov ecx, dword [esi + 0x13fecc]
fld dword [ecx + 0x18]
mov edx, dword [ecx + 0x148]
fld dword [ecx + 0x10]
mov dword [esp + 0x70], edx
fld dword [ecx + 0x150]
fsub st(2)
fstp dword [esp + 0x18]
fld dword [esp + 0x70]
fsub st(1)
fstp st(2)
fstp st(0)
fld st(0)
fmulp st(1)
fld dword [esp + 0x18]
fmul dword [esp + 0x18]
faddp st(1)
fsqrt
fabs
fstp dword [esp + 0x18]
fld dword [esp + 0xf8]
fmul dword [esp + 0x28]
fld dword [esp + 0xf4]
fmul dword [esp + 0x28]
fld dword [esp + 0xf0]
fmul dword [esp + 0x28]
fstp dword [esp + 0x38]
mov eax, dword [esp + 0x38]
mov dword [esp + 0x2c], eax
fstp dword [esp + 0x3c]
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x30], edx
fstp dword [esp + 0x40]
mov eax, dword [esp + 0x40]
fld dword [esp + 0xf0]
mov dword [esp + 0x34], eax
fabs
fld dword [0x6a867c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x43fc46
fld dword [esp + 0xf8]
fabs
fld dword [0x6a867c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x43fc46
mov eax, dword [esp + 0xf8]
mov edx, dword [esp + 0xf0]
mov dword [esp + 0x40], eax
add ecx, 0x154
mov dword [ecx], edx
mov dword [esp + 0x3c], 0
mov eax, dword [esp + 0x3c]
mov dword [ecx + 4], eax
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x40]
mov dword [ecx + 8], edx
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x15c]
fsub dword [eax + 0x24]
fld dword [eax + 0x158]
fsub dword [eax + 0x20]
fld dword [eax + 0x154]
fsub dword [eax + 0x1c]
lea eax, [esp + 0x190]
push eax
mov ecx, eax
fstp dword [esp + 0x194]
push ecx
fst dword [esp + 0x19c]
fld st(1)
fstp dword [esp + 0x1a0]
fld dword [esp + 0x198]
fmul dword [esp + 0x198]
fld st(1)
fmul st(2)
faddp st(1)
fld st(2)
fmul st(3)
faddp st(1)
fstp st(2)
fstp st(0)
fsqrt
fstp dword [esp + 0x54]
call fcn.005d19bf
fld dword [esp + 0x198]
fmul dword [esp + 0x28]
fld dword [esp + 0x194]
fmul dword [esp + 0x28]
fld dword [esp + 0x28]
fmul dword [esp + 0x190]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fsqrt
fld dword [esp + 0x4c]
fsub dword [0x6a95b4]
fcompp
fnstsw ax
test ah, 0x41
mov eax, dword [esi + 0x13fecc]
jne 0x43fc1a
fadd dword [eax + 0x1c]
add eax, 0x1c
fstp dword [eax]
fadd dword [eax + 4]
fstp dword [eax + 4]
fadd dword [eax + 8]
fstp dword [eax + 8]
jmp 0x43fc39
lea edx, [eax + 0x154]
fstp st(0)
mov ecx, dword [edx]
fstp st(0)
add eax, 0x1c
fstp st(0)
mov dword [eax], ecx
mov ecx, dword [edx + 4]
mov dword [eax + 4], ecx
mov edx, dword [edx + 8]
mov dword [eax + 8], edx
mov eax, dword [esi + 0x13fecc]
mov dword [eax + 0x20], 0
mov ecx, dword [esi + 0x13fecc]
mov edx, dword [0x6f3be4]
cmp edx, dword [ecx + 0x160]
mov edi, 3
jne 0x43fc67
cmp dword [0x70953c], edi
je 0x43fc90
xor eax, eax
mov dword [0x709504], eax
mov dword [esi + 0x1400dc], eax
call fcn.00589600
mov ecx, dword [esi + 0x13fecc]
mov eax, dword [ecx + 0x160]
mov dword [0x6f3be4], eax
mov dword [0x70953c], edi
fld dword [esp + 0x18]
fcomp dword [esp + 0x48]
fnstsw ax
test ah, 0x41
jne 0x43fd4c
mov eax, dword [esi + 0x1400dc]
test eax, eax
je 0x43fcbc
mov dword [esi + 0x1400dc], 0
call fcn.00589600
fld dword [esp + 0x34]
fmul dword [esp + 0x34]
fld dword [esp + 0x30]
fmul dword [esp + 0x30]
faddp st(1)
fld dword [esp + 0x2c]
fmul dword [esp + 0x2c]
faddp st(1)
fsqrt
fld dword [esp + 0x18]
fsub dword [0x6a95b4]
fcompp
fnstsw ax
test ah, 0x41
jne 0x43fd29
mov ecx, dword [esi + 0x13fecc]
cmp dword [ecx + 0xdc], edi
mov eax, 1
je 0x43fd0e
mov dword [esp + 0x58], eax
mov dword [0x70950c], 0
mov ecx, dword [0x709504]
test ecx, ecx
je 0x43fd1e
mov dword [esi + 0x1400d8], eax
mov dword [esi + 0x1400e0], eax
jmp 0x440615
mov eax, dword [esi + 0x13fecc]
lea edx, [eax + 0x10]
mov ecx, dword [edx]
add eax, 0x148
mov dword [eax], ecx
mov ecx, dword [edx + 4]
mov dword [eax + 4], ecx
mov edx, dword [edx + 8]
mov dword [eax + 8], edx
jmp case.default.0x43ea37
mov eax, dword [ecx + 0xdc]
cmp eax, 2
je 0x43fd65
mov edx, dword [esp + 0x50]
mov edi, dword [edx + 0xb0]
test edi, edi
je 0x43fd8e
mov edx, dword [0x709514]
test edx, edx
je case.default.0x43ea37
cmp eax, 2
je case.default.0x43ea37
mov eax, dword [esp + 0x50]
mov edx, dword [eax + 0xb0]
test edx, edx
jne case.default.0x43ea37
fld dword [esp + 0xf0]
fabs
fld dword [0x6a867c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x43ff36
fld dword [esp + 0xf8]
fabs
fld dword [0x6a867c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x43ff36
cmp dword [0x70950c], 1
je 0x43ff36
mov eax, dword [esp + 0xf8]
mov edx, dword [esp + 0xf0]
mov dword [esp + 0x40], eax
add ecx, 0x1c
mov dword [ecx], edx
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x3c], 0
mov eax, dword [esp + 0x3c]
mov dword [ecx + 4], eax
mov dword [ecx + 8], edx
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x24]
mov eax, dword [eax + 0x1c]
lea ecx, [esp + 0x1b4]
fstp dword [esp + 0x1bc]
push ecx
mov edx, ecx
push edx
mov dword [esp + 0x1bc], eax
mov dword [esp + 0x1c0], 0
mov dword [esp + 0x1e0], 0
mov dword [esp + 0x1e4], 0
mov dword [esp + 0x1e8], 0x3f800000
call fcn.005d19bf
lea eax, [esp + 0x1d8]
push eax
mov ecx, eax
push ecx
call fcn.005d19bf
fld dword [esp + 0x1e0]
fmul dword [esp + 0x1bc]
fld dword [esp + 0x1dc]
fmul dword [esp + 0x1b8]
faddp st(1)
fld dword [esp + 0x1d8]
fmul dword [esp + 0x1b4]
faddp st(1)
fst dword [esp + 0x18]
call fcn.005bbb80
fmul dword [0x6ab574]
call fcn.005ba9a8
mov edx, dword [esi + 0x13fecc]
fld dword [edx + 0x1c]
mov edi, eax
fcomp dword [0x6a867c]
fnstsw ax
test ah, 0x41
jne 0x43fecd
mov eax, 0x168
sub eax, edi
mov edi, eax
call dword [0x6a8588]
mov edx, dword [0x709568]
mov ecx, eax
sub ecx, edx
cmp ecx, 0xfa
jbe 0x43ff36
mov dword [0x709568], eax
mov eax, dword [0x709504]
test eax, eax
mov eax, dword [esi + 0x13fecc]
je 0x43ff14
mov edx, dword [eax + 0x18]
mov ecx, dword [eax + 0x14]
push edx
mov edx, dword [eax + 0x10]
movzx eax, byte [eax + 0x25c]
push ecx
push edx
push edi
push eax
push 4
push 0
jmp 0x43ff2e
mov ecx, dword [eax + 0x18]
mov edx, dword [eax + 0x14]
push ecx
mov ecx, dword [eax + 0x10]
push edx
xor edx, edx
mov dl, byte [eax + 0x25c]
push ecx
push edi
push edx
push 4
push 1
call fcn.00589b50
add esp, 0x1c
mov eax, dword [0x709514]
test eax, eax
mov dword [esi + 0x1400e0], 2
je 0x4400ce
dec eax
push eax
mov ecx, 0x21e8c0c
call fcn.0043a4c0
mov edi, eax
test edi, edi
je case.default.0x43ea37
lea eax, [esp + 0xbb]
push eax
lea ecx, [esp + 0x9b]
push ecx
mov byte [esp + 0x9f], 0
mov byte [esp + 0xc3], 0
mov edx, dword [esi + 0x13fecc]
push ebx
add edx, 0x10
push edx
mov ecx, esi
call fcn.00437700
test eax, eax
je 0x43fff9
xor eax, eax
mov al, byte [edi + 4]
xor ecx, ecx
mov cx, word [edi + 2]
push eax
push ecx
mov ecx, 0x859304
call fcn.004602e0
movzx ecx, byte [esp + 0x97]
dec ecx
jne 0x43fff9
mov al, byte [eax + 0x1d]
cmp al, 2
je 0x43fff9
cmp al, 4
je 0x43fff9
cmp al, 6
je 0x43fff9
push 0xd8
push 0x11
call fcn.0041dfb0
mov ecx, dword [0x70950c]
xor eax, eax
add esp, 8
cmp ecx, eax
mov dword [0x709514], eax
jne 0x43ffef
mov dword [0x7094f0], eax
mov dword [0x709510], eax
jmp 0x442a31
mov edx, dword [esp + 0x50]
mov eax, dword [edx + 0xc]
mov ecx, dword [ebx]
push eax
push ecx
mov ecx, esi
call fcn.0040e230
fadd dword [0x6a95c0]
mov eax, dword [esp + 0x50]
fld st(0)
fstp dword [eax + 8]
fld dword [eax + 0x8c]
fmul dword [0x6ab4a4]
fstp dword [esp + 0x48]
fcomp dword [esp + 0x48]
fnstsw ax
test ah, 5
jp 0x440040
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x50]
mov dword [eax + 8], edx
mov edx, dword [ebx]
mov eax, dword [ebx + 4]
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [ebx + 8]
mov dword [ecx + 4], eax
mov eax, dword [esi + 0x13fecc]
mov dword [ecx + 8], edx
add eax, 0x10
mov edx, dword [eax]
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [ecx + 4], edx
mov dword [ecx + 8], eax
mov ecx, esi
call fcn.00437090
test eax, eax
je 0x4400bd
mov ecx, dword [esp + 0x50]
mov edx, dword [ecx + 0x28]
xor eax, eax
mov al, byte [edi]
push edx
push eax
call fcn.00589d80
mov ecx, dword [0x70950c]
xor eax, eax
add esp, 8
cmp ecx, eax
mov dword [0x21e8d74], 1
jne 0x4400ae
mov dword [0x7094f0], eax
mov dword [0x709510], eax
mov dword [0x709514], eax
jmp case.default.0x43ea37
xor eax, eax
mov dword [0x7094f0], eax
mov dword [0x709514], eax
jmp case.default.0x43ea37
mov eax, dword [0x70950c]
test eax, eax
jne case.default.0x43ea37
call dword [0x6a8588]
mov edx, dword [0x70956c]
mov edi, eax
mov ecx, edi
sub ecx, edx
cmp ecx, 0xfa
jbe 0x44024d
mov edx, dword [esp + 0x50]
mov eax, dword [edx + 0xc]
mov ecx, dword [ebx]
push eax
push ecx
mov ecx, esi
call fcn.0040e230
fadd dword [0x6a95c0]
mov eax, dword [esp + 0x50]
fld st(0)
fstp dword [eax + 8]
fld dword [eax + 0x8c]
fmul dword [0x6ab4a4]
fstp dword [esp + 0x48]
fcomp dword [esp + 0x48]
fnstsw ax
test ah, 5
jp 0x440140
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x50]
mov dword [eax + 8], edx
sub esp, 0xc
mov ecx, ebx
mov eax, dword [ecx]
mov edx, esp
mov dword [edx], eax
mov eax, dword [ecx + 4]
mov ecx, dword [ecx + 8]
mov dword [edx + 4], eax
mov dword [edx + 8], ecx
mov edx, dword [esi + 0x13fecc]
add edx, 0x10
mov ecx, dword [edx]
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [edx + 4]
mov edx, dword [edx + 8]
mov dword [eax + 4], ecx
mov ecx, esi
mov dword [eax + 8], edx
call fcn.00437090
test eax, eax
je 0x44023d
mov eax, dword [esi + 0x13fecc]
mov ecx, dword [eax + 0x160]
lea edx, [esp + 0xba]
push edx
mov dword [0x6f3be4], ecx
lea eax, [esp + 0x9c]
mov byte [esp + 0x9c], 0
mov byte [esp + 0xbe], 0
mov ecx, dword [esi + 0x13fecc]
push eax
add ecx, 0x10
push ebx
push ecx
mov ecx, esi
mov dword [0x709504], 1
mov dword [0x70953c], 3
call fcn.00437700
test eax, eax
je 0x44022b
movzx eax, byte [esp + 0x98]
dec eax
jne 0x44022b
push 0x13c
push 0x11
call fcn.0041dfb0
mov eax, 1
add esp, 8
mov dword [0x7094f0], 0
mov dword [0x70956c], edi
mov dword [0x70950c], eax
mov ecx, dword [esp + 0x714]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov edx, dword [esp + 0x50]
mov eax, dword [edx + 0x28]
push eax
call fcn.00589c30
add esp, 4
jmp 0x440247
mov dword [0x7094f0], 0
mov dword [0x70956c], edi
mov dword [0x70950c], 1
jmp case.default.0x43ea37
mov ecx, dword [esi + 0x13fecc]
mov eax, dword [ecx + 0x160]
cmp eax, 0xffffffff
mov dword [0x709524], edi
je case.default.0x43ea37
push eax
mov ecx, esi
call fcn.004469b0
mov edi, eax
test edi, edi
je case.default.0x43ea37
mov eax, dword [edi + 0xc8]
test eax, eax
jne case.default.0x43ea37
mov eax, dword [esi + 0x1400dc]
test eax, eax
je 0x4402b0
mov dword [esi + 0x1400dc], 0
call fcn.00589600
mov edx, dword [esi + 0x13fecc]
lea ebx, [edi + 0x38]
add edx, 0x148
mov eax, ebx
mov ecx, dword [eax]
mov dword [edx], ecx
mov ecx, dword [eax + 4]
mov dword [edx + 4], ecx
mov eax, dword [eax + 8]
mov dword [edx + 8], eax
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x150]
lea ecx, [esp + 0xcc]
fsub dword [eax + 0x18]
push ecx
fld dword [eax + 0x148]
mov edx, ecx
fsub dword [eax + 0x10]
push edx
mov dword [esp + 0xd8], 0
fstp dword [esp + 0xd4]
fstp dword [esp + 0xdc]
call fcn.005d19bf
mov ecx, dword [esi + 0x13fecc]
fld dword [ecx + 0x18]
mov eax, dword [ecx + 0x148]
fld dword [ecx + 0x10]
mov dword [esp + 0x70], eax
fld dword [ecx + 0x150]
fsub st(2)
fstp dword [esp + 0x18]
fld dword [esp + 0x70]
fsub st(1)
fstp st(2)
fstp st(0)
fld st(0)
fmulp st(1)
fld dword [esp + 0x18]
fmul dword [esp + 0x18]
faddp st(1)
fsqrt
fabs
fst dword [esp + 0x44]
fcomp dword [0x6a9778]
fnstsw ax
test ah, 5
jnp 0x4403b2
mov edx, dword [0x709510]
test edx, edx
jne 0x4403b2
fld dword [esp + 0x28]
fmul dword [esp + 0xd4]
fld dword [esp + 0x28]
fmul dword [esp + 0xd0]
fld dword [esp + 0x28]
fmul dword [esp + 0xcc]
fstp dword [esp + 0x38]
mov eax, dword [esp + 0x38]
mov dword [esp + 0x2c], eax
fstp dword [esp + 0x3c]
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x30], eax
fstp dword [esp + 0x40]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x34], eax
jmp 0x44041e
fld dword [esp + 0xd4]
fadd st(0), st(0)
fld dword [esp + 0xd0]
fadd st(0), st(0)
fstp dword [esp + 0x18]
fld dword [esp + 0xcc]
fadd st(0), st(0)
fstp dword [esp + 0x70]
fmul dword [0x705f54]
fld dword [esp + 0x18]
fmul dword [0x705f54]
fld dword [esp + 0x70]
fmul dword [0x705f54]
fstp dword [esp + 0x38]
mov edx, dword [esp + 0x38]
mov dword [esp + 0x2c], edx
fstp dword [esp + 0x3c]
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x30], eax
fstp dword [esp + 0x40]
mov edx, dword [esp + 0x40]
mov dword [esp + 0x34], edx
mov edx, 1
mov dword [0x709510], edx
fld dword [esp + 0xcc]
fabs
fld dword [0x6a867c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x44058a
fld dword [esp + 0xd4]
fabs
fld dword [0x6a867c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x44058a
mov edx, dword [esp + 0xd4]
mov eax, dword [esp + 0xcc]
add ecx, 0x154
mov dword [ecx], eax
mov dword [esp + 0x40], edx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x3c], 0
mov edx, dword [esp + 0x3c]
mov dword [ecx + 4], edx
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x15c]
lea ecx, [esp + 0x184]
fsub dword [eax + 0x24]
push ecx
fld dword [eax + 0x158]
mov edx, ecx
fsub dword [eax + 0x20]
push edx
fld dword [eax + 0x154]
fsub dword [eax + 0x1c]
fstp dword [esp + 0x18c]
fst dword [esp + 0x190]
fld st(1)
fstp dword [esp + 0x194]
fld dword [esp + 0x18c]
fmul dword [esp + 0x18c]
fld st(1)
fmul st(2)
faddp st(1)
fld st(2)
fmul st(3)
faddp st(1)
fstp st(2)
fstp st(0)
fsqrt
fstp dword [esp + 0x20]
call fcn.005d19bf
fld dword [esp + 0x18c]
fmul dword [esp + 0x28]
fld dword [esp + 0x188]
fmul dword [esp + 0x28]
fld dword [esp + 0x28]
fmul dword [esp + 0x184]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fsqrt
fld dword [esp + 0x18]
fsub dword [0x6a95b4]
fcompp
fnstsw ax
test ah, 0x41
mov eax, dword [esi + 0x13fecc]
jne 0x440558
fadd dword [eax + 0x1c]
add eax, 0x1c
fstp dword [eax]
fadd dword [eax + 4]
fstp dword [eax + 4]
fadd dword [eax + 8]
fstp dword [eax + 8]
jmp 0x440577
lea ecx, [eax + 0x154]
fstp st(0)
mov edx, dword [ecx]
fstp st(0)
add eax, 0x1c
fstp st(0)
mov dword [eax], edx
mov edx, dword [ecx + 4]
mov dword [eax + 4], edx
mov ecx, dword [ecx + 8]
mov dword [eax + 8], ecx
mov edx, dword [esi + 0x13fecc]
mov dword [edx + 0x20], 0
mov edx, dword [0x709510]
fld dword [esp + 0x44]
fcomp dword [0x6a972c]
fnstsw ax
test ah, 0x41
jne 0x44063e
fld dword [esp + 0x34]
fmul dword [esp + 0x34]
fld dword [esp + 0x30]
fmul dword [esp + 0x30]
faddp st(1)
fld dword [esp + 0x2c]
fmul dword [esp + 0x2c]
faddp st(1)
fsqrt
fld dword [esp + 0x44]
fsub dword [0x6a95b4]
fcompp
fnstsw ax
test ah, 0x41
mov eax, dword [esi + 0x13fecc]
jne 0x440afa
cmp dword [eax + 0xdc], 3
je 0x440601
test edx, edx
mov dword [esp + 0x58], 1
je 0x4405f7
mov dword [esp + 0x58], 5
mov dword [0x70950c], 0
mov dword [eax + 0x1a8], 0
mov dword [esi + 0x1400e0], 1
fld dword [esp + 0x1c]
fadd dword [esp + 0x2c]
fstp dword [esp + 0x1c]
fld dword [esp + 0x30]
fadd dword [esp + 0x20]
fstp dword [esp + 0x20]
fld dword [esp + 0x34]
fadd dword [esp + 0x24]
fstp dword [esp + 0x24]
jmp case.default.0x43ea37
mov ecx, dword [edi + 0xb4]
test ecx, ecx
je 0x440684
fld dword [esp + 0x44]
fcomp dword [0x6a972c]
fnstsw ax
test ah, 0x41
jne 0x44067c
mov eax, dword [esi + 0x13fecc]
cmp dword [eax + 0xdc], 3
je 0x44067c
test edx, edx
mov dword [esp + 0x58], 1
je 0x44067c
mov dword [esp + 0x58], 5
test ecx, ecx
jne case.default.0x43ea37
mov ecx, dword [esi + 0x13fecc]
cmp dword [ecx + 0xdc], 2
je case.default.0x43ea37
mov eax, dword [edi + 0xc8]
test eax, eax
jne case.default.0x43ea37
mov eax, dword [0x709514]
test eax, eax
jne 0x4406ee
fld dword [esp + 0xcc]
fabs
fld dword [0x6a867c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x4406ee
fld dword [esp + 0xd4]
fabs
fld dword [0x6a867c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x4406ee
cmp dword [0x70950c], 1
je 0x4406ee
mov ecx, esi
call fcn.00439510
mov dword [esi + 0x1400e0], 2
mov eax, dword [0x854e94]
test eax, eax
jne 0x4407de
mov dword [0x854e94], 0x64
movzx edx, byte [edi + 0x60]
mov dword [0x8592e4], edx
mov eax, dword [edi + 0x5c]
mov dword [0x854e98], eax
mov ecx, dword [edi + 0x5c]
mov dword [0x854e9c], ecx
movzx edx, word [edi + 0x62]
mov dword [0x8592e0], edx
lea eax, [edi + 4]
mov edx, 0x21e9920
sub edx, eax
mov edi, edi
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
test cl, cl
jne 0x440740
cmp byte [edi + 0x60], 0xc
je 0x44078f
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x18]
add eax, 0x10
fsub dword [ebx + 8]
fld dword [eax + 4]
fsub dword [ebx + 4]
fld dword [eax]
lea eax, [edi + 0x98]
fsub dword [ebx]
fstp dword [esp + 0x38]
mov ecx, dword [esp + 0x38]
mov dword [eax], ecx
fstp dword [esp + 0x3c]
mov edx, dword [esp + 0x3c]
mov dword [eax + 4], edx
fstp dword [esp + 0x40]
mov ecx, dword [esp + 0x40]
mov dword [eax + 8], ecx
mov edx, dword [0x8592e0]
mov eax, dword [0x8592e4]
push edx
push eax
mov ecx, 0x851aa0
mov dword [0x7094f0], 0
call fcn.004c0f70
mov eax, dword [edi + 0xac]
test eax, eax
je 0x4407c6
mov ecx, dword [edi + 0x5c]
push ecx
call fcn.0058a970
add esp, 4
mov edx, dword [edi + 0x5c]
mov dword [0x21e9fe0], edx
mov dword [0x70950c], 1
jmp case.default.0x43ea37
mov dword [0x7094f0], 0
mov dword [0x70950c], 1
jmp case.default.0x43ea37
mov eax, dword [esi + 0x13fecc]
mov eax, dword [eax + 0x160]
cmp eax, 0xffffffff
mov dword [0x709524], edi
je case.default.0x43ea37
push eax
mov ecx, esi
call fcn.004469f0
mov edi, eax
xor ebx, ebx
cmp edi, ebx
je 0x440b08
cmp dword [esi + 0x1400dc], ebx
je 0x440839
mov dword [esi + 0x1400dc], ebx
call fcn.00589600
mov ecx, dword [esi + 0x13fecc]
add edi, 0x10
mov edx, dword [edi]
add ecx, 0x148
mov dword [ecx], edx
mov eax, dword [edi + 4]
mov dword [ecx + 4], eax
mov edx, dword [edi + 8]
mov dword [ecx + 8], edx
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x150]
fsub dword [eax + 0x18]
fld dword [eax + 0x148]
fsub dword [eax + 0x10]
lea eax, [esp + 0x118]
push eax
mov ecx, eax
fstp dword [esp + 0x11c]
push ecx
mov dword [esp + 0x124], 0
fstp dword [esp + 0x128]
call fcn.005d19bf
fld dword [esp + 0x28]
mov ecx, dword [esi + 0x13fecc]
fmul dword [esp + 0x120]
mov edx, dword [ecx + 0x148]
mov dword [esp + 0x70], edx
fstp dword [esp + 0x54]
fld dword [esp + 0x28]
fmul dword [esp + 0x11c]
fstp dword [esp + 0x44]
fld dword [esp + 0x28]
fmul dword [esp + 0x118]
fstp dword [esp + 0x2c]
fld dword [ecx + 0x18]
fld dword [ecx + 0x10]
fld dword [ecx + 0x150]
fsub st(2)
fstp dword [esp + 0x18]
fld dword [esp + 0x70]
fsub st(1)
fstp st(2)
fstp st(0)
fld st(0)
fmulp st(1)
fld dword [esp + 0x18]
fmul dword [esp + 0x18]
faddp st(1)
fsqrt
fabs
fstp dword [esp + 0x18]
fld dword [esp + 0x118]
fabs
fld dword [0x6a867c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x440a6a
fld dword [esp + 0x120]
fabs
fld dword [0x6a867c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x440a6a
mov edx, dword [esp + 0x120]
mov eax, dword [esp + 0x118]
add ecx, 0x154
mov dword [ecx], eax
mov dword [esp + 0x40], edx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x3c], 0
mov edx, dword [esp + 0x3c]
mov dword [ecx + 4], edx
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x15c]
lea ecx, [esp + 0x160]
fsub dword [eax + 0x24]
push ecx
fld dword [eax + 0x158]
mov edx, ecx
fsub dword [eax + 0x20]
push edx
fld dword [eax + 0x154]
fsub dword [eax + 0x1c]
fstp dword [esp + 0x168]
fst dword [esp + 0x16c]
fld st(1)
fstp dword [esp + 0x170]
fld dword [esp + 0x168]
fmul dword [esp + 0x168]
fld st(1)
fmul st(2)
faddp st(1)
fld st(2)
fmul st(3)
faddp st(1)
fstp st(2)
fstp st(0)
fsqrt
fstp dword [esp + 0x54]
call fcn.005d19bf
fld dword [esp + 0x28]
fmul dword [esp + 0x168]
fld dword [esp + 0x28]
fmul dword [esp + 0x164]
fld dword [esp + 0x28]
fmul dword [esp + 0x160]
fld st(1)
fmul st(2)
fld st(3)
fmul st(4)
faddp st(1)
fld st(1)
fmul st(2)
faddp st(1)
fsqrt
fld dword [esp + 0x4c]
fsub dword [0x6a95b4]
fcompp
fnstsw ax
test ah, 0x41
mov eax, dword [esi + 0x13fecc]
jne 0x440a42
fadd dword [eax + 0x1c]
add eax, 0x1c
fstp dword [eax]
fadd dword [eax + 4]
fstp dword [eax + 4]
fadd dword [eax + 8]
fstp dword [eax + 8]
jmp 0x440a61
lea ecx, [eax + 0x154]
fstp st(0)
mov edx, dword [ecx]
fstp st(0)
add eax, 0x1c
fstp st(0)
mov dword [eax], edx
mov edx, dword [ecx + 4]
mov dword [eax + 4], edx
mov ecx, dword [ecx + 8]
mov dword [eax + 8], ecx
mov edx, dword [esi + 0x13fecc]
mov dword [edx + 0x20], ebx
fld dword [esp + 0x18]
fcomp dword [0x6a9774]
fnstsw ax
test ah, 0x41
jne case.default.0x43ea37
fld dword [esp + 0x2c]
fmul dword [esp + 0x2c]
fld dword [esp + 0x44]
fmul dword [esp + 0x44]
faddp st(1)
fld dword [esp + 0x54]
fmul dword [esp + 0x54]
faddp st(1)
fsqrt
fld dword [esp + 0x18]
fsub dword [0x6a95b4]
fcompp
fnstsw ax
test ah, 0x41
mov eax, dword [esi + 0x13fecc]
jne 0x440afa
cmp dword [eax + 0xdc], 3
je 0x440ac7
mov dword [esp + 0x58], 1
fld dword [esp + 0x1c]
mov dword [esi + 0x1400e0], 1
fadd dword [esp + 0x2c]
fstp dword [esp + 0x1c]
fld dword [esp + 0x20]
fadd dword [esp + 0x44]
fstp dword [esp + 0x20]
fld dword [esp + 0x24]
fadd dword [esp + 0x54]
fstp dword [esp + 0x24]
jmp case.default.0x43ea37
lea ecx, [eax + 0x148]
add eax, 0x10
jmp 0x440d99
mov dword [0x7094f0], ebx
jmp case.default.0x43ea37
cmp dword [esi + 0x1400dc], edi
je 0x440b26
mov dword [esi + 0x1400dc], edi
call fcn.00589600
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x150]
lea edx, [esp + 0x124]
fsub dword [eax + 0x18]
push edx
fld dword [eax + 0x148]
fsub dword [eax + 0x10]
mov eax, edx
push eax
mov dword [esp + 0x130], 0
fstp dword [esp + 0x12c]
fstp dword [esp + 0x134]
call fcn.005d19bf
fld dword [esp + 0x28]
mov ecx, dword [esi + 0x13fecc]
fmul dword [esp + 0x12c]
mov edx, dword [ecx + 0x148]
mov dword [esp + 0x70], edx
fstp dword [esp + 0x54]
fld dword [esp + 0x28]
fmul dword [esp + 0x128]
fstp dword [esp + 0x44]
fld dword [esp + 0x28]
fmul dword [esp + 0x124]
fstp dword [esp + 0x2c]
fld dword [ecx + 0x18]
fld dword [ecx + 0x10]
fld dword [ecx + 0x150]
fsub st(2)
fstp dword [esp + 0x18]
fld dword [esp + 0x70]
fsub st(1)
fstp st(2)
fstp st(0)
fld st(0)
fmulp st(1)
fld dword [esp + 0x18]
fmul dword [esp + 0x18]
faddp st(1)
fsqrt
fabs
fstp dword [esp + 0x4c]
fld dword [esp + 0x124]
fabs
fld dword [0x6a867c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x440d38
fld dword [esp + 0x12c]
fabs
fld dword [0x6a867c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x440d38
mov edx, dword [esp + 0x12c]
mov eax, dword [esp + 0x124]
add ecx, 0x154
mov dword [ecx], eax
mov dword [esp + 0x40], edx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x3c], 0
mov edx, dword [esp + 0x3c]
mov dword [ecx + 4], edx
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x15c]
lea ecx, [esp + 0x16c]
fsub dword [eax + 0x24]
push ecx
fld dword [eax + 0x158]
mov edx, ecx
fsub dword [eax + 0x20]
push edx
fld dword [eax + 0x154]
fsub dword [eax + 0x1c]
fstp dword [esp + 0x174]
fst dword [esp + 0x178]
fld st(1)
fstp dword [esp + 0x17c]
fld dword [esp + 0x174]
fmul dword [esp + 0x174]
fld st(1)
fmul st(2)
faddp st(1)
fld st(2)
fmul st(3)
faddp st(1)
fstp st(2)
fstp st(0)
fsqrt
fstp dword [esp + 0x20]
call fcn.005d19bf
fld dword [esp + 0x28]
fmul dword [esp + 0x174]
fld dword [esp + 0x28]
fmul dword [esp + 0x170]
fld dword [esp + 0x28]
fmul dword [esp + 0x16c]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fsqrt
fld dword [esp + 0x18]
fsub dword [0x6a95b4]
fcompp
fnstsw ax
test ah, 0x41
mov eax, dword [esi + 0x13fecc]
jne 0x440d10
fadd dword [eax + 0x1c]
add eax, 0x1c
fstp dword [eax]
fadd dword [eax + 4]
fstp dword [eax + 4]
fadd dword [eax + 8]
fstp dword [eax + 8]
jmp 0x440d2f
lea ecx, [eax + 0x154]
fstp st(0)
mov edx, dword [ecx]
fstp st(0)
add eax, 0x1c
fstp st(0)
mov dword [eax], edx
mov edx, dword [ecx + 4]
mov dword [eax + 4], edx
mov ecx, dword [ecx + 8]
mov dword [eax + 8], ecx
mov edx, dword [esi + 0x13fecc]
mov dword [edx + 0x20], edi
fld dword [esp + 0x2c]
fmul dword [esp + 0x2c]
fld dword [esp + 0x44]
fmul dword [esp + 0x44]
faddp st(1)
fld dword [esp + 0x54]
fmul dword [esp + 0x54]
faddp st(1)
fsqrt
fld dword [esp + 0x4c]
fsub dword [0x6a95b4]
fcompp
fnstsw ax
test ah, 0x41
jne 0x440d74
mov eax, dword [esi + 0x13fecc]
jmp 0x440ab6
mov ecx, esi
mov dword [esi + 0x1400e0], 2
call fcn.00439510
mov eax, dword [esi + 0x13fecc]
mov dword [0x7094f0], edi
lea ecx, [eax + 0x10]
add eax, 0x148
mov edx, dword [ecx]
mov dword [eax], edx
mov edx, dword [ecx + 4]
mov dword [eax + 4], edx
mov ecx, dword [ecx + 8]
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x58]
test eax, eax
je 0x440eb6
mov edx, dword [esi + 0x13fecc]
cmp byte [edx + 0x275], 0xff
je 0x440eb6
mov dword [0x21e926c], 0
mov ecx, dword [esi + 0x13fecc]
mov eax, dword [ecx + 0xdc]
cmp eax, 2
je case.default.0x440e18
cmp eax, 3
je case.default.0x440e18
cmp eax, 9
je case.default.0x440e18
mov eax, dword [ecx + 0xe0]
test eax, eax
je 0x440e0a
push 7
jmp 0x440f77
mov eax, dword [esp + 0x58]
dec eax
cmp eax, 4
ja case.default.0x440e18
jmp dword [eax*4 + 0x442aa8]
mov eax, dword [ecx + 0x168]
test eax, eax
je 0x440e54
mov dl, byte [ecx + 0x280]
test dl, dl
mov eax, 2
jne 0x440e4b
xor eax, eax
mov al, byte [ecx + 0x185]
mov ecx, 0x851aa0
push eax
call fcn.004c1580
mov ecx, dword [esi + 0x13fecc]
push eax
jmp 0x440e56
push 1
call fcn.00411e20
mov ecx, dword [esi + 0x13fecc]
mov dword [ecx + 0xdc], 1
jmp case.default.0x440e18
push 1
call fcn.00411e20
mov edx, dword [esi + 0x13fecc]
mov dword [edx + 0xdc], 1
jmp case.default.0x440e18
push 3
call fcn.00411e20
mov eax, dword [esi + 0x13fecc]
mov dword [eax + 0xdc], 1
jmp case.default.0x440e18
push 4
jmp 0x440f77
push 5
jmp 0x440f77
mov ecx, dword [esi + 0x13fecc]
cmp byte [ecx + 0x274], 0xff
jne 0x440eca
call fcn.004163b0
mov ecx, dword [esi + 0x13fecc]
mov al, byte [ecx + 0x1b4]
test al, al
jne case.default.0x440e18
mov eax, dword [ecx + 0xdc]
cmp eax, 8
je case.default.0x440e18
cmp eax, 2
je case.default.0x440e18
cmp eax, 3
je case.default.0x440e18
cmp eax, 9
je case.default.0x440e18
cmp eax, 7
jne 0x440f11
push 0xc
jmp 0x440f77
mov eax, dword [ecx + 0xe0]
test eax, eax
je 0x440f1f
push 6
jmp 0x440f55
call dword [0x6a8588]
mov ecx, dword [esi + 0x13fecc]
sub eax, dword [ecx + 0x1a8]
cmp eax, 0x2710
jbe 0x440f3c
push 0
jmp 0x440f55
movzx ecx, byte [ecx + 0x185]
push ecx
mov ecx, 0x851aa0
call fcn.004c14a0
mov ecx, dword [esi + 0x13fecc]
push eax
call fcn.00411e20
mov edx, dword [esi + 0x13fecc]
mov dword [edx + 0xdc], 0
jmp case.default.0x440e18
cmp dword [ecx + 0xdc], 4
jne case.default.0x440e18
push 9
call fcn.00411e20
mov ecx, dword [0x709538]
mov eax, 8
cmp ecx, eax
jne 0x440faa
mov ecx, dword [esi + 0x13fecc]
cmp dword [ecx + 0xdc], eax
je 0x440faa
mov ecx, esi
mov dword [esi + 0x1400e0], 2
call fcn.00439510
mov eax, dword [ebp + 8]
xor edi, edi
cmp eax, edi
jne 0x441879
mov edx, dword [esp + 0x5c]
push edx
mov ecx, esi
call fcn.004387a0
mov eax, dword [esi + 0x13fecc]
cmp dword [eax + 0x288], edi
mov ax, word [0x21e98a4]
je 0x440fe1
cmp ax, 5
ja 0x4410d0
cmp ax, di
je 0x4410d7
cmp ax, 0x10
jne 0x4410b6
cmp dword [0x6f3558], 2
je 0x44107c
mov ax, word [0x852b18]
cmp ax, 0x2a
je 0x44107c
mov cl, byte [0x21e8d7a]
test cl, cl
jne 0x44104b
cmp ax, 0x23
je 0x44107c
push edi
push 0x447a0000
push 0x21f4060
push 0x6ab5a8
mov ecx, 0x21f1d78
call fcn.00524960
push 0x1cb
push 0x11
call fcn.0041dfb0
add esp, 8
jmp 0x4410d0
cmp ax, 0x24
je 0x44107c
push edi
push 0x447a0000
push 0x21f4060
push 0x6ab5a8
mov ecx, 0x21f1d78
call fcn.00524960
push 0x1cc
push 0x11
call fcn.0041dfb0
add esp, 8
jmp 0x4410d0
mov ecx, dword [0x8494ac]
mov eax, dword [ecx + 0xdc]
cmp eax, 5
je 0x44109c
cmp eax, 7
je 0x44109c
push 1
call fcn.00589c60
add esp, 4
cmp dword [0x854e94], edi
jne 0x4410d0
mov dword [0x21e9880], edi
mov dword [0x854e94], 0xd
jmp 0x4410d0
cmp ax, 5
jbe 0x4410d0
xor edx, edx
mov dl, byte [0x21e98a4]
add dl, 0x6e
push edx
call fcn.00589c60
add esp, 4
mov word [0x21e98a4], di
mov cl, byte [0x21e8c08]
test cl, cl
je 0x44113f
cmp dword [esp + 0x58], edi
jne 0x44113f
mov eax, dword [esi + 0x13fecc]
cmp dword [eax + 0x160], 0xffffffff
je 0x441129
mov eax, dword [0x853e50]
cmp eax, edi
jne 0x441114
movzx ecx, cl
mov dword [0x709514], ecx
mov dword [0x7094f0], 3
jmp 0x441138
cmp eax, 2
jne 0x441138
movzx edx, cl
mov dword [0x709514], edx
mov dword [0x7094f0], eax
jmp 0x441138
push 0xe8
push 0x11
call fcn.0041dfb0
add esp, 8
mov byte [0x21e8c08], 0
mov cl, byte [0x709598]
mov eax, 0x20
test al, cl
jne 0x44115f
or dword [0x709598], eax
call dword [0x6a8588]
mov dword [0x709574], eax
mov eax, dword [esi + 0x13fecc]
mov ebx, dword [eax + 0x160]
cmp dword [0x21ee230], 1
jne 0x441278
mov eax, dword [0x21ee234]
test eax, eax
jne 0x441278
mov ecx, esi
call fcn.0043a4f0
cmp eax, 0xffffffff
je 0x441278
cmp ebx, eax
jne 0x441278
mov ecx, dword [esi + 0x13fecc]
mov edx, dword [ecx + 0x160]
push edx
mov ecx, esi
call fcn.00446890
mov edi, eax
test edi, edi
je 0x441278
mov eax, dword [esi + 0x13fecc]
mov cl, byte [edi + 0x276]
cmp cl, byte [eax + 0x276]
je 0x4411e5
mov ax, word [0x852b18]
cmp ax, 0x2a
je 0x4411e5
cmp ax, 0x28
jne 0x441278
push edi
mov dword [esp + 0x1c], 0x41200000
call fcn.0047ac80
add esp, 4
test al, al
je 0x441202
fld dword [0x6ab604]
jmp 0x441206
fld dword [esp + 0x18]
mov eax, dword [esi + 0x13fecc]
fld dword [edi + 0x18]
fsub dword [eax + 0x18]
add eax, 0x10
fld dword [edi + 0x14]
fsub dword [eax + 4]
fld dword [edi + 0x10]
fsub dword [eax]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fstp st(3)
fstp st(0)
fstp st(0)
fsqrt
fabs
fxch st(1)
fcompp
fnstsw ax
test ah, 5
jp 0x441256
push 0xe9
push 0x11
call fcn.0041dfb0
add esp, 8
jmp 0x441278
mov dword [0x853e50], 2
mov edx, dword [esi + 0x13fecc]
mov eax, dword [edx + 0x160]
mov dword [0x8592d0], eax
mov byte [0x21e8c09], 1
cmp dword [0x21ee228], 1
jne 0x441879
mov ecx, dword [esi + 0x13fecc]
lea edi, [esi + 0x140210]
add ecx, 0x10
push edi
push ecx
lea ecx, [esi + 0x13d740]
call fcn.00520300
mov ecx, esi
mov dword [0x709514], 0
call fcn.0043a720
mov edx, dword [esi + 0x13fecc]
mov dword [edx + 0x160], eax
mov eax, dword [esi + 0x13fecc]
cmp dword [eax + 0x160], 0xffffffff
je 0x4412e1
mov eax, 1
mov dword [0x853e50], eax
mov dword [0x7094f0], eax
jmp 0x441879
mov ecx, esi
call fcn.0043abc0
mov ecx, dword [esi + 0x13fecc]
mov dword [ecx + 0x160], eax
mov edx, dword [esi + 0x13fecc]
cmp dword [edx + 0x160], 0xffffffff
je 0x441336
mov edi, dword [0x6a8588]
mov dword [0x853e50], 3
call edi
mov eax, dword [esi + 0x13fecc]
cmp ebx, dword [eax + 0x160]
jne 0x441497
mov dword [0x7094f0], 4
jmp 0x441879
mov ecx, esi
call fcn.0043a990
mov ecx, dword [esi + 0x13fecc]
mov dword [ecx + 0x160], eax
mov edx, dword [esi + 0x13fecc]
mov eax, dword [edx + 0x160]
cmp eax, 0xffffffff
je 0x4413cb
cmp dword [0x6f3be0], eax
jne 0x44136b
cmp dword [0x7094f0], 3
je 0x441374
push eax
call fcn.0058c4f0
add esp, 4
mov edi, dword [0x6a8588]
mov dword [0x853e50], 0
call edi
mov eax, dword [esi + 0x13fecc]
mov ecx, dword [eax + 0x160]
call fcn.00438770
cmp ebx, ecx
jne 0x441430
mov dword [0x7094f0], 3
mov ecx, dword [esi + 0x13fecc]
mov edx, dword [ecx + 0x160]
mov eax, dword [0x853e50]
push edx
push eax
mov ecx, 0x851aa0
call fcn.004c6bf0
jmp 0x441879
mov ecx, esi
call fcn.0043a4f0
mov ecx, dword [esi + 0x13fecc]
mov dword [ecx + 0x160], eax
mov edx, dword [esi + 0x13fecc]
mov eax, dword [edx + 0x160]
cmp eax, 0xffffffff
je 0x441455
cmp dword [0x6f3be0], eax
jne 0x441400
cmp dword [0x7094f0], 2
je 0x441409
push eax
call fcn.0058c490
add esp, 4
mov edi, dword [0x6a8588]
mov dword [0x853e50], 2
call edi
mov eax, dword [esi + 0x13fecc]
mov ecx, dword [eax + 0x160]
call fcn.00438770
cmp ebx, ecx
je 0x441446
mov dword [0x7094f0], 0
call edi
mov dword [0x709574], eax
jmp 0x4413a9
mov dword [0x7094f0], 2
jmp 0x4413a9
mov ecx, esi
call fcn.0043ae00
mov ecx, dword [esi + 0x13fecc]
mov dword [ecx + 0x160], eax
mov eax, dword [esi + 0x13fecc]
cmp dword [eax + 0x160], 0xffffffff
je 0x4414c1
mov edi, dword [0x6a8588]
mov dword [0x853e50], 2
call edi
mov edx, dword [esi + 0x13fecc]
cmp ebx, dword [edx + 0x160]
je 0x4414b2
call fcn.00438770
mov dword [0x7094f0], 0
call edi
mov dword [0x709574], eax
jmp 0x441879
mov dword [0x7094f0], 5
jmp 0x441879
mov dword [eax + 0x160], ebx
mov eax, dword [0x705e18]
test eax, eax
je 0x441879
mov eax, dword [esi + 0x13fecc]
add eax, 0x148
push eax
push edi
lea ecx, [esi + 0xc]
xor ebx, ebx
call fcn.00590b00
test al, al
je 0x441548
lea ecx, [esp + 0x88]
push ecx
lea edx, [esp + 0x2b0]
push edx
mov ecx, 0x70955c
call fcn.00436ac0
mov ecx, eax
call fcn.00436a50
fstp dword [esi + 0x140228]
mov eax, dword [esi + 0x13fecc]
mov ecx, dword [eax + 0x150]
mov edx, dword [eax + 0x148]
push ecx
push edx
mov ecx, esi
call fcn.0040e230
fadd dword [0x6a95c0]
mov eax, dword [esi + 0x13fecc]
mov ebx, 1
fstp dword [eax + 0x14c]
lea ecx, [esp + 0x238]
xor edi, edi
mov dword [esp + 0xc8], 0x497423f0
call fcn.0059e710
push 0x43fa0000
sub esp, 0xc
lea edx, [esp + 0xcc]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
mov dword [esp + 0x730], edi
call fcn.0041f8f0
lea eax, [esp + 0x328]
push eax
call fcn.0041f940
add esp, 0x14
push eax
lea ecx, [esp + 0x2f8]
push ecx
lea ecx, [esp + 0x90]
call fcn.0041f910
push eax
lea edx, [esp + 0x8c]
push edx
lea ecx, [esp + 0x2c0]
call fcn.0041f970
push eax
lea ecx, [esp + 0x23c]
call fcn.0041f9a0
lea ecx, [esp + 0x2b8]
call fcn.00697fa0
push edi
lea eax, [esp + 0x200]
push eax
lea ecx, [esp + 0xd0]
push ecx
lea edx, [esp + 0x244]
push edx
lea ecx, [esi + 0x13cc3c]
call fcn.00592ce0
test al, al
jne 0x44167d
push 0
lea eax, [esp + 0x200]
push eax
lea ecx, [esp + 0xd0]
push ecx
lea edx, [esp + 0x244]
push edx
lea ecx, [esi + 0x13d02c]
call fcn.005951e0
test al, al
jne 0x44167d
push 0
lea eax, [esp + 0x200]
push eax
lea ecx, [esp + 0xd0]
push ecx
lea edx, [esp + 0x244]
push edx
lea ecx, [esi + 0x13d0b8]
call fcn.005951e0
test al, al
jne 0x44167d
push 0
lea eax, [esp + 0x200]
push eax
lea ecx, [esp + 0xd0]
push ecx
lea edx, [esp + 0x244]
push edx
lea ecx, [esi + 0x13d374]
call fcn.005951e0
test al, al
je 0x4416d6
fld dword [esi + 0x140228]
fcomp dword [esp + 0xc8]
fnstsw ax
test ah, 0x41
jne 0x4416d6
mov eax, dword [esi + 0x13fecc]
mov ecx, dword [esp + 0x1fc]
add eax, 0x148
mov dword [eax], ecx
mov edx, dword [esp + 0x200]
mov dword [eax + 4], edx
mov ecx, dword [esp + 0x204]
mov dword [eax + 8], ecx
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x14c]
mov edi, 1
fadd dword [0x6a95c0]
fstp dword [eax + 0x14c]
test ebx, ebx
jne 0x4416e2
test edi, edi
je 0x441862
mov dword [0x7094f0], 6
xor ebx, ebx
lea edi, [esi + 0x1401f0]
mov ecx, dword [edi]
test ecx, ecx
je 0x441706
mov edx, dword [ecx]
push 1
call dword [edx]
mov dword [edi], 0
push ebx
mov ecx, 0x21fa9a8
call fcn.0040cff0
test eax, eax
mov dword [edi], eax
je 0x4417c7
mov dword [eax + 0x104], 6
mov eax, dword [esi + 0x13fecc]
mov ecx, dword [edi]
add eax, 0x148
mov edx, dword [eax]
add ecx, 0x2c
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov dword [ecx + 4], edx
mov eax, dword [eax + 8]
mov dword [ecx + 8], eax
mov eax, dword [edi]
fld dword [eax + 0x30]
mov dword [esp + 0x38], 0
fsub dword [0x6a95c0]
mov edx, dword [esp + 0x38]
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0x3f800000
fstp dword [eax + 0x30]
mov ecx, dword [edi]
mov eax, dword [esp + 0x3c]
add ecx, 0x38
mov dword [ecx], edx
mov edx, dword [esp + 0x40]
mov dword [ecx + 4], eax
mov dword [ecx + 8], edx
mov eax, dword [edi]
mov dword [esp + 0xbc], 0
mov ecx, dword [esp + 0xbc]
add eax, 0x44
mov dword [eax], ecx
mov dword [esp + 0xc0], 0x3f800000
mov edx, dword [esp + 0xc0]
mov dword [esp + 0xc4], 0
mov ecx, dword [esp + 0xc4]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
inc ebx
add edi, 4
cmp ebx, 8
jl 0x4416f4
mov eax, dword [esi + 0x1401f8]
test eax, eax
je 0x44180d
mov dword [esp + 0x38], 0
mov edx, dword [esp + 0x38]
add eax, 0x2c
mov dword [eax], edx
mov dword [esp + 0x3c], 0
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x40], 0
mov edx, dword [esp + 0x40]
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
mov eax, dword [esi + 0x140200]
test eax, eax
je 0x441846
mov dword [esp + 0x38], 0
mov ecx, dword [esp + 0x38]
add eax, 0x2c
mov dword [eax], ecx
mov dword [esp + 0x3c], 0
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x40], 0
mov ecx, dword [esp + 0x40]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov edx, dword [0x7094a0]
mov eax, dword [edx]
mov eax, dword [eax + 0x280]
test eax, eax
je 0x441862
mov dword [eax + 0x104], 0xffffffff
lea ecx, [esp + 0x238]
mov dword [esp + 0x71c], 0xffffffff
call fcn.00697fa0
mov eax, dword [esi + 0x13fecc]
mov ecx, dword [eax + 0x160]
mov dword [0x6f3be0], ecx
mov cl, byte [eax + 0x279]
cmp cl, 2
jb 0x4418bf
mov edx, dword [0x7094f0]
cmp edx, 6
je 0x4418b0
cmp edx, 5
je 0x4418b0
mov dword [0x7094f0], 0
cmp cl, 4
je 0x4418bf
mov dword [0x7094f0], 0
mov ecx, dword [0x709500]
test ecx, ecx
je 0x44190d
cmp dword [eax + 0xcc], 8
jne 0x44190d
fld dword [eax + 0xc8]
fcomp dword [0x6a867c]
fnstsw ax
test ah, 0x41
jne 0x44190d
mov edi, 1
mov ecx, esi
mov dword [0x7094f8], edi
mov dword [0x709500], 0
call fcn.00439510
push 2
call fcn.00589c60
add esp, 4
jmp 0x441912
mov edi, 1
mov ecx, dword [esi + 0x13fecc]
cmp byte [ecx + 0x275], 0xff
jne 0x441951
mov dword [esp + 0x38], 0
mov edx, dword [esp + 0x38]
mov dword [esp + 0x3c], 0
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x40], 0
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], edx
fld dword [0x705f54]
fmul dword [0x6a974c]
fadd dword [0x6a92f8]
fmul dword [0x6f3bdc]
fst dword [0x6f3bdc]
fcomp dword [0x6a9748]
fnstsw ax
test ah, 5
jp 0x441986
mov dword [0x6f3bdc], 0xc1a00000
fld dword [0x6f3bdc]
mov eax, dword [0x7094f8]
test eax, eax
fmul dword [0x705f54]
fstp dword [esp + 0x48]
je 0x4419b3
fld dword [0x7094fc]
fmul dword [0x705f54]
fadd dword [esp + 0x48]
fstp dword [esp + 0x48]
lea eax, [ecx + 0x10]
mov edx, eax
mov ebx, dword [edx]
mov dword [esp + 0xbc], ebx
mov ebx, dword [edx + 4]
mov edx, dword [edx + 8]
mov dword [esp + 0xc4], edx
mov dl, byte [esi + 9]
test dl, dl
mov dword [esp + 0xc0], ebx
jne 0x441ce2
fld dword [ecx + 0x18]
push ecx
fadd dword [0x6a960c]
lea edx, [esp + 0x2e0]
fstp dword [esp + 0x1c]
fld dword [ecx + 0x18]
mov ecx, dword [eax]
fsub dword [0x6a960c]
fstp dword [esp]
push ecx
mov ecx, dword [esp + 0x20]
fld dword [eax]
fadd dword [0x6a960c]
push ecx
push ecx
fstp dword [esp]
push ecx
fld dword [eax]
push ecx
fsub dword [0x6a960c]
lea ecx, [esi + 0xc]
fstp dword [esp]
push edx
call fcn.00590a90
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [esp + 0x88], ecx
lea ecx, [esp + 0x88]
mov dword [esp + 0x8c], edx
mov dword [esp + 0x90], eax
call fcn.00436ba0
fld dword [esp + 0x88]
fadd dword [esp + 0x90]
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0x8c]
fmul dword [0x6a867c]
mov dword [esp + 0x34], eax
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x30], edx
fadd dword [esp + 0x8c]
fst dword [esp + 0x50]
fcomp dword [0x6a95b8]
fnstsw ax
test ah, 5
jp 0x441cdc
mov ecx, dword [esi + 0x13fecc]
fld dword [ecx + 0x14]
fcomp dword [0x6a867c]
fnstsw ax
test ah, 0x41
jne 0x441cdc
mov al, byte [ecx + 0x25c]
test al, al
jne 0x441cdc
mov edx, dword [ecx + 0x18]
mov eax, dword [ecx + 0x10]
push edx
push eax
mov ecx, esi
call fcn.0040e230
fadd dword [0x6a95c0]
mov ecx, dword [esi + 0x13fecc]
fld dword [esp + 0x48]
fadd dword [ecx + 0x14]
fcomp st(1)
fnstsw ax
fstp st(0)
test ah, 0x41
jp 0x441ce2
mov eax, dword [0x709570]
test eax, eax
je 0x441b0d
inc dword [0x6f3c04]
fld dword [esp + 0x30]
fmul dword [0x6a867c]
fld dword [esp + 0x34]
fsubr st(1)
fstp dword [esp + 0x38]
mov edx, dword [esp + 0x38]
fld dword [esp + 0x34]
mov dword [esp + 0x88], edx
fmul dword [0x6a867c]
fld dword [esp + 0x2c]
fmul dword [0x6a867c]
fsubp st(1)
fstp dword [esp + 0x3c]
mov eax, dword [esp + 0x3c]
fld dword [esp + 0x2c]
mov dword [esp + 0x8c], eax
fsub st(1)
fstp dword [esp + 0x40]
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x90], ecx
fstp st(0)
fld dword [esp + 0x90]
fmul dword [esp + 0x30]
fld dword [esp + 0x8c]
fmul dword [esp + 0x34]
fsubp st(1)
fstp dword [esp + 0x38]
mov edx, dword [esp + 0x38]
fld dword [esp + 0x88]
fmul dword [esp + 0x34]
fld dword [esp + 0x2c]
fmul dword [esp + 0x90]
fsubp st(1)
fstp dword [esp + 0x3c]
mov eax, dword [esp + 0x3c]
fld dword [esp + 0x2c]
mov dword [esp + 0x2c], edx
fmul dword [esp + 0x8c]
fld dword [esp + 0x88]
fmul dword [esp + 0x30]
mov dword [esp + 0x30], eax
fsubp st(1)
fstp dword [esp + 0x40]
mov ecx, dword [esp + 0x40]
fld dword [esp + 0x50]
mov dword [esp + 0x34], ecx
fcomp dword [0x6a960c]
fnstsw ax
test ah, 5
jp 0x441c39
fld dword [esp + 0x34]
fmul dword [0x705f54]
fld dword [esp + 0x30]
fmul dword [0x705f54]
fld dword [esp + 0x2c]
fmul dword [0x705f54]
fstp dword [esp + 0x70]
fild dword [0x6f3c04]
fstp dword [esp + 0x5c]
fxch st(1)
fmul dword [esp + 0x5c]
fstp dword [esp + 0x18]
fmul dword [esp + 0x5c]
fld dword [esp + 0x70]
fmul dword [esp + 0x5c]
fld dword [0x6a92f8]
fsub dword [esp + 0x50]
fmul dword [0x6a95f0]
jmp 0x441c9c
fld dword [esp + 0x50]
fcomp dword [0x6a9774]
fld dword [esp + 0x34]
fmul dword [0x705f54]
fld dword [esp + 0x30]
fmul dword [0x705f54]
fld dword [esp + 0x2c]
fmul dword [0x705f54]
fnstsw ax
fstp dword [esp + 0x70]
test ah, 5
fild dword [0x6f3c04]
fstp dword [esp + 0x5c]
fxch st(1)
fmul dword [esp + 0x5c]
fstp dword [esp + 0x18]
fmul dword [esp + 0x5c]
fld dword [esp + 0x70]
fmul dword [esp + 0x5c]
fld dword [0x6a92f8]
fsub dword [esp + 0x50]
jp 0x441c9c
fmul dword [0x6a9778]
fld dword [esp + 0x18]
fmul st(1)
mov dword [0x709570], edi
fstp dword [esp + 0x4c]
fxch st(2)
fmul st(2)
fstp dword [esp + 0x18]
fmulp st(1)
fld dword [esp + 0x1c]
fadd st(1)
fstp dword [esp + 0x1c]
fstp st(0)
fld dword [esp + 0x20]
fadd dword [esp + 0x18]
fstp dword [esp + 0x20]
fld dword [esp + 0x24]
fadd dword [esp + 0x4c]
fstp dword [esp + 0x24]
jmp 0x441ce2
mov dword [0x6f3c04], edi
fld dword [esp + 0x24]
fmul dword [esp + 0x24]
fld dword [esp + 0x1c]
fmul dword [esp + 0x1c]
faddp st(1)
fld dword [esp + 0x20]
fmul dword [esp + 0x20]
faddp st(1)
fsqrt
fcomp dword [0x6a95b4]
fnstsw ax
test ah, 0x41
jp 0x441dde
fld dword [0x709550]
mov dword [esp + 0x40], 0
fadd dword [esp + 0x1c]
mov dword [esp + 0x3c], 0
mov dword [esp + 0x38], 0
fstp dword [0x709550]
fld dword [0x709554]
fadd dword [esp + 0x20]
fstp dword [0x709554]
fld dword [0x709558]
fadd dword [esp + 0x24]
fst dword [0x709558]
fmul dword [0x709558]
fld dword [0x709554]
fmul dword [0x709554]
faddp st(1)
fld dword [0x709550]
fmul dword [0x709550]
faddp st(1)
fsqrt
fcomp dword [0x6a95b4]
fnstsw ax
test ah, 1
jne 0x441dc6
mov edx, dword [0x709550]
mov eax, dword [0x709554]
mov ecx, dword [0x709558]
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x38]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x40]
mov dword [0x709550], edx
mov dword [0x709554], eax
mov dword [0x709558], ecx
jmp 0x441dde
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], ecx
fld dword [0x6a867c]
fld dword [esp + 0x1c]
fucompp
fnstsw ax
test ah, 0x44
jp 0x441e4b
fld dword [0x6a867c]
fld dword [esp + 0x24]
fucompp
fnstsw ax
test ah, 0x44
jp 0x441e4b
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x48]
push 0
sub esp, 0xc
mov eax, esp
mov dword [eax], edx
mov edx, dword [esp + 0x34]
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
mov eax, dword [esi + 0x13fecc]
mov edx, dword [eax + 0x10]
add eax, 0x10
mov dword [esp + 0x28], esp
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov dword [ecx + 4], edx
mov eax, dword [eax + 8]
mov dword [ecx + 8], eax
lea ecx, [esp + 0x2ec]
jmp 0x441e8f
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x48]
push edi
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [esp + 0x34]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov eax, dword [esi + 0x13fecc]
mov edx, dword [eax + 0x10]
add eax, 0x10
mov dword [esp + 0x28], esp
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov dword [ecx + 4], edx
mov eax, dword [eax + 8]
mov dword [ecx + 8], eax
lea ecx, [esp + 0x328]
mov dword [esp + 0x34], esp
push ecx
mov ecx, esi
call fcn.00437450
fld dword [esp + 0x48]
mov edx, dword [esi + 0x13fecc]
fabs
mov ecx, dword [eax]
add edx, 0x10
mov dword [edx], ecx
mov ecx, dword [eax + 4]
fcomp dword [0x6a95b4]
mov dword [edx + 4], ecx
mov eax, dword [eax + 8]
mov dword [edx + 8], eax
fnstsw ax
test ah, 0x41
jp 0x441ef0
fld dword [esp + 0x48]
fadd dword [0x709534]
fst dword [0x709534]
fabs
fcomp dword [0x6a95b4]
fnstsw ax
test ah, 1
jne 0x441ef0
mov dword [0x709534], 0
mov ecx, dword [esi + 0x13fecc]
fld dword [0x709544]
fsub dword [ecx + 0x14]
xor ebx, ebx
xor edi, edi
mov dword [esp + 0x44], ebx
fabs
fcomp dword [0x6a9774]
fnstsw ax
test ah, 0x41
jne 0x441f1c
mov byte [ecx + 0x25c], bl
mov al, byte [esi + 0x13ff48]
test al, al
je 0x441f64
mov eax, dword [esi + 0x13fecc]
mov ecx, dword [eax + 0x14]
mov ebx, 1
mov byte [eax + 0x25c], bl
mov edx, dword [esi + 0x13fecc]
mov eax, dword [edx + 0x14]
mov dword [esp + 0x44], ecx
mov dword [0x6f3bdc], 0xc03eb852
mov dword [0x7094f8], edi
mov dword [0x709544], eax
mov dword [0x709520], ebx
jmp 0x441f7e
cmp dword [0x7094f8], edi
jne 0x441f78
mov dword [0x709520], 1
jmp 0x441f7e
mov dword [0x709520], edi
mov al, byte [esi + 9]
test al, al
je 0x441f8d
fld dword [0x6ab5c0]
jmp 0x441fb5
mov eax, dword [esi + 0x13fecc]
mov ecx, dword [eax + 0x18]
mov edx, dword [eax + 0x10]
mov eax, ecx
mov dword [esp + 0x18], ecx
mov ecx, edx
push eax
push ecx
lea ecx, [esi + 0xc]
mov dword [esp + 0x54], edx
call fcn.00590a50
fadd dword [0x6a95c0]
mov ecx, dword [esi + 0x13fecc]
fcom dword [ecx + 0x14]
fnstsw ax
test ah, 1
jne 0x44208f
fld dword [esp + 0xc0]
fcomp st(1)
fnstsw ax
test ah, 0x41
jp 0x44206b
fsub dword [ecx + 0x14]
push edi
sub esp, 0xc
mov eax, esp
mov dword [eax], edi
fstp dword [eax + 4]
mov dword [eax + 8], edi
mov eax, dword [esi + 0x13fecc]
mov edx, dword [eax + 0x10]
mov dword [esp + 0x28], esp
add eax, 0x10
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov dword [ecx + 4], edx
mov eax, dword [eax + 8]
mov dword [ecx + 8], eax
lea ecx, [esp + 0x304]
mov dword [esp + 0x34], esp
push ecx
mov ecx, esi
call fcn.00437450
mov edx, dword [esi + 0x13fecc]
mov ecx, dword [eax]
add edx, 0x10
mov dword [edx], ecx
mov ecx, dword [eax + 4]
mov dword [edx + 4], ecx
mov eax, dword [eax + 8]
mov dword [edx + 8], eax
mov al, byte [esi + 0x13ff48]
test al, al
je 0x442077
mov eax, dword [esi + 0x13fecc]
mov ecx, dword [eax + 0x14]
mov byte [eax + 0x25c], 1
mov edx, dword [esi + 0x13fecc]
mov eax, dword [edx + 0x14]
mov dword [esp + 0x44], ecx
mov dword [0x709544], eax
jmp 0x442072
fst dword [esp + 0x44]
fstp dword [ecx + 0x14]
mov ebx, 1
mov dword [0x6f3bdc], 0xc03eb852
mov dword [0x7094f8], edi
mov dword [0x709520], edi
jmp 0x4420a3
mov eax, dword [0x7094f8]
fstp st(0)
xor ecx, ecx
cmp eax, edi
sete cl
mov dword [0x709520], ecx
mov ecx, dword [esi + 0x13fecc]
fld dword [ecx + 0x14]
fcomp dword [0x6a9744]
fnstsw ax
test ah, 0x41
jp 0x4420d2
mov dword [ecx + 0xe0], 1
mov edx, dword [esi + 0x13fecc]
mov dword [edx + 0x14], 0xbecccccd
jmp 0x4420d8
mov dword [ecx + 0xe0], edi
mov ecx, dword [esi + 0x13fecc]
fld dword [ecx + 0x10]
mov edx, 0x3f800000
fcomp dword [0x6a92f8]
fnstsw ax
test ah, 5
jp 0x4420f6
mov dword [ecx + 0x10], edx
mov ecx, dword [esi + 0x13fecc]
fld dword [ecx + 0x18]
fcomp dword [0x6a92f8]
fnstsw ax
test ah, 5
jp 0x44210f
mov dword [ecx + 0x18], edx
mov eax, dword [0x8496c4]
mov ecx, dword [esi + 0x13fecc]
dec eax
mov dword [esp + 0x18], eax
fild dword [esp + 0x18]
fcom dword [ecx + 0x10]
fnstsw ax
test ah, 5
jp 0x442132
fstp dword [ecx + 0x10]
jmp 0x442134
fstp st(0)
mov edx, dword [0x8496c4]
mov ecx, dword [esi + 0x13fecc]
dec edx
mov dword [esp + 0x18], edx
fild dword [esp + 0x18]
fcom dword [ecx + 0x18]
fnstsw ax
test ah, 5
jp 0x442158
fstp dword [ecx + 0x18]
jmp 0x44215a
fstp st(0)
cmp dword [0x705dc8], edi
mov eax, dword [esi + 0x13fecc]
je 0x442209
fld dword [0x21f406c]
add eax, 0x10
fsub dword [esp + 0x64]
mov ecx, dword [eax]
fld dword [0x21f4070]
mov dword [0x21f4060], ecx
fsub dword [esp + 0x68]
mov edx, dword [eax + 4]
fld dword [0x21f4074]
mov dword [0x21f4064], edx
fsub dword [esp + 0x6c]
mov eax, dword [eax + 8]
mov dword [0x21f4068], eax
fstp dword [esp + 0x78]
fld dword [0x21f4064]
fadd dword [0x6a975c]
fstp dword [0x21f4064]
fld dword [0x21f4060]
fadd st(2)
fstp dword [esp + 0x64]
mov edx, dword [esp + 0x64]
fld dword [0x21f4064]
mov dword [0x21f406c], edx
fadd st(1)
fstp dword [esp + 0x68]
mov edx, dword [esp + 0x68]
mov dword [0x21f4070], edx
fstp st(0)
fstp st(0)
fld dword [0x21f4068]
fadd dword [esp + 0x78]
fstp dword [esp + 0x6c]
mov edx, dword [esp + 0x6c]
mov dword [0x21f4074], edx
jmp 0x4422fd
add eax, 0x10
mov ecx, dword [eax]
mov dword [0x21f406c], ecx
mov edx, dword [eax + 4]
mov dword [0x21f4070], edx
mov eax, dword [eax + 8]
mov dword [0x21f4074], eax
mov ecx, dword [esi + 0x13fecc]
mov eax, dword [ecx + 0xdc]
cmp eax, 7
je 0x44224f
cmp eax, 5
je 0x44224f
fld dword [0x6f3bd8]
fsub dword [0x6a975c]
fadd dword [0x21f4070]
jmp 0x44225b
fld dword [0x21f4070]
fsub dword [0x6ab4b0]
fstp dword [0x21f4070]
mov edx, dword [esi + 0x13fecc]
mov eax, dword [edx + 0xdc]
cmp eax, 1
je 0x44228d
cmp eax, 3
je 0x44228d
cmp eax, 5
je 0x442281
cmp eax, 6
jne 0x442297
mov dword [0x21f8ddc], 0x3fc00000
jmp 0x442297
mov dword [0x21f8ddc], 0x41200000
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x10]
add eax, 0x10
fsub dword [esp + 0xbc]
fld dword [eax + 4]
fsub dword [esp + 0xc0]
fld dword [eax + 8]
fsub dword [esp + 0xc4]
fstp dword [esp + 0x78]
fld dword [0x21f4060]
fadd st(2)
fstp dword [0x21f4060]
mov ecx, dword [0x21f4060]
fld dword [0x21f4064]
fadd st(1)
fstp dword [0x21f4064]
fstp st(0)
fstp st(0)
fld dword [0x21f4068]
fadd dword [esp + 0x78]
fstp dword [0x21f4068]
mov eax, dword [0x21f4068]
mov edx, dword [esi + 0x13fecc]
mov edx, dword [edx + 0x14]
mov dword [esp + 0x18], edx
mov dl, byte [esi + 9]
test dl, dl
push eax
je 0x442325
mov eax, dword [esp + 0x1c]
push eax
push ecx
lea ecx, [esi + 0x13cc3c]
call fcn.00592bc0
jmp 0x44232e
push ecx
lea ecx, [esi + 0xc]
call fcn.00590a50
mov al, byte [esi + 9]
fadd dword [0x6a95b8]
test al, al
je 0x44235d
mov ecx, dword [esi + 0x13fecc]
fld dword [ecx + 0x14]
fadd dword [0x6a9778]
fst dword [esp + 0x5c]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x44235d
fstp st(0)
fld dword [esp + 0x5c]
fld dword [0x21f4064]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x442374
fstp dword [0x21f4064]
jmp 0x442376
fstp st(0)
mov ecx, dword [esi + 0x13fecc]
fld dword [ecx + 0x10]
fcomp dword [0x6a867c]
fnstsw ax
test ah, 5
jp 0x44238f
mov dword [ecx + 0x10], edi
mov ecx, dword [esi + 0x13fecc]
fld dword [ecx + 0x18]
fcomp dword [0x6a867c]
fnstsw ax
test ah, 5
jp 0x4423a8
mov dword [ecx + 0x18], edi
fild dword [esi + 0x1400e4]
mov ecx, dword [esi + 0x13fecc]
fcom dword [ecx + 0x10]
fnstsw ax
test ah, 5
jp 0x4423c3
fstp dword [ecx + 0x10]
jmp 0x4423c5
fstp st(0)
fild dword [esi + 0x1400e4]
mov ecx, dword [esi + 0x13fecc]
fcom dword [ecx + 0x18]
fnstsw ax
test ah, 5
jp 0x4423e0
fstp dword [ecx + 0x18]
jmp 0x4423e2
fstp st(0)
mov eax, dword [0x709518]
test eax, eax
mov edi, dword [0x70951c]
mov edx, dword [0x7094f8]
je 0x442400
test edx, edx
je 0x44241e
jmp 0x4424a1
test edx, edx
jne 0x4424a1
test edi, edi
je 0x4424a1
mov ecx, dword [0x709520]
test ecx, ecx
jne 0x4424a1
xor ecx, ecx
test eax, eax
je 0x44242f
test edx, edx
jne 0x442463
mov ecx, 1
jmp 0x442433
test edx, edx
jne 0x442463
test edi, edi
je 0x442463
mov eax, dword [0x709520]
test eax, eax
jne 0x442463
mov eax, dword [esi + 0x13fecc]
fld dword [0x7094f4]
fsub dword [eax + 0x14]
fabs
fcomp dword [0x6a960c]
fnstsw ax
test ah, 0x41
jne 0x442463
mov ecx, 1
mov eax, dword [esi + 0x13fecc]
mov edi, dword [eax + 0xe0]
test edi, edi
jne 0x4424a1
test ecx, ecx
je 0x4424a1
call dword [0x6a8588]
mov edi, dword [0x709568]
mov ecx, eax
sub ecx, edi
cmp ecx, 0x1f4
jbe 0x44249b
mov ecx, esi
mov dword [0x709568], eax
call fcn.00439510
mov edx, dword [0x7094f8]
test ebx, ebx
je 0x4424ae
mov eax, dword [esp + 0x44]
mov dword [0x7094f4], eax
mov eax, dword [0x854e94]
test eax, eax
mov ecx, dword [0x709520]
mov dword [0x709518], edx
mov dword [0x70951c], ecx
je 0x442542
cmp eax, 0x64
jl 0x442542
mov edx, dword [0x854e98]
push edx
mov ecx, esi
call fcn.004469b0
test eax, eax
je 0x442542
mov ecx, dword [esi + 0x13fecc]
fld dword [eax + 0x38]
fsub dword [ecx + 0x10]
add ecx, 0x10
fld dword [eax + 0x3c]
fsub dword [ecx + 4]
fld dword [eax + 0x40]
fsub dword [ecx + 8]
fld st(2)
fmulp st(3)
fld st(0)
fmul st(1)
faddp st(3)
fld st(1)
fmul st(2)
faddp st(3)
fxch st(2)
fsqrt
fstp st(2)
fstp st(0)
fabs
fcomp dword [0x6a9778]
fnstsw ax
test ah, 0x41
jne 0x442542
cmp dword [0x854e94], 0x67
jne 0x442538
cmp byte [0x21e99e9], 2
je 0x442542
mov dword [0x854e94], 0
mov eax, dword [esi + 0x13fecc]
add eax, 0x10
push eax
mov ecx, 0x21f1cd8
call fcn.00521d70
mov edi, eax
xor ebx, ebx
cmp edi, ebx
je 0x4425ef
mov ecx, dword [0x2227970]
cmp dword [ecx + 0x358], ebx
jne 0x4425bc
mov ecx, esi
call fcn.00439510
xor edx, edx
mov dl, byte [edi]
push edx
call fcn.00589660
mov eax, dword [0x2227970]
mov dword [eax + 0x358], 1
mov dword [esi + 0x14022c], edi
mov ecx, dword [edi + 0x228]
add esp, 4
push ecx
mov ecx, 0x851aa0
call fcn.004c3c20
test eax, eax
je 0x4425ef
call dword [0x6a8588]
mov dword [esi + 0x1402c0], eax
jmp 0x4425ef
mov edx, dword [edi + 0x228]
push edx
mov ecx, 0x851aa0
call fcn.004c3c20
test eax, eax
je 0x4425ef
call dword [0x6a8588]
sub eax, dword [esi + 0x1402c0]
cmp eax, 0x3a98
jbe 0x4425ef
mov eax, dword [0x2227970]
mov dword [eax + 0x358], ebx
mov edi, dword [esi + 0x14022c]
cmp edi, ebx
je 0x4426bc
mov ecx, dword [esi + 0x13fecc]
add ecx, 0x10
push ecx
lea ecx, [edi + 4]
call fcn.004386c0
test al, al
jne 0x4426bc
lea edx, [esp + 0x70]
push edx
lea ecx, [edi + 0x238]
call fcn.00439e90
fld dword [esp + 0x7c]
fsub dword [esp + 0x70]
mov eax, dword [esi + 0x13fecc]
add eax, 0x10
fmul dword [0x6a95b8]
fadd dword [esp + 0x70]
fld dword [esp + 0x80]
fsub dword [esp + 0x74]
fmul dword [0x6a95b8]
fadd dword [esp + 0x74]
fld dword [esp + 0x84]
fsub dword [esp + 0x78]
fmul dword [0x6a95b8]
fadd dword [esp + 0x78]
fstp dword [esp + 0x78]
fxch st(1)
fsub dword [eax]
fstp dword [esp + 0x64]
fsub dword [eax + 4]
fld dword [esp + 0x78]
fsub dword [eax + 8]
fld dword [esp + 0x64]
fmul dword [esp + 0x64]
fld st(1)
fmul st(2)
faddp st(1)
fld st(2)
fmul st(3)
faddp st(1)
fsqrt
fstp st(2)
fstp st(0)
fabs
fcomp dword [0x6a9720]
fnstsw ax
test ah, 0x41
jne 0x4426bc
mov eax, dword [0x2227970]
mov dword [eax + 0x358], ebx
mov dword [esi + 0x14022c], ebx
mov eax, dword [esi + 0x13fecc]
mov edx, dword [eax + 0x10]
add eax, 0x10
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov dword [ecx + 4], edx
mov eax, dword [eax + 8]
mov dword [ecx + 8], eax
lea edi, [esi + 0x13d7a0]
mov ecx, edi
mov dword [esp + 0x24], esp
call fcn.00520460
test al, al
je 0x4429ad
mov eax, dword [esi + 0x13fecc]
mov cl, byte [eax + 0x279]
test cl, cl
jne 0x4429ad
cmp dword [eax + 0x250], ebx
jne 0x4429ad
cmp dword [edi], ebx
jne 0x442723
mov dword [eax + 0xe4], ebx
jmp 0x442a31
mov al, byte [esi + 0x13d7a8]
test al, al
mov ecx, esi
je 0x442821
call fcn.00439510
mov dword [esi + 0x1400e0], 2
mov ecx, dword [esi + 0x13fecc]
mov dword [ecx + 0xe4], 1
mov edx, dword [edi]
mov eax, dword [esi + 0x13fecc]
add edx, 0xa4
mov ecx, dword [edx]
add eax, 0x10
mov dword [eax], ecx
mov ecx, dword [edx + 4]
mov dword [eax + 4], ecx
mov edx, dword [edx + 8]
mov dword [eax + 8], edx
mov eax, dword [edi]
lea ecx, [eax + 0xa4]
push ecx
lea edx, [esp + 0x68]
push edx
lea ecx, [eax + 0xb0]
call fcn.00436ac0
lea ecx, [esp + 0x64]
call fcn.00436ba0
push 0x3f666666
sub esp, 0xc
lea eax, [esp + 0x74]
mov ecx, esp
mov dword [esp + 0x28], esp
push eax
call fcn.0041f8f0
lea ecx, [esp + 0x334]
push ecx
call fcn.0041f940
fld dword [eax]
mov ecx, dword [esi + 0x13fecc]
fadd dword [ecx + 0x10]
add ecx, 0x10
add esp, 0x14
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]
mov edi, dword [edi]
fld dword [edi + 0x10]
mov edx, dword [esi + 0x13fecc]
add edi, 0x10
fchs
fstp dword [esp + 0x64]
mov eax, dword [esp + 0x64]
fld dword [edi + 4]
add edx, 0x1c
fchs
fstp dword [esp + 0x68]
mov ecx, dword [esp + 0x68]
fld dword [edi + 8]
mov dword [edx], eax
fchs
mov dword [edx + 4], ecx
fstp dword [esp + 0x6c]
mov eax, dword [esp + 0x6c]
mov dword [edx + 8], eax
jmp 0x44296d
call fcn.00439510
mov dword [esi + 0x1400e0], 2
mov ecx, dword [esi + 0x13fecc]
mov dword [ecx + 0xe4], 1
mov edx, dword [edi]
mov eax, dword [esi + 0x13fecc]
add edx, 0xb0
mov ecx, dword [edx]
add eax, 0x10
mov dword [eax], ecx
mov ecx, dword [edx + 4]
mov dword [eax + 4], ecx
mov edx, dword [edx + 8]
mov dword [eax + 8], edx
mov eax, dword [edi]
lea ecx, [eax + 0xb0]
push ecx
lea edx, [esp + 0x68]
push edx
lea ecx, [eax + 0xa4]
call fcn.00436ac0
lea ecx, [esp + 0x64]
call fcn.00436ba0
push 0x3f666666
sub esp, 0xc
lea eax, [esp + 0x74]
mov ecx, esp
mov dword [esp + 0x28], esp
push eax
call fcn.0041f8f0
lea ecx, [esp + 0x310]
push ecx
call fcn.0041f940
fld dword [eax]
mov ecx, dword [esi + 0x13fecc]
fadd dword [ecx + 0x10]
add ecx, 0x10
add esp, 0x14
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]
mov edi, dword [edi]
fld dword [edi + 0x10]
mov edx, dword [esi + 0x13fecc]
fchs
add edi, 0x10
fstp dword [esp + 0x64]
mov eax, dword [esp + 0x64]
fld dword [edi + 4]
add edx, 0x1c
fchs
fstp dword [esp + 0x68]
mov ecx, dword [esp + 0x68]
fld dword [edi + 8]
mov dword [edx], eax
fchs
mov dword [edx + 4], ecx
fstp dword [esp + 0x6c]
mov eax, dword [esp + 0x6c]
mov dword [edx + 8], eax
mov eax, dword [esi + 0x13fecc]
fld dword [eax + 0x1c]
fmul dword [0x6a95f0]
fld dword [eax + 0x20]
fmul dword [0x6a95f0]
fld dword [eax + 0x24]
fmul dword [0x6a95f0]
fstp dword [esp + 0x78]
fld dword [eax + 0x10]
fsub st(2)
fstp dword [esp + 0x64]
fld dword [eax + 0x14]
fsub st(1)
fstp dword [esp + 0x68]
fstp st(0)
fstp st(0)
fld dword [eax + 0x18]
fsub dword [esp + 0x78]
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x68]
mov dword [0x21f4060], ecx
fstp dword [esp + 0x6c]
mov eax, dword [esp + 0x6c]
mov dword [0x21f4064], edx
mov dword [0x21f4068], eax
mov ecx, dword [esi + 0x13fecc]
mov dword [ecx + 0xcc], 0x12
mov edx, dword [esi + 0x13fecc]
mov dword [edx + 0xc8], ebx
mov eax, dword [esi + 0x13fecc]
mov dword [eax + 0xd0], ebx
mov ecx, dword [esi + 0x13fecc]
mov dword [ecx + 0xd4], ebx
mov edx, dword [esi + 0x13fecc]
mov dword [edx + 0xd8], ebx
cmp dword [0x7094f0], 6
jne 0x4429c2
mov dword [esi + 0x1401ec], 1
jmp 0x4429c8
mov dword [esi + 0x1401ec], ebx
mov eax, dword [esi + 0x13fecc]
cmp dword [eax + 0xdc], 7
je 0x4429df
cmp dword [eax + 0xe4], ebx
je 0x4429eb
mov dword [esi + 0x1401ec], ebx
mov dword [0x7094f0], ebx
cmp dword [esp + 0x58], ebx
je 0x442a31
cmp dword [0x709508], ebx
jne 0x442a01
cmp dword [0x70950c], ebx
je 0x442a31
call dword [0x6a8588]
mov edi, dword [0x709568]
mov ecx, eax
sub ecx, edi
cmp ecx, 0xfa
jbe 0x442a31
mov ecx, esi
mov dword [0x709568], eax
call fcn.00439510
mov dword [0x70950c], ebx
mov dword [0x709508], ebx
mov ecx, dword [esp + 0x714]
pop edi
pop esi
mov eax, 1
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 4