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

Disassembly:
push ebx
push esi
push edi
push ebp
sub esp, 0x1e0
cmp byte [0x6f99e4], 0
jne 0x426dd4
mov byte [0x6f99e4], 1
mov dword [0x6f99e0], 0
movzx ebx, byte [0xa10b03]
movzx eax, byte [0xa10b03]
mov byte [esp + 0x18], 0
imul ebx, ebx, 0x170
push eax
add ebx, 0x94ad30
call fcn.004bc0c0
fld dword [eax]
fstp dword [esp + 0x170]
fld dword [eax + 4]
fstp dword [esp + 0x174]
fld dword [eax + 8]
pop ecx
fstp dword [esp + 0x174]
call fcn.004bc230
fld dword [eax]
lea edi, [esp + 0x128]
fstp dword [esp + 0x90]
fld dword [eax + 4]
lea eax, [esp + 0x16c]
push edi
push eax
fstp dword [esp + 0x9c]
call fcn.004dc520
mov eax, dword [esp + 0x130]
pop ecx
and eax, 0xffff
pop ecx
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
fmul dword [ebx + 0x12c]
fnstcw word [esp + 0x24]
mov eax, dword [esp + 0x24]
or byte [esp + 0x25], 0xc
fldcw word [esp + 0x24]
mov dword [esp + 0x24], eax
fistp dword [esp + 0xb0]
mov eax, dword [esp + 0xb0]
fldcw word [esp + 0x24]
mov word [ebx + 0x128], ax
mov ax, word [ebx + 0x128]
and eax, 0xffff
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
fmul dword [0x686fc8]
fmul dword [0x6db9f4]
fild dword [0xa102a4]
fcompp
fnstsw ax
test ah, 5
jne 0x426ed4
add esp, 0x1e0
pop ebp
pop edi
pop esi
pop ebx
ret
mov eax, dword [0xa102a4]
add eax, dword [0x978720]
add eax, dword [0x97873c]
add eax, dword [0x978d90]
add eax, dword [0x974bec]
add eax, dword [0xa0d248]
cmp eax, dword [0x686fcc]
jl 0x426f10
add esp, 0x1e0
pop ebp
pop edi
pop esi
pop ebx
ret
movzx edx, byte [0xa10b03]
imul edx, edx, 0x2e
mov eax, dword [edx*8 + 0x94ad30]
mov edi, dword [eax + 0x5f4]
mov ebx, dword [edi + 0x20]
mov eax, ebx
cmp eax, 1
jle 0x426f96
movzx eax, byte [edi + 0x1a]
cmp dword [0x978720], eax
jge 0x426f96
mov al, byte [edi + 0x19]
mov cl, byte [edi + 0x18]
cmp cl, al
jae 0x426f96
cmp dword [0x978818], 0
jne 0x426f96
mov eax, ebx
cmp eax, 3
jg 0x426f80
cmp ebx, 2
jle 0x426f6e
mov eax, dword [0x9b6a90]
add eax, 0x1388
cmp dword [0x974b34], eax
ja 0x426f80
mov eax, dword [0x9b6a90]
add eax, 0x1f40
cmp dword [0x974b34], eax
jbe 0x426f96
call fcn.00426850
mov dword [esp + 0xc8], 0xb
mov dword [esp + 0x10], eax
jmp 0x426ff5
lea eax, [esp + 0x128]
lea ebp, [esp + 0xc8]
push ebp
push eax
call fcn.00426b40
cmp eax, 0xffffffff
pop ecx
mov dword [esp + 0x14], eax
pop ecx
jne 0x426fc1
add esp, 0x1e0
pop ebp
pop edi
pop esi
pop ebx
ret
cmp dword [esp + 0xc8], 0xb
jne 0x426ff5
movzx edx, byte [0xa10b03]
imul edx, edx, 0x2e
mov edi, dword [edx*8 + 0x94ad30]
mov eax, dword [edi + 0x5f4]
mov ecx, dword [eax + 0x20]
cmp ecx, 1
jl 0x426ff5
add esp, 0x1e0
pop ebp
pop edi
pop esi
pop ebx
ret
fld dword [0x7e46a8]
fcomp dword [0x6871fc]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x427040
fld dword [0x687040]
fstp dword [esp + 0x64]
fld dword [0x687038]
fstp dword [esp + 0x68]
fld dword [0x687218]
mov eax, dword [esp + 0x64]
mov byte [esp + 0x18], 1
fstp dword [esp + 0x6c]
mov byte [esp], 1
mov dword [esp + 0x60], eax
jmp 0x4272a2
call fcn.004bc200
test eax, eax
fldz
fldz
fldz
je 0x427232
fld dword [eax + 0x70]
fstp st(3)
fld dword [eax + 0x74]
fstp st(2)
fld st(1)
fmul st(0)
fld st(3)
fmul st(0)
faddp st(1)
fsqrt
fstp dword [esp + 0xb0]
fld dword [esp + 0xb0]
fst st(1)
fcomp dword [0x6870dc]
fnstsw ax
test ah, 0x45
jne 0x427120
fld st(2)
fdiv st(1)
fstp dword [esp + 0x60]
fld st(1)
fdiv st(1)
mov eax, dword [0xa0d8a0]
mov byte [esp + 0x14], 0
and eax, 3
cmp eax, 3
fstp dword [esp + 0x64]
ja case.default.0x4270b0
jmp dword [eax*4 + 0x68744c]
fld dword [0x68721c]
fstp dword [esp + 0x68]
fld dword [0x68703c]
fmul dword [0x7e4784]
mov byte [esp], 1
fstp dword [esp + 0x6c]
jmp 0x429142
fld dword [0x687040]
fstp dword [esp + 0x68]
fld dword [0x68703c]
fmul dword [0x7e4784]
mov byte [esp], 1
fstp dword [esp + 0x6c]
jmp 0x429150
fld dword [0x687040]
fstp dword [esp + 0x68]
fld dword [0x687138]
fstp dword [esp + 0x6c]
mov byte [esp], 0
jmp 0x429160
fcom dword [0x687140]
fnstsw ax
test ah, 0x45
jne 0x4271c1
fld st(2)
fdiv st(1)
fstp dword [esp + 0x60]
fld st(1)
fdiv st(1)
mov eax, dword [0xa0d8a0]
mov byte [esp + 0x14], 0
and eax, 3
cmp eax, 3
fstp dword [esp + 0x64]
ja case.default.0x427157
jmp dword [eax*4 + 0x68743c]
fld dword [0x68721c]
fstp dword [esp + 0x68]
fld dword [0x68703c]
fmul dword [0x7e4784]
mov byte [esp], 1
fstp dword [esp + 0x6c]
jmp 0x429182
fld dword [0x687040]
fstp dword [esp + 0x68]
fld dword [0x68703c]
fmul dword [0x7e4784]
mov byte [esp], 1
fstp dword [esp + 0x6c]
jmp 0x429190
fld dword [0x687040]
fstp dword [esp + 0x68]
fld dword [0x687138]
fstp dword [esp + 0x6c]
mov byte [esp], 0
jmp 0x4291a0
mov eax, dword [0xa0d8a0]
mov byte [esp + 0x14], 1
fld dword [0x7e4764]
and eax, 1
fstp dword [esp + 0x60]
fld dword [0x7e4768]
cmp eax, 1
fstp dword [esp + 0x64]
ja case.default.0x4271eb
jmp dword [eax*4 + 0x687434]
fld dword [0x687040]
fstp dword [esp + 0x68]
fld dword [0x68703c]
fmul dword [0x7e4784]
mov byte [esp], 1
fstp dword [esp + 0x6c]
jmp 0x4291c2
fld dword [0x687040]
fstp dword [esp + 0x68]
fld dword [0x687138]
fstp dword [esp + 0x6c]
mov byte [esp], 0
jmp 0x4291d0
mov eax, dword [0xa0d8a0]
mov byte [esp + 0x14], 1
fld dword [0x7e4764]
and eax, 1
fstp dword [esp + 0x60]
fld dword [0x7e4768]
cmp eax, 1
fstp dword [esp + 0x64]
ja case.default.0x42725c
jmp dword [eax*4 + 0x68742c]
fld dword [0x687040]
fstp dword [esp + 0x68]
fld dword [0x68703c]
fmul dword [0x7e4784]
mov byte [esp], 1
fstp dword [esp + 0x6c]
jmp 0x4291f2
fld dword [0x687040]
fstp dword [esp + 0x68]
fld dword [0x687138]
fstp dword [esp + 0x6c]
fcompp
fstp st(0)
mov byte [esp], 0
xor al, al
cmp dword [esp + 0xc8], 0xb
jne 0x4272cf
movzx ebx, byte [0xa10b03]
imul ebx, ebx, 0x2e
mov ebp, dword [ebx*8 + 0x94ad30]
mov edx, dword [ebp + 0x5f4]
mov ecx, dword [edx + 0x20]
cmp ecx, 1
jl 0x4272cf
mov al, 1
lea edi, [esp + 0xbc]
push eax
lea eax, [esp + 0xc8]
push edi
lea ecx, [esp + 0xc8]
push eax
lea eax, [esp + 0xd8]
push ecx
mov ecx, 0x9b6e64
push eax
push dword [esp + 0x14]
push dword [esp + 0x80]
push dword [esp + 0x88]
push dword [esp + 0x84]
push dword [esp + 0x84]
push dword [esp + 0x198]
push dword [esp + 0x198]
call fcn.004382b0
test al, al
je 0x429122
mov eax, dword [esp + 0xc4]
mov byte [esp + 0x1c], 0
lea eax, [eax + eax*4]
mov cl, byte [eax*4 + 0x9b6e76]
mov eax, dword [esp + 0xc0]
lea eax, [eax + eax*4]
and cl, 0xf
mov bl, byte [eax*4 + 0x9b6e76]
and bl, 0xf
cmp bl, cl
jb 0x427363
mov bl, cl
call fcn.00649a40
movzx ebp, ax
movzx eax, bl
and ebp, 0xf
cmp ebp, eax
ja 0x429122
mov edx, dword [esp + 0xc0]
lea edx, [edx + edx*4]
mov al, byte [edx*4 + 0x9b6e75]
and al, 1
je 0x427581
cmp dword [esp + 0xc8], 0xb
mov byte [esp + 0x1c], 1
jne 0x4273e0
cmp byte [0x94ea60], 1
mov dword [esp + 0x10], 0xa0
mov dword [esp + 0xc8], 0x15
je 0x427523
push 4
push 0xa0
call fcn.0040e310
pop ecx
pop ecx
add esp, 0x1e0
pop ebp
pop edi
pop esi
pop ebx
ret
mov edi, 0xa
call fcn.00649a40
and eax, 0xffff
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
fmul dword [0x687214]
fmul dword [0x687058]
fnstcw word [esp + 0x24]
mov eax, dword [esp + 0x24]
or byte [esp + 0x25], 0xc
fldcw word [esp + 0x24]
mov dword [esp + 0x24], eax
mov ecx, 9
fistp dword [esp + 0xb0]
fldcw word [esp + 0x24]
mov edx, dword [esp + 0xb0]
movzx eax, word [esp + ecx*2 + 0x12a]
cmp edx, eax
jl 0x427447
inc ecx
cmp ecx, 9
jle 0x427435
mov eax, dword [ecx*4 + 0x978e24]
inc dword [ecx*4 + 0xa0ce70]
inc dword [ecx*4 + 0xa0ce70]
test eax, eax
mov dword [esp + 0xc8], ecx
jne 0x427470
or eax, 0xffffffff
jmp 0x4274f5
lea ebp, [ecx*8]
lea ebp, [ebp + ebp*2]
add ebp, ecx
add eax, ebp
mov ebx, dword [eax*4 + 0xa0d428]
call fcn.00649a40
and eax, 0xffff
mov dword [esp + 0xb0], ebx
fild dword [esp + 0xb0]
mov dword [esp + 0xb0], eax
mov ecx, ebp
fild dword [esp + 0xb0]
fmul dword [0x687214]
fmulp st(1)
fnstcw word [esp + 0x24]
mov eax, dword [esp + 0x24]
or byte [esp + 0x25], 0xc
fldcw word [esp + 0x24]
mov dword [esp + 0x24], eax
xor eax, eax
fistp dword [esp + 0xb0]
fldcw word [esp + 0x24]
mov edx, dword [esp + 0xb0]
jmp 0x4274e3
inc ecx
inc eax
cmp edx, dword [ecx*4 + 0xa0d42c]
jg 0x4274e1
add eax, ebp
mov eax, dword [eax*4 + 0xa0fdf8]
dec edi
cmp eax, 0xffffffff
mov dword [esp + 0x10], eax
je 0x42750c
lea eax, [eax + eax*4]
cmp byte [eax*4 + 0x94dde0], 1
je 0x427514
test edi, edi
jg 0x4273e5
test edi, edi
jne 0x427523
add esp, 0x1e0
pop ebp
pop edi
pop esi
pop ebx
ret
mov ebx, dword [esp + 0xc0]
lea ebx, [ebx + ebx*4]
mov al, byte [ebx*4 + 0x9b6e75]
shr al, 1
and al, 1
jne 0x427551
mov edx, dword [esp + 0xc4]
lea edx, [edx + edx*4]
mov al, byte [edx*4 + 0x9b6e75]
shr al, 1
and al, 1
je 0x427581
mov ecx, dword [esp + 0x10]
mov eax, ecx
sub eax, 0x88
je 0x427568
sub eax, 0x30
je 0x427568
sub eax, 0x1e
jne 0x427570
mov al, 1
jmp 0x427572
xor al, al
test al, al
je 0x427581
add esp, 0x1e0
pop ebp
pop edi
pop esi
pop ebx
ret
cmp byte [esp + 0x1c], 0
fldz
je 0x427592
fld dword [0x687138]
jmp 0x427598
fld dword [0x687044]
fstp st(1)
lea eax, [esp + 0x17a]
push 0
push 0
push 1
push 1
push 0
push 0
push 2
push eax
push 1
push eax
fst dword [esp]
lea eax, [esp + 0xf4]
push eax
fstp st(0)
call fcn.004d6390
add esp, 0x2c
cmp word [esp + 0x17a], 0
jne 0x429122
cmp byte [esp + 0x1c], 0
jne 0x42761c
mov ecx, 0x9b6e64
push dword [esp + 0x174]
push dword [esp + 0x174]
push dword [esp + 0x174]
push 0
push dword [esp + 0xe4]
push dword [esp + 0xe4]
push dword [esp + 0xe4]
call fcn.00437a40
test al, al
je 0x429122
mov ebx, dword [esp + 0xc0]
xor eax, eax
lea ebx, [ebx + ebx*4]
lea ebx, [ebx*4]
mov dl, byte [ebx + 0x9b6e74]
and dl, 0xf
movzx ecx, dl
mov edx, ebx
jmp 0x427641
inc eax
movsx ebp, ax
cmp ebp, ecx
jge 0x42766b
movsx edi, word [edx + 0x9b6e70]
add edi, ebp
movzx edi, word [edi*2 + 0x9f17e4]
and edi, 0x3fff
movsx edi, di
cmp dword [esp + 0xc4], edi
jne 0x427640
movsx edi, word [ebx + 0x9b6e70]
add edi, ebp
movsx eax, word [edi*2 + 0xa006f4]
mov dword [esp + 0x20], eax
lea edx, [eax*4]
lea edx, [edx + edx*2]
movsx eax, word [edx + 0x9e6050]
cmp eax, dword [esp + 0xc4]
jne 0x4276a8
mov dl, byte [edx + 0x9e6054]
and dl, 7
movzx eax, dl
jmp 0x4276b7
mov cl, byte [edx + 0x9e6054]
shr cl, 3
and cl, 7
movzx eax, cl
mov dword [esp + 4], eax
cmp word [esp + 4], 0
je 0x429122
mov eax, dword [esp + 0x10]
mov eax, dword [eax*4 + 0x92d4d0]
mov eax, dword [eax + 0x3c]
mov ebx, eax
cmp ebx, 5
jne 0x427700
push 0x4ec
call fcn.005bab40
test eax, eax
pop ecx
je 0x42773f
mov ecx, eax
push 1
push dword [esp + 0x14]
call fcn.00615720
jmp 0x42773f
cmp eax, 1
jne 0x427723
push 0x4c0
call fcn.005bab40
test eax, eax
pop ecx
je 0x42773f
mov ecx, eax
push 1
push dword [esp + 0x14]
call fcn.005a6490
jmp 0x42773f
push 0x5dc
call fcn.005bab40
test eax, eax
pop ecx
je 0x42773f
mov ecx, eax
push 1
push dword [esp + 0x14]
call fcn.0059e640
mov ebp, eax
mov dword [ebp + 0x130], 0
mov eax, dword [esp + 0xc0]
mov dword [ebp + 0x128], eax
mov eax, dword [esp + 0xc4]
mov dword [ebp + 0x12c], eax
mov edx, dword [esp + 0xc8]
lea eax, [edx - 0xb]
cmp eax, 0xa
ja case.0x427778.12
jmp dword [eax*4 + 0x687400]
mov byte [ebp + 0x157], 0
movzx ecx, byte [0xa10b03]
imul ecx, ecx, 0x2e
mov edi, dword [ecx*8 + 0x94ad30]
mov eax, dword [edi + 0x5f4]
cmp dword [eax + 0x20], 0
jne 0x427830
call fcn.00649a40
and eax, 0xffff
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
fmul dword [0x687214]
fmul dword [0x687134]
fadd dword [0x68717c]
fnstcw word [esp + 0x24]
mov eax, dword [esp + 0x24]
or byte [esp + 0x25], 0xc
fldcw word [esp + 0x24]
mov dword [esp + 0x24], eax
fistp dword [esp + 0xb0]
mov eax, dword [esp + 0xb0]
fldcw word [esp + 0x24]
mov byte [ebp + 0x160], al
movsx eax, byte [ebp + 0x160]
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
fstp dword [ebp + 0x15c]
mov byte [ebp + 0x155], 0
mov byte [ebp + 0x156], 1
jmp 0x427874
push ebp
call fcn.004196e0
mov byte [ebp + 0x160], al
pop ecx
movsx eax, byte [ebp + 0x160]
cmp eax, 0x80000000
sbb eax, 0xffffffff
sar eax, 1
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
fstp dword [ebp + 0x15c]
call fcn.004198c0
mov byte [ebp + 0x156], al
mov byte [ebp + 0x155], 2
cmp dword [esp + 0x10], 0xdc
jne 0x42788c
mov byte [ebp + 0x1a0], 0
mov byte [ebp + 0x1a1], 0
mov al, byte [ebp + 0x1fd]
and al, 0xfb
or al, 4
mov byte [ebp + 0x1fd], al
jmp 0x427aa7
mov byte [ebp + 0x157], 0
call fcn.00649a40
and eax, 0xffff
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
fmul dword [0x687214]
fmul dword [0x687134]
fadd dword [0x68717c]
fnstcw word [esp + 0x24]
mov eax, dword [esp + 0x24]
or byte [esp + 0x25], 0xc
fldcw word [esp + 0x24]
mov dword [esp + 0x24], eax
fistp dword [esp + 0xb0]
mov eax, dword [esp + 0xb0]
fldcw word [esp + 0x24]
mov byte [ebp + 0x160], al
movsx eax, byte [ebp + 0x160]
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
fstp dword [ebp + 0x15c]
mov byte [ebp + 0x155], 2
call fcn.00419880
mov byte [ebp + 0x156], al
mov al, byte [ebp + 0x1fd]
and al, 0xfb
or al, 4
mov byte [ebp + 0x1fd], al
jmp 0x427aa7
call fcn.00649a40
and eax, 0xffff
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
fmul dword [0x687214]
fmul dword [0x6870a0]
fadd dword [0x687220]
fnstcw word [esp + 0x24]
mov eax, dword [esp + 0x24]
or byte [esp + 0x25], 0xc
fldcw word [esp + 0x24]
mov dword [esp + 0x24], eax
fistp dword [esp + 0xb0]
fldcw word [esp + 0x24]
mov eax, dword [esp + 0xb0]
mov byte [ebp + 0x160], al
cmp dword [esp + 0xc8], 3
jne 0x4279d0
call fcn.00649a40
and eax, 0xffff
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
fmul dword [0x687214]
fmul dword [0x687224]
fadd dword [0x68717c]
jmp 0x427a04
cmp dword [esp + 0xc8], 1
jne 0x427a31
call fcn.00649a40
and eax, 0xffff
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
fmul dword [0x687214]
fmul dword [0x687120]
fadd dword [0x687228]
fnstcw word [esp + 0x24]
mov eax, dword [esp + 0x24]
or byte [esp + 0x25], 0xc
fldcw word [esp + 0x24]
mov dword [esp + 0x24], eax
fistp dword [esp + 0xb0]
fldcw word [esp + 0x24]
mov eax, dword [esp + 0xb0]
mov byte [ebp + 0x160], al
movsx ecx, word [ebp + 0x5c]
mov eax, dword [ecx*4 + 0x92d4d0]
mov edx, dword [eax + 0x1c]
fld dword [edx + 0x20]
mov ebx, edx
fsub dword [ebx + 0x14]
fcomp dword [0x687044]
fnstsw ax
test ah, 0x45
je 0x427a5e
cmp dword [esp + 0xc8], 5
jne 0x427a77
movsx eax, byte [ebp + 0x160]
lea eax, [eax + eax*2]
cdq
and edx, 3
add eax, edx
sar eax, 2
mov byte [ebp + 0x160], al
movsx eax, byte [ebp + 0x160]
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
fstp dword [ebp + 0x15c]
mov byte [ebp + 0x156], 1
mov byte [ebp + 0x157], 0
mov byte [ebp + 0x155], 0
movsx eax, word [ebp + 0x5c]
cmp eax, 0x99
jne 0x427ab9
mov byte [ebp + 0x245], 1
mov eax, dword [esp + 0x20]
mov dword [ebp + 0x140], eax
call fcn.00649a40
movzx eax, ax
movsx edi, word [esp + 4]
fldz
cdq
fldz
fldz
idiv edi
fldz
mov byte [ebp + 0x153], dl
mov al, byte [ebp + 0x153]
mov byte [ebp + 0x154], al
movsx ebx, word [ebp + 0x5c]
mov eax, dword [ebx*4 + 0x92d4d0]
mov edi, dword [eax + 0x1c]
mov eax, dword [esp + 0xc4]
fld dword [edi + 0x20]
mov ecx, edi
lea eax, [eax + eax*4]
fsub dword [ecx + 0x14]
lea eax, [eax*4]
mov edi, dword [esp + 0xc0]
add eax, 0x9b6e64
fstp st(4)
mov ebx, eax
fld dword [0x68711c]
fmul st(4)
fadd dword [0x68704c]
movsx ecx, word [ebx + 6]
fstp st(4)
mov dword [esp + 0xb0], ecx
fild dword [esp + 0xb0]
fmul dword [0x687050]
fstp dword [esp + 0x3c]
lea edi, [edi + edi*4]
lea edi, [edi*4]
add edi, 0x9b6e64
mov ecx, edi
movsx edx, word [ecx + 6]
mov dword [esp + 0xb0], edx
fild dword [esp + 0xb0]
fmul dword [0x687050]
fstp dword [esp + 0x38]
movsx ebx, word [eax + 6]
mov dword [esp + 0xb0], ebx
fild dword [esp + 0xb0]
fmul dword [0x687050]
fstp dword [esp + 0x34]
movsx ecx, word [edi + 6]
mov dword [esp + 0xb0], ecx
fild dword [esp + 0xb0]
fmul dword [0x687050]
fstp dword [esp + 0x30]
movsx edx, word [eax + 4]
mov dword [esp + 0xb0], edx
fild dword [esp + 0xb0]
fmul dword [0x687050]
fstp st(2)
fld st(1)
fstp dword [esp + 0x28]
movsx eax, word [edi + 4]
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
fmul dword [0x687050]
fst st(1)
fstp st(3)
fld dword [esp + 0x38]
fsub dword [esp + 0x3c]
fld dword [esp + 0x30]
fsub dword [esp + 0x34]
fmulp st(1)
fld st(3)
fsub dword [esp + 0x28]
fld st(2)
fsub st(4)
fmulp st(1)
faddp st(1)
fsqrt
fstp dword [esp + 0xb0]
fld dword [esp + 0xb0]
fstp st(3)
fld dword [0x68711c]
fmul st(3)
fcomp st(4)
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x427c45
mov dword [esp + 0xbc], 0x3f000000
jmp 0x427c9d
fld st(3)
fdiv st(3)
fstp st(3)
fld dword [esp + 0xbc]
fcomp st(3)
fnstsw ax
test ah, 0x45
jne 0x427c64
fld dword [esp + 0xbc]
jmp 0x427c66
fld st(2)
fstp st(4)
fld st(3)
fstp dword [esp + 0xbc]
fld dword [0x68704c]
fsub st(3)
fstp st(3)
fld st(3)
fcomp st(3)
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x427c90
fld st(3)
jmp 0x427c92
fld st(2)
fstp st(4)
fld st(3)
fstp dword [esp + 0xbc]
mov eax, dword [esp + 0xc4]
mov ebx, dword [esp + 0xc0]
cmp ebx, eax
jge 0x427cb8
mov byte [ebp + 0x152], 0xff
jmp 0x427cbf
mov byte [ebp + 0x152], 1
mov ecx, dword [esp + 0xc0]
lea ecx, [ecx + ecx*4]
mov al, byte [ecx*4 + 0x9b6e74]
and al, 0xf
cmp al, 1
jne 0x427cf6
test ebp, ebp
je 0x429200
fcompp
fcompp
mov ecx, ebp
mov edi, dword [ecx]
push 1
call dword [edi + 8]
add esp, 0x1e0
pop ebp
pop edi
pop esi
pop ebx
ret
mov ax, word [ebp + 0x140]
jmp 0x429210
fcompp
fcompp
fstp st(0)
call fcn.00649a40
mov edi, dword [esp + 0xc0]
lea edi, [edi + edi*4]
lea edi, [edi*4]
movzx eax, ax
mov dl, byte [edi + 0x9b6e74]
and dl, 0xf
movzx ebx, dl
cdq
movsx ecx, word [edi + 0x9b6e70]
fldz
idiv ebx
fldz
fldz
fldz
mov esi, edx
movsx eax, si
add ecx, eax
fldz
mov ax, word [ecx*2 + 0xa006f4]
movsx ecx, ax
cmp ecx, dword [ebp + 0x140]
je 0x427d02
mov dword [ebp + 0x13c], ecx
mov ebx, dword [esp + 0xc0]
lea ebx, [ebx + ebx*4]
movsx edi, word [ebx*4 + 0x9b6e70]
movsx eax, si
add edi, eax
movzx edx, word [edi*2 + 0x9f17e4]
and edx, 0x3fff
movsx eax, dx
cmp eax, dword [esp + 0xc0]
jge 0x427da0
mov byte [ebp + 0x151], 0xff
jmp 0x427da7
mov byte [ebp + 0x151], 1
mov ecx, dword [esp + 0xc0]
mov ebx, dword [esp + 0xc4]
lea ecx, [ecx + ecx*4]
lea ecx, [ecx*4]
add ecx, 0x9b6e64
movsx eax, word [ecx + 8]
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
movsx eax, word [ecx + 6]
fmul dword [0x687050]
mov dword [esp + 0xb0], eax
movsx eax, word [ecx + 4]
fstp st(3)
fild dword [esp + 0xb0]
mov dword [esp + 0xb0], eax
lea ebx, [ebx + ebx*4]
lea ebx, [ebx*4]
fmul dword [0x687050]
add ebx, 0x9b6e64
movsx eax, word [ebx + 8]
fstp st(4)
fild dword [esp + 0xb0]
mov dword [esp + 0xb0], eax
fmul dword [0x687050]
fstp st(5)
fild dword [esp + 0xb0]
fmul dword [0x687050]
fstp dword [esp + 0x2c]
movsx eax, word [ebx + 6]
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
movsx eax, word [ebx + 4]
fmul dword [0x687050]
mov dword [esp + 0xb0], eax
fstp st(1)
fild dword [esp + 0xb0]
fmul dword [0x687050]
fstp st(2)
fld st(1)
fsub st(5)
fstp dword [esp + 0xd8]
fld st(0)
fsub st(4)
fstp dword [esp + 0xdc]
mov eax, dword [esp + 0xdc]
mov ecx, dword [esp + 0xd8]
fld dword [esp + 0x2c]
mov dword [esp + 0x9c], eax
mov dword [esp + 0x98], ecx
fsub st(3)
fstp dword [esp + 0xe0]
fld dword [esp + 0x9c]
fmul st(0)
fld dword [esp + 0xd8]
fmul st(0)
faddp st(1)
fsqrt
fstp dword [esp + 0xb0]
fld dword [esp + 0xb0]
fstp st(5)
fld dword [0x687048]
fcomp st(5)
fnstsw ax
and ah, 0x44
cmp ah, 0x40
jne 0x427f00
fld dword [0x68704c]
fstp dword [esp + 0x98]
jmp 0x427f20
fld dword [esp + 0x98]
fdiv st(5)
fstp dword [esp + 0x98]
fld dword [esp + 0x9c]
fdiv st(5)
fstp dword [esp + 0x9c]
fcompp
fcompp
lea ecx, [esp + 0xd8]
fstp st(0)
call fcn.004dfec0
fld dword [esp + 0xd8]
fstp dword [ebp + 0x14]
fld dword [esp + 0xdc]
fstp dword [ebp + 0x18]
fld dword [esp + 0xe0]
fstp dword [ebp + 0x1c]
fld dword [esp + 0x9c]
mov eax, 4
mov ecx, 0x9b6e64
fstp dword [ebp + 4]
fld dword [esp + 0x98]
add eax, ebp
fchs
fstp dword [eax + 4]
mov dword [ebp + 0xc], 0
mov dword [ebp + 0x24], 0
mov dword [ebp + 0x28], 0
mov dword [ebp + 0x2c], 0x3f800000
mov bl, byte [ebp + 0x151]
movsx eax, bl
mov dword [esp + 0xb0], eax
mov eax, dword [ebp + 0x13c]
lea edi, [eax*4]
lea edi, [edi + edi*2]
movsx eax, byte [edi + 0x9e6052]
fild dword [esp + 0xb0]
add ecx, edi
mov dword [esp + 0xb0], eax
add ecx, 0x2f1e8
fild dword [esp + 0xb0]
movsx eax, bl
fmul dword [0x6870c0]
mov dword [esp + 0xb0], eax
movsx eax, byte [edi + 0x9e6053]
fmulp st(1)
fstp dword [esp + 0x44]
fild dword [esp + 0xb0]
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
fmul dword [0x6870c0]
fmulp st(1)
fstp dword [esp + 0x48]
mov dl, byte [ebp + 0x152]
movsx eax, dl
mov dword [esp + 0xb0], eax
mov eax, dword [ebp + 0x140]
lea esi, [eax*4]
lea esi, [esi + esi*2]
movsx eax, byte [esi + 0x9e6052]
fild dword [esp + 0xb0]
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
movsx eax, dl
fmul dword [0x6870c0]
mov dword [esp + 0xb0], eax
movsx eax, byte [esi + 0x9e6053]
fmulp st(1)
fstp dword [esp + 0x4c]
fild dword [esp + 0xb0]
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
fmul dword [0x6870c0]
fmulp st(1)
fstp dword [esp + 0x50]
call fcn.00434eb0
movsx eax, byte [ebp + 0x153]
mov dword [esp + 0xb0], eax
fiadd dword [esp + 0xb0]
fmul dword [0x6870a0]
fstp dword [esp + 0x58]
mov eax, dword [ebp + 0x140]
lea ecx, [eax*4]
lea ecx, [ecx + ecx*2]
add ecx, 0x9b6e64
add ecx, 0x2f1e8
call fcn.00434eb0
movsx eax, byte [ebp + 0x154]
mov dword [esp + 0x1a0], 0
mov dword [esp + 0x194], 0
mov dword [esp + 0xb0], eax
fiadd dword [esp + 0xb0]
fmul dword [0x6870a0]
fstp dword [esp + 0x5c]
mov eax, dword [ebp + 0x140]
lea ebx, [eax*4]
lea ebx, [ebx + ebx*2]
movsx eax, word [ebx + 0x9e604e]
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
movsx eax, word [ebx + 0x9e604c]
fmul dword [0x687050]
mov dword [esp + 0xb0], eax
fstp dword [esp + 0x80]
fild dword [esp + 0xb0]
fmul dword [0x687050]
fld dword [esp + 0x50]
fmul dword [esp + 0x5c]
fstp dword [esp + 0xa0]
fadd dword [esp + 0xa0]
fstp dword [esp + 0x198]
fld dword [esp + 0x4c]
fmul dword [esp + 0x5c]
fstp dword [esp + 0xa4]
fld dword [esp + 0x80]
fsub dword [esp + 0xa4]
fstp dword [esp + 0x19c]
mov eax, dword [ebp + 0x13c]
lea edx, [eax*4]
lea edx, [edx + edx*2]
movsx eax, word [edx + 0x9e604e]
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
movsx eax, word [edx + 0x9e604c]
fmul dword [0x687050]
mov dword [esp + 0xb0], eax
fstp dword [esp + 0x84]
fild dword [esp + 0xb0]
fmul dword [0x687050]
fld dword [esp + 0x48]
fmul dword [esp + 0x58]
fstp dword [esp + 0xa8]
fadd dword [esp + 0xa8]
fstp dword [esp + 0x18c]
fld dword [esp + 0x44]
fmul dword [esp + 0x58]
fstp dword [esp + 0xac]
fld dword [esp + 0x84]
fsub dword [esp + 0xac]
fstp dword [esp + 0x190]
mov cl, byte [ebp + 0x152]
movsx eax, cl
mov dword [esp + 0xb0], eax
mov eax, dword [ebp + 0x140]
lea edi, [eax*4]
lea edi, [edi + edi*2]
movsx eax, byte [edi + 0x9e6053]
fild dword [esp + 0xb0]
mov dword [esp + 0xb0], eax
push eax
fild dword [esp + 0xb4]
movsx eax, cl
fmul dword [0x6870c0]
fmulp st(1)
fstp dword [esp]
mov dword [esp + 0xb4], eax
movsx eax, byte [edi + 0x9e6052]
fild dword [esp + 0xb4]
mov dword [esp + 0xb4], eax
push eax
fild dword [esp + 0xb8]
fmul dword [0x6870c0]
fmulp st(1)
fstp dword [esp]
mov bl, byte [ebp + 0x151]
movsx eax, bl
mov dword [esp + 0xb8], eax
mov eax, dword [ebp + 0x13c]
lea edx, [eax*4]
lea edx, [edx + edx*2]
movsx eax, byte [edx + 0x9e6053]
fild dword [esp + 0xb8]
mov dword [esp + 0xb8], eax
push eax
fild dword [esp + 0xbc]
movsx eax, bl
fmul dword [0x6870c0]
fmulp st(1)
fstp dword [esp]
mov dword [esp + 0xbc], eax
movsx eax, byte [edx + 0x9e6052]
fild dword [esp + 0xbc]
mov dword [esp + 0xbc], eax
push eax
fild dword [esp + 0xc0]
fmul dword [0x6870c0]
fmulp st(1)
fstp dword [esp]
lea eax, [esp + 0x19c]
lea esi, [esp + 0x1a8]
push esi
push eax
call fcn.00429850
fld dword [0x687058]
fdiv dword [ebp + 0x15c]
add esp, 0x18
fmulp st(1)
fnstcw word [esp + 0x24]
mov eax, dword [esp + 0x24]
or byte [esp + 0x25], 0xc
fldcw word [esp + 0x24]
mov dword [esp + 0x24], eax
fistp dword [esp + 0xb0]
mov eax, dword [esp + 0xb0]
fldcw word [esp + 0x24]
mov dword [ebp + 0x138], eax
mov eax, dword [0x974b34]
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb0], eax
fild qword [esp + 0xb0]
fld dword [0x68711c]
fadd dword [esp + 0xbc]
fimul dword [ebp + 0x138]
fsubp st(1)
fnstcw word [esp + 0x24]
mov eax, dword [esp + 0x24]
or byte [esp + 0x25], 0xc
fldcw word [esp + 0x24]
mov dword [esp + 0x24], eax
fistp dword [esp + 0xb0]
mov eax, dword [esp + 0xb0]
fldcw word [esp + 0x24]
mov dword [ebp + 0x134], eax
mov edx, dword [0x974b34]
sub edx, dword [ebp + 0x134]
mov edi, dword [esp + 0x4c]
mov eax, edx
mov dword [esp + 0xb0], edx
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], 0
fild qword [esp + 0xb0]
mov eax, dword [esp + 0x50]
mov esi, dword [esp + 0x44]
mov dword [esp + 0x1cc], eax
mov eax, dword [esp + 0x48]
fidiv dword [ebp + 0x138]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], edi
mov dword [esp + 0x1c0], eax
mov dword [esp + 0x1d0], 0
mov dword [esp + 0x1bc], esi
mov dword [esp + 0x1b8], 0
lea esi, [esp + 0xcc]
mov dword [esp + 0x1ac], 0
lea edi, [esp + 0x1c8]
fstp dword [esp + 0x40]
mov eax, dword [ebp + 0x140]
lea ecx, [eax*4]
lea ecx, [ecx + ecx*2]
movsx eax, word [ecx + 0x9e604e]
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
movsx eax, word [ecx + 0x9e604c]
fmul dword [0x687050]
mov dword [esp + 0xb0], eax
fstp dword [esp + 0x88]
fild dword [esp + 0xb0]
fmul dword [0x687050]
fadd dword [esp + 0xa0]
fstp dword [esp + 0x1b0]
fld dword [esp + 0x88]
fsub dword [esp + 0xa4]
lea ebx, [esp + 0x1b0]
fstp dword [esp + 0x1b4]
mov eax, dword [ebp + 0x13c]
lea edx, [eax*4]
lea edx, [edx + edx*2]
movsx eax, word [edx + 0x9e604e]
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
movsx eax, word [edx + 0x9e604c]
fmul dword [0x687050]
mov dword [esp + 0xb0], eax
lea eax, [esp + 0xf0]
push eax
push esi
fstp dword [esp + 0x94]
fild dword [esp + 0xb8]
fmul dword [0x687050]
fadd dword [esp + 0xb0]
fstp dword [esp + 0x1ac]
fld dword [esp + 0x94]
fsub dword [esp + 0xb4]
fstp dword [esp + 0x1b0]
mov eax, dword [ebp + 0x138]
push eax
lea eax, [esp + 0x1c8]
push dword [esp + 0x4c]
push edi
push eax
lea eax, [esp + 0x1bc]
push ebx
push eax
call fcn.00429540
mov ecx, dword [esp + 0xe4]
mov edx, dword [esp + 0xe0]
lea ecx, [ecx + ecx*4]
lea edx, [edx + edx*4]
lea ecx, [ecx*4]
lea edx, [edx*4]
add ecx, 0x9b6e64
add esp, 0x20
movsx eax, word [ecx + 8]
add edx, 0x9b6e64
fldz
mov dword [esp + 0xb0], eax
fldz
fldz
fldz
fild dword [esp + 0xb0]
movsx eax, word [edx + 8]
fmul dword [0x687050]
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
movsx eax, word [ecx + 6]
fmul dword [0x687050]
mov dword [esp + 0xb0], eax
movsx eax, word [edx + 6]
fsubrp st(1)
fstp st(3)
fild dword [esp + 0xb0]
mov dword [esp + 0xb0], eax
movsx eax, word [ecx + 4]
fmul dword [0x687050]
fild dword [esp + 0xb0]
mov dword [esp + 0xb0], eax
movsx eax, word [edx + 4]
fmul dword [0x687050]
fsubrp st(1)
fstp st(4)
fild dword [esp + 0xb0]
mov dword [esp + 0xb0], eax
fmul dword [0x687050]
fild dword [esp + 0xb0]
fmul dword [0x687050]
fsubrp st(1)
fstp st(1)
fld st(3)
fmul st(0)
fld st(1)
fmul st(0)
faddp st(1)
fld st(3)
fmul st(0)
faddp st(1)
fsqrt
fstp dword [esp + 0xb0]
fld dword [esp + 0xb0]
fstp st(2)
fld dword [0x6870ec]
fdiv st(2)
fstp st(2)
mov ebx, dword [esp + 0xc4]
mov esi, dword [esp + 0xc0]
fld st(1)
fmul st(3)
fstp st(3)
fld st(1)
fmul st(1)
fadd dword [esp + 0xcc]
fstp dword [esp + 0xe4]
fld st(1)
fmul st(4)
fadd dword [esp + 0xd0]
fstp dword [esp + 0xe8]
fld dword [esp + 0xd4]
fadd st(3)
fstp dword [esp + 0xec]
lea ebx, [ebx + ebx*4]
lea ebx, [ebx*4]
add ebx, 0x9b6e64
movsx eax, word [ebx + 8]
mov dword [esp + 0xb0], eax
lea esi, [esi + esi*4]
fild dword [esp + 0xb0]
lea esi, [esi*4]
add esi, 0x9b6e64
cmp byte [esp + 0x1c], 0
fmul dword [0x687050]
movsx eax, word [esi + 8]
fstp st(3)
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
fmul dword [0x687050]
fstp st(4)
fld dword [esp + 0xbc]
fmul st(3)
fld dword [0x68704c]
fsub dword [esp + 0xbc]
fmul st(5)
faddp st(1)
fstp dword [esp + 0xec]
fld dword [0x687054]
fstp dword [esp + 0x54]
je 0x4287a0
fcompp
fcompp
lea eax, [esp + 0x17c]
push 1
push eax
push dword [esp + 0xf4]
push dword [esp + 0xf4]
push dword [esp + 0xf4]
call fcn.005c2ca0
add esp, 0x14
test al, al
jne 0x428790
test ebp, ebp
je 0x428782
mov ecx, ebp
mov ebp, dword [ecx]
push 1
call dword [ebp + 8]
add esp, 0x1e0
pop ebp
pop edi
pop esi
pop ebx
ret
mov eax, dword [esp + 0x17c]
mov dword [esp + 0x54], eax
jmp 0x429217
lea eax, [esp + 0xfc]
lea edi, [esp + 0x124]
fcompp
fcompp
push 0
push 0
push 1
push 0
push 0
push 0
push 1
push edi
push eax
lea eax, [esp + 0x108]
push dword [0x687058]
push eax
call fcn.004d8b20
add esp, 0x2c
test al, al
je 0x4287e7
mov eax, dword [esp + 0x104]
mov dword [esp + 0x54], eax
lea eax, [esp + 0xfc]
lea ebx, [esp + 0x124]
push 0
push 0
push 1
push 0
push 0
push 0
push 1
push ebx
push eax
lea eax, [esp + 0x108]
push dword [0x68705c]
push eax
call fcn.004d8b20
add esp, 0x2c
test al, al
fldz
fldz
fldz
je 0x429220
fld dword [esp + 0x104]
fstp st(1)
fld dword [esp + 0xec]
fstp st(2)
fld st(0)
fsub st(2)
fstp st(3)
fld st(2)
fcomp dword [0x687048]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x428860
fld st(2)
fchs
jmp 0x428862
fld st(2)
fstp st(3)
fld dword [esp + 0x54]
fsub st(2)
fstp st(2)
fld st(1)
fcomp dword [0x687048]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x428884
fld st(1)
fchs
jmp 0x428886
fld st(1)
fstp st(2)
fld st(2)
fcomp st(2)
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x429227
fst dword [esp + 0x54]
fcompp
fld dword [0x687054]
fcomp dword [esp + 0x54]
fnstsw ax
and ah, 0x44
cmp ah, 0x40
je 0x4288e0
fld dword [esp + 0x54]
fsub dword [esp + 0xec]
fst st(1)
fcomp dword [0x687048]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x4288d3
fchs
fcom dword [0x687228]
fnstsw ax
test ah, 0x45
jne 0x428900
test ebp, ebp
je 0x429230
mov ecx, ebp
mov esi, dword [ecx]
push 1
fstp st(0)
call dword [esi + 8]
add esp, 0x1e0
pop ebp
pop edi
pop esi
pop ebx
ret
movsx eax, word [ebp + 0x5c]
fstp st(0)
push eax
call fcn.0055f560
test al, al
pop ecx
je 0x428930
mov eax, dword [esp + 0x54]
mov dword [esp + 0xec], eax
mov al, byte [ebp + 0x1fa]
and al, 0x7f
or al, 0x80
mov byte [ebp + 0x1fa], al
jmp 0x428945
mov ecx, ebp
mov edi, dword [ecx]
call dword [edi + 0x94]
fadd dword [esp + 0x54]
fstp dword [esp + 0xec]
fldz
fldz
fld dword [esp + 0xec]
fstp st(1)
fld dword [esp + 0xe8]
fstp st(2)
fld dword [esp + 0xe4]
fstp dword [ebp + 0x34]
fld st(1)
fstp dword [ebp + 0x38]
fst dword [ebp + 0x3c]
fld dword [0x6871f4]
fmul dword [esp + 0xf8]
fstp st(1)
fld dword [0x6871f4]
fmul dword [esp + 0xf4]
fstp st(2)
fld dword [0x6871f4]
fmul dword [esp + 0xf0]
fstp dword [ebp + 0x70]
fld st(1)
fstp dword [ebp + 0x74]
fst dword [ebp + 0x78]
fld dword [0x6871f4]
fmul dword [esp + 0xf4]
mov edx, dword [esp + 0xc8]
fsub dword [esp + 0x94]
fstp dword [esp + 0x74]
fld dword [0x6871f4]
fmul dword [esp + 0xf0]
fsub dword [esp + 0x90]
fstp dword [esp + 0x70]
fld dword [esp + 0xd0]
fsub dword [esp + 0x170]
fstp dword [esp + 0x7c]
fld dword [esp + 0xcc]
fsub dword [esp + 0x16c]
fstp dword [esp + 0x78]
lea eax, [edx - 0xb]
cmp eax, 0xa
ja case.0x428a06.12
jmp dword [eax*4 + 0x6873d4]
cmp byte [ebp + 0x156], 1
jne 0x428a20
mov al, byte [ebp + 0x50]
and al, 7
or al, 0x10
jmp 0x428a27
mov al, byte [ebp + 0x50]
and al, 7
or al, 0x18
mov byte [ebp + 0x50], al
fcompp
mov ecx, ebp
push 1
call fcn.005b7db0
jmp 0x428a72
fcompp
mov ecx, ebp
push 1
call fcn.005b7db0
mov al, byte [ebp + 0x50]
and al, 7
or al, 0x18
mov byte [ebp + 0x50], al
jmp 0x428a72
cmp byte [esp + 0x1c], 0
je 0x428a66
mov al, byte [ebp + 0x50]
and al, 7
or al, 0x18
mov byte [ebp + 0x50], al
jmp 0x429237
mov al, byte [ebp + 0x50]
and al, 7
or al, 0x10
fcompp
mov byte [ebp + 0x50], al
mov eax, dword [ebp + 0x4c]
push 0
push eax
call fcn.00581520
pop ecx
pop ecx
mov ecx, ebp
call fcn.004885d0
test al, al
fldz
fldz
fldz
je 0x428be0
lea edx, [ebp + 0x34]
fld dword [esp + 0x170]
mov eax, edx
fsub dword [eax + 4]
fstp st(2)
fld dword [esp + 0x16c]
fsub dword [eax]
fstp st(3)
fld st(1)
fstp st(2)
fld st(1)
fmul st(0)
fld st(3)
fmul st(0)
faddp st(1)
fsqrt
fstp dword [esp + 0xb0]
fld dword [esp + 0xb0]
mov al, byte [ebp + 0x1fa]
shr al, 7
test al, al
fstp st(3)
je 0x428ae5
fld dword [0x6870f0]
jmp 0x428aeb
fld dword [0x68704c]
fstp st(2)
fld dword [0x7e4784]
fstp st(1)
fld dword [0x6871f8]
fmul st(1)
fmul st(2)
fcomp st(3)
fnstsw ax
and ah, 5
cmp ah, 1
je 0x428b1c
fld dword [0x6870d0]
fmul st(1)
fcomp st(3)
fnstsw ax
test ah, 0x45
jne 0x428b40
test ebp, ebp
je 0x429240
fcompp
mov ecx, ebp
mov ebx, dword [ecx]
push 1
fstp st(0)
call dword [ebx + 8]
add esp, 0x1e0
pop ebp
pop edi
pop esi
pop ebx
ret
mov eax, 0x7e46c0
fld dword [eax + 4]
fsub dword [edx + 4]
fstp st(2)
fld dword [eax]
fsub dword [edx]
fstp st(3)
fld st(1)
fstp st(2)
fld st(1)
fmul st(0)
fld st(3)
fmul st(0)
faddp st(1)
fsqrt
fstp dword [esp + 0xb0]
fld dword [esp + 0xb0]
fstp st(3)
fld dword [0x68722c]
fmul dword [0x7e4784]
fcomp st(3)
fnstsw ax
test ah, 0x45
je 0x428b8f
cmp byte [esp + 0x18], 0
je 0x428bb0
test ebp, ebp
je 0x429250
fcompp
mov ecx, ebp
mov ebp, dword [ecx]
push 1
fstp st(0)
call dword [ebp + 8]
add esp, 0x1e0
pop ebp
pop edi
pop esi
pop ebx
ret
movsx eax, word [ebp + 0x5c]
cmp eax, 0xd6
jne 0x428c73
test ebp, ebp
je 0x429260
fcompp
mov ecx, ebp
mov esi, dword [ecx]
push 1
fstp st(0)
call dword [esi + 8]
add esp, 0x1e0
pop ebp
pop edi
pop esi
pop ebx
ret
fld dword [esp + 0x170]
lea eax, [ebp + 0x34]
fsub dword [eax + 4]
fstp st(2)
fld dword [esp + 0x16c]
fsub dword [eax]
fstp st(3)
fld st(1)
fstp st(2)
fld st(1)
fmul st(0)
fld st(3)
fmul st(0)
faddp st(1)
fsqrt
fstp dword [esp + 0xb0]
fld dword [esp + 0xb0]
mov al, byte [ebp + 0x1fa]
shr al, 7
test al, al
fstp st(3)
je 0x428c30
fld dword [0x6870f0]
jmp 0x428c36
fld dword [0x68704c]
fstp st(2)
fld dword [0x687138]
fmul st(2)
fcomp st(3)
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x428c73
cmp byte [esp + 0x18], 0
jne 0x428c73
test ebp, ebp
je 0x429270
fcompp
mov ecx, ebp
mov edi, dword [ecx]
push 1
fstp st(0)
call dword [edi + 8]
add esp, 0x1e0
pop ebp
pop edi
pop esi
pop ebx
ret
cmp byte [esp + 0x14], 0
je 0x429280
movsx edx, word [ebp + 0x5c]
lea eax, [esp + 0x17a]
fld dword [0x687230]
mov ebx, dword [edx*4 + 0x92d4d0]
push 0
push 0
push 0
push 1
push 0
push 0
push 2
push eax
mov eax, dword [ebx + 0x1c]
fadd dword [eax + 0xc]
push 1
push eax
fstp dword [esp]
fcompp
lea eax, [ebp + 0x34]
push eax
fstp st(0)
call fcn.004d6390
add esp, 0x2c
cmp word [esp + 0x17a], 0
je 0x428ce4
test ebp, ebp
je 0x428cd9
mov ecx, ebp
mov ebp, dword [ecx]
push 1
call dword [ebp + 8]
add esp, 0x1e0
pop ebp
pop edi
pop esi
pop ebx
ret
movsx esi, word [ebp + 0x5c]
lea eax, [esp + 0x17a]
push 0
mov edi, dword [esi*4 + 0x92d4d0]
push 0
push 1
push 1
push 0
push 0
push 2
push eax
mov eax, dword [edi + 0x1c]
push 1
push dword [eax + 0xc]
mov dword [esp + 0x30], ebp
add dword [esp + 0x30], 4
add dword [esp + 0x30], 0x30
push dword [esp + 0x30]
call fcn.004d6390
add esp, 0x2c
cmp word [esp + 0x17a], 0
jne 0x428f70
fld dword [esp + 0x74]
fmul dword [esp + 0x7c]
fld dword [esp + 0x70]
fmul dword [esp + 0x78]
faddp st(1)
fcomp dword [0x687048]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x428f70
lea eax, [ebp + 0x1a1]
lea edx, [ebp + 0x1a0]
push eax
push edx
movsx eax, word [ebp + 0x5c]
mov ecx, dword [eax*4 + 0x92d4d0]
call fcn.005790b0
push ebp
call fcn.004db410
cmp dword [esp + 0xcc], 0xb
pop ecx
je 0x428d95
cmp dword [esp + 0xc8], 0x15
jne 0x428da1
push ebp
call fcn.00419bb0
pop ecx
jmp 0x428e6f
mov ecx, ebp
call fcn.005b8890
movzx ebx, byte [ebp + 0x1d0]
xor esi, esi
xor edi, edi
test ebx, ebx
jle 0x428e01
call fcn.00649a40
and eax, 0xffff
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
fmul dword [0x687214]
fmul dword [0x68704c]
fadd dword [0x687048]
fcomp dword [0x687050]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x428df8
mov eax, 1
jmp 0x428dfa
xor eax, eax
inc esi
add edi, eax
cmp esi, ebx
jl 0x428db7
movsx ebx, word [ebp + 0x5c]
push ebx
call fcn.0055f530
test al, al
pop ecx
je 0x428e3b
push 0x687234
call fcn.004059e0
pop ecx
mov ecx, dword [ebx*4 + 0x92d4d0]
mov dword [esp + 0xc], eax
mov esi, dword [ecx]
call dword [esi + 0x20]
cmp eax, dword [esp + 0xc]
jne 0x428e3b
cmp edi, 1
jl 0x428e3b
mov edi, 1
xor esi, esi
test edi, edi
jle 0x428e6f
mov ecx, ebp
push esi
call fcn.005b8720
mov edx, dword [ebp + esi*4 + 0x1ac]
test edx, edx
je 0x428e6a
mov al, byte [edx + 0x155]
and al, 0xfb
or al, 4
mov byte [edx + 0x155], al
inc dword [0xa0fd44]
inc esi
cmp esi, edi
jl 0x428e41
mov ecx, ebp
call fcn.005baaa0
sub eax, 2
cmp eax, 2
ja case.0x428e7e.3
jmp dword [eax*4 + 0x6873c8]
mov ebx, 0x1e
jmp 0x428e98
mov ebx, 0x28
jmp 0x428e98
mov ebx, 6
call fcn.00649a40
movzx eax, ax
and eax, 0x7f
cmp eax, ebx
jl 0x428eb0
cmp byte [0xa10b4f], 0
je 0x428ec8
mov al, byte [ebp + 0x50]
and al, 7
or al, 0x18
mov byte [ebp + 0x50], al
mov byte [ebp + 0x155], 2
add byte [ebp + 0x160], 0xa
cmp dword [esp + 0xc8], 0xb
jne 0x428edc
mov eax, dword [0x974b34]
mov dword [0x9b6a90], eax
movsx eax, word [ebp + 0x5c]
cmp eax, 0xbb
jne 0x428ef8
mov al, byte [ebp + 0x50]
and al, 7
or al, 0x18
mov byte [ebp + 0x50], al
mov byte [ebp + 0x155], 2
cmp dword [esp + 0xc8], 0xb
jne case.default.0x428f1f
movsx edi, word [ebp + 0x5c]
cmp edi, 0xec
jne case.default.0x428f1f
mov edx, dword [0xa0fd74]
mov eax, edx
cmp eax, 3
ja case.default.0x428f1f
jmp dword [eax*4 + 0x6873b8]
mov ecx, dword [edi*4 + 0x92d4d0]
push 0x4d
push 0x35
call fcn.005792b0
jmp case.default.0x428f1f
mov ecx, dword [edi*4 + 0x92d4d0]
push 0x4d
push 0xf
call fcn.005792b0
jmp case.default.0x428f1f
mov ecx, dword [edi*4 + 0x92d4d0]
push 0x4d
push 0x29
call fcn.005792b0
jmp case.default.0x428f1f
mov ecx, dword [edi*4 + 0x92d4d0]
push 0x4d
push 0x3d
call fcn.005792b0
jmp case.default.0x428f1f
test ebp, ebp
je 0x428f7d
mov ecx, ebp
mov ebp, dword [ecx]
push 1
call dword [ebp + 8]
add esp, 0x1e0
pop ebp
pop edi
pop esi
pop ebx
ret
call fcn.00649a40
and eax, 0xffff
mov dword [esp + 0xb0], eax
fild dword [esp + 0xb0]
fmul dword [0x687214]
fmul dword [0x68704c]
fadd dword [0x687048]
fcomp dword [0x687238]
fnstsw ax
test ah, 5
jne 0x429122
movsx eax, word [ebp + 0x5c]
push eax
call fcn.0055f530
test al, al
pop ecx
je 0x429122
mov al, byte [ebp + 0x1f9]
and al, 1
jne 0x429122
fld dword [0x687224]
lea ebx, [ebp + 0x14]
mov eax, dword [esp + 8]
fmul dword [ebx]
lea edi, [esp + 0x180]
push ebp
fadd dword [eax]
mov eax, dword [esp + 0xc]
fstp dword [esp + 0x1d8]
fld dword [0x687224]
fmul dword [ebx + 4]
lea esi, [esp + 0x1d8]
fadd dword [eax + 4]
mov eax, dword [esp + 0xc]
fstp dword [esp + 0x1dc]
fld dword [0x687224]
fmul dword [ebx + 8]
fadd dword [eax + 8]
fstp dword [esp + 0x1e0]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [esp + 0x184]
push eax
call fcn.0053b1a0
test eax, eax
pop ecx
pop ecx
je 0x429122
xor esi, esi
mov byte [ebp + 0x160], 0
mov dword [ebp + 0x70], 0
mov dword [ebp + 0x74], 0
mov dword [ebp + 0x78], 0
jmp 0x4290bb
mov edi, dword [ebp + esi*4 + 0x1ac]
test edi, edi
je 0x4290ba
mov ecx, edi
push ebp
push 0x10
call fcn.00521f30
mov dword [edi + 0x248], 5
mov dword [edi + 0x3b8], ebp
mov al, byte [edi + 0x156]
and al, 0xbf
or al, 0x40
mov byte [edi + 0x156], al
lea eax, [edi + 0x3b8]
mov ecx, dword [edi + 0x3b8]
push eax
call fcn.004c6ae0
inc esi
movzx eax, byte [ebp + 0x1cc]
cmp esi, eax
jl 0x429073
mov ecx, dword [ebp + 0x1a8]
test ecx, ecx
je 0x429122
push ebp
push 0x10
call fcn.00521f30
mov eax, dword [ebp + 0x1a8]
mov dword [eax + 0x248], 5
mov eax, dword [ebp + 0x1a8]
mov dword [eax + 0x3b8], ebp
mov ecx, dword [ebp + 0x1a8]
mov al, byte [ecx + 0x156]
and al, 0xbf
or al, 0x40
mov byte [ecx + 0x156], al
mov edx, dword [ebp + 0x1a8]
lea eax, [edx + 0x3b8]
mov ecx, dword [edx + 0x3b8]
push eax
call fcn.004c6ae0
add esp, 0x1e0
pop ebp
pop edi
pop esi
pop ebx
ret
fcompp
fstp st(0)
jmp 0x4272a2
fcompp
fstp st(0)
jmp 0x4272a2
fcompp
fstp st(0)
jmp 0x4272a2
fcompp
fstp st(0)
jmp 0x4272a2
fcompp
fstp st(0)
jmp 0x4272a2
fcompp
fstp st(0)
jmp 0x4272a2
fcompp
fstp st(0)
jmp 0x4272a2
fcompp
fstp st(0)
jmp 0x4272a2
fcompp
fstp st(0)
jmp 0x4272a2
fcompp
fstp st(0)
jmp 0x4272a2
fcompp
fstp st(0)
jmp 0x4272a2
fcompp
fstp st(0)
jmp 0x4272a2
fcompp
fstp st(0)
jmp 0x4272a2
fcompp
fcompp
jmp 0x427ceb
fldz
jmp 0x427d50
fldz
jmp 0x4288a0
fcompp
jmp 0x4288a0
fcompp
jmp 0x4288a0
fstp st(0)
jmp 0x4288f3
fcompp
jmp 0x428a72
fcompp
fstp st(0)
jmp 0x428b31
fcompp
fstp st(0)
jmp 0x428ba4
fcompp
fstp st(0)
jmp 0x428bd4
fcompp
fstp st(0)
jmp 0x428c68
fcompp
fstp st(0)
jmp 0x428ce4