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

Disassembly:
push ebx
mov edx, 0x24
sub esp, 4
mov dword [esp], 0
dec edx
jne 0x4789ea
call fcn.004c0cc0
call fcn.0042348c
push dword [0x63b84c]
fild dword [esp]
fstp dword [esp]
pop eax
mov dword [esp], eax
fld dword [0x63b854]
fstp dword [esp + 4]
push 0x57
call fcn.004a1f54
mov dword [esp + 8], eax
push 0x57
call fcn.004a1fc6
mov dword [esp + 0xc], eax
push 0
push 0x57
call fcn.004a1c2b
push 0x57
call fcn.004a2fc9
push eax
call fcn.004ac210
and eax, eax
je 0x47a15c
push 0xd
call fcn.004bffd2
push eax
call fcn.004ac3a5
push 0xffffff
call fcn.004ac3bc
push 0
call fcn.004ac275
push 0xffffff
push dword [esp + 0x10]
push dword [esp + 0x10]
push 0
push 0
call fcn.004ac3d5
cmp dword [0x63b768], 0
je 0x478b17
push 0x40
call fcn.004ac275
mov eax, dword [0x63b57c]
push eax
call fcn.004ac420
mov ebx, dword [esp + 0xc]
add ebx, 0xffffffbd
push ebx
mov ebx, dword [esp + 0xc]
mov eax, ebx
mov ecx, 2
cdq
idiv ecx
mov ebx, eax
push ebx
push 0x43
mov ebx, dword [esp + 0x14]
mov eax, ebx
mov ecx, 2
cdq
idiv ecx
mov ebx, eax
push ebx
call fcn.004ac652
mov ebx, dword [esp + 0xc]
add ebx, 0xffffff7a
push ebx
mov ebx, dword [esp + 0xc]
add ebx, 0xffffff7a
push ebx
push 0x43
push 0x43
call fcn.004ac895
jmp 0x478b42
mov eax, dword [0x63b57c]
push eax
mov ebx, dword [esp + 0x10]
add ebx, 0xffffff7a
push ebx
mov ebx, dword [esp + 0x10]
add ebx, 0xffffff7a
push ebx
push 0x43
push 0x43
call fcn.004ac3d5
push 0xffffff
call fcn.004ac3bc
push 4
call fcn.004ac275
push 0
mov ebx, dword [esp + 0x10]
add ebx, 0xffffff7a
push ebx
mov ebx, dword [esp + 0x10]
add ebx, 0xffffff7a
push ebx
push 0x43
push 0x43
call fcn.004ac3d5
push 0
call fcn.004ac275
cmp dword [0x63b6b0], 0
je 0x478bb8
push 0xff
mov ebx, dword [esp + 0x10]
add ebx, 0xffffffd3
push ebx
mov ebx, dword [esp + 0x10]
add ebx, 0xffffffd3
push ebx
push 0x36
call fcn.004b68f6
push eax
call fcn.004ac8e3
mov dword [esp + 0x1c], 0xff
mov dword [esp + 0x20], 0xff0000
push edx
call fcn.004c0b20
pop edx
push eax
mov edx, str.Range__
push edx
call fcn.004c0bf0
push edx
call fcn.004c0b20
pop edx
push eax
push edx
call fcn.004c0b20
pop edx
push eax
push 0xa0
call fcn.004a1e88
pop eax
mov edx, 0x57e8c0
push edx
call fcn.004c0bf0
lea eax, [esp + 0x34]
push eax
call fcn.004c0b60
mov edx, 0x57f5ce
lea ecx, [esp + 0x34]
call fcn.0049c008
mov edx, dword [esp + 0x34]
push edx
call fcn.004c0b20
pop edx
push eax
push edx
call fcn.004c0bf0
mov edx, str._vs.
push edx
call fcn.004c0bf0
mov edx, dword [esp + 0x34]
push edx
call fcn.004c0bf0
lea eax, [esp + 0x3c]
push eax
call fcn.004c0b60
push edx
call fcn.004c0b20
pop edx
push eax
mov edx, str._MV_
push edx
call fcn.004c0bf0
push edx
call fcn.004c0b20
pop edx
push eax
push edx
call fcn.004c0b20
pop edx
push eax
push 0
call fcn.004a1e88
pop eax
mov edx, 0x57e6fa
push edx
call fcn.004c0bf0
push edx
call fcn.004c0b20
pop edx
push eax
push edx
call fcn.004c0b20
pop edx
push eax
push 0x7d
call fcn.004a1e88
pop eax
mov edx, str.__BC_
push edx
call fcn.004c0bf0
push edx
call fcn.004c0b20
pop edx
push eax
push edx
call fcn.004c0b20
pop edx
push eax
push 0x98
call fcn.004a1e88
pop eax
mov edx, 0x580970
push edx
call fcn.004c0bf0
push edx
call fcn.004c0b20
pop edx
push eax
push edx
call fcn.004c0b20
pop edx
push eax
push 1
call fcn.004a1e88
pop eax
mov edx, str.__Cg_
push edx
call fcn.004c0bf0
push edx
call fcn.004c0b20
pop edx
push eax
push edx
call fcn.004c0b20
pop edx
push eax
push 0x1b
call fcn.004a1e88
pop eax
mov edx, 0x57e8c0
push edx
call fcn.004c0bf0
lea eax, [esp + 0x40]
push eax
call fcn.004c0b60
push dword [0x63b794]
push dword [0x63b704]
fld dword [0x63b794]
fld dword [0x63b704]
fcompp
fnstsw ax
test ah, 1
je 0x478d4d
mov eax, 1
jmp 0x478d4f
xor eax, eax
push eax
call fcn.004813ed
fstp dword [esp + 0x40]
fld dword [esp + 0x40]
fild dword [0x63b96c]
fcompp
fnstsw ax
test ah, 1
je 0x478d7d
push dword [0x63b96c]
fild dword [esp]
fstp dword [esp]
pop eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], 0x42860000
mov dword [esp + 0x50], 0
fld dword [esp + 0x40]
fmul dword [0x63b5ac]
fmul dword [0x58e4a8]
fistp dword [esp + 0x54]
mov ebx, dword [esp + 0x54]
mov dword [esp - 4], ebx
fild dword [esp - 4]
fdiv dword [0x63b5ac]
fild dword [0x63b96c]
fadd dword [0x58e3ec]
fcompp
fnstsw ax
test ah, 1
je 0x478de3
mov ebx, dword [0x63b96c]
add ebx, 0xffffffec
mov dword [esp - 4], ebx
fild dword [esp - 4]
fmul dword [0x63b5ac]
fistp dword [esp + 0x54]
mov dword [esp + 0x58], 0x4b
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 5
mov dword [0x63b854], 0
mov dword [0x63b84c], 0x5a
push dword [esp + 0x40]
call fcn.0042fce7
push dword [esp + 0x40]
call fcn.0041237b
fstp dword [esp + 0x14]
push dword [esp + 0x40]
call fcn.0041237b
fsub dword [esp + 0x14]
fadd qword [0x58e634]
sub esp, 8
fstp qword [esp]
push dword [esp + 0x48]
call fcn.0047208c
fld qword [esp]
fxch st(1)
add esp, 8
fdivp st(1)
sub esp, 8
fstp qword [esp]
call fcn.0049fde0
fdiv dword [0x58e2ac]
fstp dword [0x63b9c4]
mov ebx, dword [esp + 0x54]
cmp ebx, 0xa
jg 0x478e7e
mov dword [esp + 0x6c], 1
jmp 0x478f62
mov ebx, dword [esp + 0x54]
cmp ebx, 0x14
jg 0x478e94
mov dword [esp + 0x6c], 2
jmp 0x478f62
mov ebx, dword [esp + 0x54]
cmp ebx, 0x32
jg 0x478eaa
mov dword [esp + 0x6c], 5
jmp 0x478f62
mov ebx, dword [esp + 0x54]
cmp ebx, 0x32
jg 0x478ec0
mov dword [esp + 0x6c], 5
jmp 0x478f62
mov ebx, dword [esp + 0x54]
cmp ebx, 0x64
jg 0x478ed6
mov dword [esp + 0x6c], 0xa
jmp 0x478f62
mov ebx, dword [esp + 0x54]
cmp ebx, 0x1f4
jg 0x478eec
mov dword [esp + 0x6c], 0x32
jmp 0x478f62
mov ebx, dword [esp + 0x54]
cmp ebx, 0x3e8
jge 0x478f02
mov dword [esp + 0x6c], 0x64
jmp 0x478f62
mov ebx, dword [esp + 0x54]
cmp ebx, 0x7d0
jge 0x478f18
mov dword [esp + 0x6c], 0xc8
jmp 0x478f62
mov ebx, dword [esp + 0x54]
cmp ebx, 0x1388
jge 0x478f2e
mov dword [esp + 0x6c], 0x1f4
jmp 0x478f62
mov ebx, dword [esp + 0x54]
cmp ebx, 0x2710
jge 0x478f44
mov dword [esp + 0x6c], 0x3e8
jmp 0x478f62
mov ebx, dword [esp + 0x54]
cmp ebx, 0x4e20
jge 0x478f5a
mov dword [esp + 0x6c], 0x7d0
jmp 0x478f62
mov dword [esp + 0x6c], 0x1388
mov ebx, dword [esp + 0x54]
mov eax, ebx
cdq
idiv dword [esp + 0x6c]
mov ebx, edx
and ebx, ebx
je 0x478f7e
mov ebx, dword [esp + 0x54]
inc ebx
mov dword [esp + 0x54], ebx
jmp 0x478f62
fild dword [esp + 0x54]
fdiv dword [0x58e410]
fstp dword [esp + 0x48]
mov dword [0x63b854], 0
mov dword [0x63b84c], 0x5a
fld dword [esp + 0x48]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0042fce7
fld dword [esp + 0x48]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0041237b
fstp dword [esp + 0x14]
fld dword [esp + 4]
fstp dword [0x63b854]
mov dword [0x63b84c], 0x5a
fld dword [esp + 0x48]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0042fce7
fld dword [esp + 0x48]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0041237b
fsub dword [esp + 0x14]
fadd qword [0x58e634]
sub esp, 8
fstp qword [esp]
fld dword [esp + 0x50]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0047208c
fld qword [esp]
fxch st(1)
add esp, 8
fdivp st(1)
sub esp, 8
fstp qword [esp]
call fcn.0049fde0
fdiv dword [0x58e2ac]
fabs
fistp dword [esp + 0x58]
mov ebx, dword [esp + 0x58]
mov eax, ebx
cdq
idiv dword [esp + 0x60]
mov ebx, edx
and ebx, ebx
je 0x47906e
mov ebx, dword [esp + 0x58]
dec ebx
mov dword [esp + 0x58], ebx
jmp 0x479052
fild dword [esp + 8]
fadd dword [0x58e328]
fild dword [esp + 0x54]
fisub dword [esp + 0x50]
fadd dword [0x58e2c4]
fdivp st(1)
fstp dword [esp + 0x70]
fild dword [esp + 0xc]
fadd dword [0x58e328]
fild dword [esp + 0x58]
fisub dword [esp + 0x5c]
fadd dword [0x58e2c4]
fdivp st(1)
fstp dword [esp + 0x74]
fild dword [esp + 0x54]
fdiv dword [0x58e2d8]
fstp dword [esp + 0x28]
fld dword [esp + 0x28]
fcomp dword [0x58e2d0]
fnstsw ax
test ah, 0x41
je 0x4790d3
mov dword [esp + 0x28], 0x3f800000
jmp 0x479122
fld dword [esp + 0x28]
fcomp dword [0x58e2b0]
fnstsw ax
test ah, 0x41
je 0x4790ee
mov dword [esp + 0x28], 0x3f800000
jmp 0x479122
fld dword [esp + 0x28]
fcomp dword [0x58e318]
fnstsw ax
test ah, 0x41
je 0x479109
mov dword [esp + 0x28], 0x40000000
jmp 0x479122
fld dword [esp + 0x28]
fcomp dword [0x58e2d4]
fnstsw ax
test ah, 0x41
je 0x479122
mov dword [esp + 0x28], 0x40a00000
fild dword [esp + 0x54]
fdiv dword [0x58e414]
fstp dword [esp + 0x2c]
fld dword [esp + 0x2c]
fcomp dword [0x58e2d0]
fnstsw ax
test ah, 0x41
je 0x47914b
mov dword [esp + 0x2c], 0x3f800000
jmp 0x479189
fld dword [esp + 0x2c]
fcomp dword [0x58e318]
fnstsw ax
test ah, 0x41
je 0x479166
mov dword [esp + 0x2c], 0x40000000
jmp 0x479189
fld dword [esp + 0x2c]
fcomp dword [0x58e2d4]
fnstsw ax
test ah, 0x41
je 0x479181
mov dword [esp + 0x2c], 0x40a00000
jmp 0x479189
mov dword [esp + 0x2c], 0x41200000
push 0
push dword [esp + 0x3c]
push 0xf
mov ebx, dword [esp + 0x14]
push dword [esp + 0x44]
call fcn.004ac939
sub ebx, eax
mov eax, ebx
mov ecx, 2
cdq
idiv ecx
mov ebx, eax
push ebx
call fcn.004ac950
push 0
push dword [esp + 0x40]
push 0x23
mov ebx, dword [esp + 0x14]
push dword [esp + 0x48]
call fcn.004ac939
sub ebx, eax
mov eax, ebx
mov ecx, 2
cdq
idiv ecx
mov ebx, eax
push ebx
call fcn.004ac950
push 0
push dword [esp + 0x34]
mov ebx, dword [esp + 0x14]
add ebx, 0xffffffec
push ebx
mov ebx, dword [esp + 0x14]
push dword [esp + 0x3c]
call fcn.004ac939
sub ebx, eax
mov eax, ebx
mov ecx, 2
cdq
idiv ecx
mov ebx, eax
push ebx
call fcn.004ac950
fild dword [esp + 0xc]
sub esp, 8
fstp qword [esp]
push dword [esp + 0x3c]
call fcn.004ac939
fld qword [esp]
add esp, 8
mov dword [esp - 4], eax
fiadd dword [esp - 4]
fadd dword [0x58e2c4]
fdiv dword [0x58e2b0]
fstp dword [esp + 0x78]
push 0
push 0x42b40000
push dword [esp + 0x3c]
fld dword [esp + 0x84]
push eax
fistp dword [esp]
push 2
call fcn.004ac9b0
push 0
push 0x42b40000
push dword [esp + 0x3c]
fld dword [esp + 0x84]
push eax
fistp dword [esp]
mov ebx, dword [esp + 0x18]
push dword [esp + 0x44]
call fcn.004aca19
sub ebx, eax
add ebx, 0xfffffffb
push ebx
call fcn.004ac9b0
mov edx, 0x57e040
lea ecx, [esp + 0x38]
call fcn.0049c008
cmp byte [0x63b9e4], 0
je 0x4792c5
cmp byte [0x63b9f4], 0
je 0x4792c5
mov eax, 1
jmp 0x4792c7
xor eax, eax
and eax, eax
je 0x4792db
mov edx, str.HW_ignored_
lea ecx, [esp + 0x38]
call fcn.0049c008
jmp 0x47930b
cmp byte [0x63b9e4], 0
je 0x4792f4
mov edx, str.HW_ignored
lea ecx, [esp + 0x38]
call fcn.0049c008
jmp 0x47930b
cmp byte [0x63b9f4], 0
je 0x47930b
mov edx, 0x58cfe8
lea ecx, [esp + 0x38]
call fcn.0049c008
push dword [esp + 0x1c]
push dword [esp + 0x3c]
mov ebx, dword [esp + 0x14]
add ebx, 0xffffffe2
push ebx
mov ebx, dword [esp + 0x60]
mov dword [esp - 4], ebx
fild dword [esp - 4]
fmul dword [esp + 0x7c]
sub esp, 8
fstp qword [esp]
push dword [esp + 0x4c]
call fcn.004ac939
fld qword [esp]
add esp, 8
mov dword [esp - 4], eax
fisub dword [esp - 4]
fadd dword [0x58e330]
push eax
fistp dword [esp]
call fcn.004ac950
push 0xffffff
call fcn.004ac3bc
fld dword [0x63b74c]
fcomp dword [0x58e2c4]
fnstsw ax
test ah, 0x41
jne 0x479a3e
push dword [esp + 0x50]
fild dword [esp]
fstp dword [esp]
pop eax
mov dword [esp + 0x7c], eax
fld dword [esp + 0x7c]
fild dword [esp + 0x54]
fcompp
fnstsw ax
test ah, 1
jne 0x47944c
fld dword [esp + 0x7c]
fmul dword [esp + 0x70]
fadd dword [0x58e330]
fstp dword [esp + 0x80]
push edx
call fcn.004c0b20
pop edx
push eax
push edx
call fcn.004c0b20
pop edx
push eax
push 0
push dword [esp + 0x88]
call fcn.004be280
lea eax, [esp + 0x88]
push eax
call fcn.004c0b60
push 0
push dword [esp + 0x88]
mov ebx, dword [esp + 0x14]
add ebx, 0xffffffc2
push ebx
fld dword [esp + 0x88]
fmul dword [esp + 0x7c]
sub esp, 8
fstp qword [esp]
push dword [esp + 0x98]
call fcn.004ac939
fld qword [esp]
add esp, 8
mov dword [esp - 4], eax
fild dword [esp - 4]
fdiv dword [0x58e2b0]
fsubp st(1)
fadd dword [0x58e330]
push eax
fistp dword [esp]
call fcn.004ac950
fld dword [esp + 0x7c]
fiadd dword [esp + 0x6c]
fadd dword [0x58e2c4]
fstp dword [esp + 0x7c]
jmp 0x479387
push dword [esp + 0x5c]
fild dword [esp]
fstp dword [esp]
pop eax
mov dword [esp + 0x78], eax
fld dword [esp + 0x78]
fild dword [esp + 0x58]
fcompp
fnstsw ax
test ah, 1
jne 0x47952a
fld dword [esp + 0x74]
fild dword [esp + 0x58]
fsub dword [esp + 0x78]
fadd dword [0x58e2c4]
fmulp st(1)
fadd dword [0x58e564]
fstp dword [esp + 0x80]
push edx
call fcn.004c0b20
pop edx
push eax
push edx
call fcn.004c0b20
pop edx
push eax
push 0
push dword [esp + 0x84]
call fcn.004be280
lea eax, [esp + 0x88]
push eax
call fcn.004c0b60
push 0
push dword [esp + 0x88]
fld dword [esp + 0x88]
push eax
fistp dword [esp]
push dword [esp + 0x90]
call fcn.004ac939
mov ebx, eax
neg ebx
add ebx, 0x3e
push ebx
call fcn.004ac950
push 0
push dword [esp + 0x88]
fld dword [esp + 0x88]
push eax
fistp dword [esp]
mov ebx, dword [esp + 0x14]
add ebx, 0xffffffc2
push ebx
call fcn.004ac950
fld dword [esp + 0x78]
fiadd dword [esp + 0x60]
fadd dword [0x58e2c4]
fstp dword [esp + 0x78]
jmp 0x47945b
mov ebx, dword [esp + 0xc]
add ebx, 0xffffff78
push ebx
mov ebx, dword [esp + 0xc]
add ebx, 0xffffff78
push ebx
push 0x44
push 0x44
call fcn.004aca30
push 0
call fcn.004ac275
push dword [esp + 0x5c]
fild dword [esp]
fstp dword [esp]
pop eax
mov dword [esp + 0x78], eax
fld dword [esp + 0x78]
fild dword [esp + 0x58]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4795db
fld dword [esp + 0x74]
fild dword [esp + 0x58]
fsub dword [esp + 0x78]
fadd dword [0x58e2c4]
fmulp st(1)
fadd dword [0x58e330]
fstp dword [esp + 0x80]
push 0x808080
fld dword [esp + 0x84]
push eax
fistp dword [esp]
mov ebx, dword [esp + 0x10]
add ebx, 0xffffffbc
push ebx
fld dword [esp + 0x8c]
push eax
fistp dword [esp]
push 0x43
call fcn.004aca59
fld dword [esp + 0x78]
fiadd dword [esp + 0x60]
fadd dword [0x58e2c4]
fstp dword [esp + 0x78]
jmp 0x479568
fild dword [esp + 0x5c]
fild dword [esp + 0x60]
fdiv dword [0x58e2b0]
faddp st(1)
fadd dword [0x58e2c4]
fstp dword [esp + 0x78]
fld dword [esp + 0x78]
fild dword [esp + 0x58]
fcompp
fnstsw ax
test ah, 0x41
jne 0x479668
fld dword [esp + 0x74]
fild dword [esp + 0x58]
fsub dword [esp + 0x78]
fadd dword [0x58e2c4]
fmulp st(1)
fadd dword [0x58e330]
fstp dword [esp + 0x80]
push 0xd0d0d0
fld dword [esp + 0x84]
push eax
fistp dword [esp]
mov ebx, dword [esp + 0x10]
add ebx, 0xffffffbc
push ebx
fld dword [esp + 0x8c]
push eax
fistp dword [esp]
push 0x43
call fcn.004aca59
fld dword [esp + 0x78]
fiadd dword [esp + 0x60]
fadd dword [0x58e2c4]
fstp dword [esp + 0x78]
jmp 0x4795f5
push dword [esp + 0x50]
fild dword [esp]
fstp dword [esp]
pop eax
mov dword [esp + 0x7c], eax
fld dword [esp + 0x7c]
fild dword [esp + 0x54]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4796de
fld dword [esp + 0x7c]
fmul dword [esp + 0x70]
fadd dword [0x58e330]
fstp dword [esp + 0x80]
push 0x808080
mov ebx, dword [esp + 0x10]
add ebx, 0xffffffbc
push ebx
fld dword [esp + 0x88]
push eax
fistp dword [esp]
push 0x43
fld dword [esp + 0x90]
push eax
fistp dword [esp]
call fcn.004aca59
fld dword [esp + 0x7c]
fiadd dword [esp + 0x6c]
fadd dword [0x58e2c4]
fstp dword [esp + 0x7c]
jmp 0x479677
fild dword [esp + 0x50]
fild dword [esp + 0x6c]
fdiv dword [0x58e2b0]
faddp st(1)
fadd dword [0x58e2c4]
fstp dword [esp + 0x7c]
fld dword [esp + 0x7c]
fild dword [esp + 0x54]
fcompp
fnstsw ax
test ah, 0x41
jne 0x47975f
fld dword [esp + 0x7c]
fmul dword [esp + 0x70]
fadd dword [0x58e330]
fstp dword [esp + 0x80]
push 0xd0d0d0
mov ebx, dword [esp + 0x10]
add ebx, 0xffffffbc
push ebx
fld dword [esp + 0x88]
push eax
fistp dword [esp]
push 0x43
fld dword [esp + 0x90]
push eax
fistp dword [esp]
call fcn.004aca59
fld dword [esp + 0x7c]
fiadd dword [esp + 0x6c]
fadd dword [0x58e2c4]
fstp dword [esp + 0x7c]
jmp 0x4796f8
fild dword [esp + 0x54]
fdiv dword [0x58e41c]
fstp dword [esp + 0x48]
push dword [esp + 0x1c]
pop eax
mov dword [esp + 0x18], eax
mov dword [0x63b854], 0
mov dword [0x63b84c], 0x5a
fld dword [esp + 0x48]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0042fce7
fld dword [esp + 0x48]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0041237b
fstp dword [esp + 0x14]
fld dword [esp + 4]
fstp dword [0x63b854]
mov dword [0x63b84c], 0x5a
fld dword [esp + 0x48]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0042fce7
fld dword [esp + 0x48]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0041237b
fsub dword [esp + 0x14]
fadd qword [0x58e634]
sub esp, 8
fstp qword [esp]
fld dword [esp + 0x50]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0047208c
fld qword [esp]
fxch st(1)
add esp, 8
fdivp st(1)
sub esp, 8
fstp qword [esp]
call fcn.0049fde0
fdiv dword [0x58e2ac]
fstp dword [esp + 0x80]
fld dword [esp + 0x48]
fmul dword [esp + 0x70]
fadd dword [0x58e330]
fstp dword [esp + 0x44]
fld dword [esp + 0x74]
fild dword [esp + 0x58]
fsub dword [esp + 0x80]
fadd dword [0x58e2c4]
fmulp st(1)
fadd dword [0x58e330]
fstp dword [esp + 0x4c]
fld dword [esp + 0x44]
push eax
fistp dword [esp]
pop eax
mov dword [esp + 0x88], eax
fld dword [esp + 0x4c]
push eax
fistp dword [esp]
pop eax
mov dword [esp + 0x8c], eax
mov dword [0x63b854], 0
mov dword [0x63b84c], 0x5a
fld dword [esp + 0x48]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0042fce7
fld dword [esp + 0x48]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0041237b
fstp dword [esp + 0x14]
fld dword [esp + 4]
fstp dword [0x63b854]
mov dword [0x63b84c], 0x5a
fld dword [esp + 0x48]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0042fce7
fld dword [esp + 0x48]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0041237b
fsub dword [esp + 0x14]
fadd qword [0x58e634]
sub esp, 8
fstp qword [esp]
fld dword [esp + 0x50]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0047208c
fld qword [esp]
fxch st(1)
add esp, 8
fdivp st(1)
sub esp, 8
fstp qword [esp]
call fcn.0049fde0
fdiv dword [0x58e2ac]
fstp dword [esp + 0x80]
fld dword [esp + 0x48]
fmul dword [esp + 0x70]
fadd dword [0x58e330]
fstp dword [esp + 0x44]
fld dword [esp + 0x74]
fild dword [esp + 0x58]
fsub dword [esp + 0x80]
fadd dword [0x58e2c4]
fmulp st(1)
fadd dword [0x58e330]
fstp dword [esp + 0x4c]
fld dword [esp + 0x48]
fild dword [esp + 0x54]
fmul dword [0x58e528]
fcompp
fnstsw ax
test ah, 1
je 0x4799a6
jmp 0x479a39
fld dword [esp + 0x48]
fild dword [esp + 0x54]
fdiv dword [0x58e318]
fcompp
fnstsw ax
test ah, 1
je 0x4799c7
fld dword [esp + 0x2c]
fstp dword [esp + 0x24]
jmp 0x4799cf
fld dword [esp + 0x28]
fstp dword [esp + 0x24]
push dword [0x63b9cc]
push dword [0x63b860]
push dword [esp + 0x94]
fild dword [esp]
fstp dword [esp]
push dword [esp + 0x94]
fild dword [esp]
fstp dword [esp]
push dword [esp + 0x5c]
push dword [esp + 0x58]
call fcn.0043e82b
fld dword [esp + 0x48]
fadd dword [esp + 0x24]
fadd dword [0x58e2c4]
fstp dword [esp + 0x48]
fld dword [esp + 0x44]
push eax
fistp dword [esp]
pop eax
mov dword [esp + 0x88], eax
fld dword [esp + 0x4c]
push eax
fistp dword [esp]
pop eax
mov dword [esp + 0x8c], eax
jmp 0x479890
jmp 0x47a157
push dword [esp + 0x50]
fild dword [esp]
fstp dword [esp]
pop eax
mov dword [esp + 0x7c], eax
fild dword [esp + 0x58]
fchs
fstp dword [esp + 0x80]
mov ebx, dword [esp + 0x5c]
neg ebx
mov dword [esp + 0x58], ebx
fld dword [esp + 0x80]
push eax
fistp dword [esp]
pop eax
mov dword [esp + 0x5c], eax
fld dword [esp + 0x7c]
fild dword [esp + 0x54]
fcompp
fnstsw ax
test ah, 1
jne 0x479b39
fld dword [esp + 0x7c]
fmul dword [esp + 0x70]
fadd dword [0x58e330]
fstp dword [esp + 0x80]
push edx
call fcn.004c0b20
pop edx
push eax
push edx
call fcn.004c0b20
pop edx
push eax
push 0
push dword [esp + 0x88]
call fcn.004be280
lea eax, [esp + 0x88]
push eax
call fcn.004c0b60
push 0
push dword [esp + 0x88]
mov ebx, dword [esp + 0x14]
add ebx, 0xffffffc2
push ebx
fld dword [esp + 0x88]
fmul dword [esp + 0x7c]
sub esp, 8
fstp qword [esp]
push dword [esp + 0x98]
call fcn.004ac939
fld qword [esp]
add esp, 8
mov dword [esp - 4], eax
fild dword [esp - 4]
fdiv dword [0x58e2b0]
fsubp st(1)
fadd dword [0x58e330]
push eax
fistp dword [esp]
call fcn.004ac950
fld dword [esp + 0x7c]
fiadd dword [esp + 0x6c]
fadd dword [0x58e2c4]
fstp dword [esp + 0x7c]
jmp 0x479a74
push dword [esp + 0x58]
fild dword [esp]
fstp dword [esp]
pop eax
mov dword [esp + 0x78], eax
fld dword [esp + 0x78]
fild dword [esp + 0x5c]
fcompp
fnstsw ax
test ah, 0x41
je 0x479c17
fld dword [esp + 0x74]
fild dword [esp + 0x58]
fsub dword [esp + 0x78]
fadd dword [0x58e2c4]
fmulp st(1)
fadd dword [0x58e564]
fstp dword [esp + 0x80]
push edx
call fcn.004c0b20
pop edx
push eax
push edx
call fcn.004c0b20
pop edx
push eax
push 0
push dword [esp + 0x84]
call fcn.004be280
lea eax, [esp + 0x88]
push eax
call fcn.004c0b60
push 0
push dword [esp + 0x88]
fld dword [esp + 0x88]
push eax
fistp dword [esp]
push dword [esp + 0x90]
call fcn.004ac939
mov ebx, eax
neg ebx
add ebx, 0x3e
push ebx
call fcn.004ac950
push 0
push dword [esp + 0x88]
fld dword [esp + 0x88]
push eax
fistp dword [esp]
mov ebx, dword [esp + 0x14]
add ebx, 0xffffffc2
push ebx
call fcn.004ac950
fld dword [esp + 0x78]
fisub dword [esp + 0x60]
fadd dword [0x58e2c4]
fstp dword [esp + 0x78]
jmp 0x479b48
mov ebx, dword [esp + 0xc]
add ebx, 0xffffff78
push ebx
mov ebx, dword [esp + 0xc]
add ebx, 0xffffff78
push ebx
push 0x44
push 0x44
call fcn.004aca30
push 0
call fcn.004ac275
push dword [esp + 0x5c]
fild dword [esp]
fstp dword [esp]
pop eax
mov dword [esp + 0x78], eax
fld dword [esp + 0x78]
fild dword [esp + 0x58]
fcompp
fnstsw ax
test ah, 0x41
jne 0x479cc8
fld dword [esp + 0x74]
fild dword [esp + 0x58]
fsub dword [esp + 0x78]
fadd dword [0x58e2c4]
fmulp st(1)
fadd dword [0x58e330]
fstp dword [esp + 0x80]
push 0x808080
fld dword [esp + 0x84]
push eax
fistp dword [esp]
mov ebx, dword [esp + 0x10]
add ebx, 0xffffffbc
push ebx
fld dword [esp + 0x8c]
push eax
fistp dword [esp]
push 0x43
call fcn.004aca59
fld dword [esp + 0x78]
fiadd dword [esp + 0x60]
fadd dword [0x58e2c4]
fstp dword [esp + 0x78]
jmp 0x479c55
fild dword [esp + 0x5c]
fild dword [esp + 0x60]
fdiv dword [0x58e2b0]
faddp st(1)
fadd dword [0x58e2c4]
fstp dword [esp + 0x78]
fld dword [esp + 0x78]
fild dword [esp + 0x58]
fcompp
fnstsw ax
test ah, 0x41
jne 0x479d55
fld dword [esp + 0x74]
fild dword [esp + 0x58]
fsub dword [esp + 0x78]
fadd dword [0x58e2c4]
fmulp st(1)
fadd dword [0x58e330]
fstp dword [esp + 0x80]
push 0xd0d0d0
fld dword [esp + 0x84]
push eax
fistp dword [esp]
mov ebx, dword [esp + 0x10]
add ebx, 0xffffffbc
push ebx
fld dword [esp + 0x8c]
push eax
fistp dword [esp]
push 0x43
call fcn.004aca59
fld dword [esp + 0x78]
fiadd dword [esp + 0x60]
fadd dword [0x58e2c4]
fstp dword [esp + 0x78]
jmp 0x479ce2
push dword [esp + 0x50]
fild dword [esp]
fstp dword [esp]
pop eax
mov dword [esp + 0x7c], eax
fld dword [esp + 0x7c]
fild dword [esp + 0x54]
fcompp
fnstsw ax
test ah, 0x41
jne 0x479dcb
fld dword [esp + 0x7c]
fmul dword [esp + 0x70]
fadd dword [0x58e330]
fstp dword [esp + 0x80]
push 0x808080
mov ebx, dword [esp + 0x10]
add ebx, 0xffffffbc
push ebx
fld dword [esp + 0x88]
push eax
fistp dword [esp]
push 0x43
fld dword [esp + 0x90]
push eax
fistp dword [esp]
call fcn.004aca59
fld dword [esp + 0x7c]
fiadd dword [esp + 0x6c]
fadd dword [0x58e2c4]
fstp dword [esp + 0x7c]
jmp 0x479d64
fild dword [esp + 0x50]
fild dword [esp + 0x6c]
fdiv dword [0x58e2b0]
faddp st(1)
fadd dword [0x58e2c4]
fstp dword [esp + 0x7c]
fld dword [esp + 0x7c]
fild dword [esp + 0x54]
fcompp
fnstsw ax
test ah, 0x41
jne 0x479e4c
fld dword [esp + 0x7c]
fmul dword [esp + 0x70]
fadd dword [0x58e330]
fstp dword [esp + 0x80]
push 0xd0d0d0
mov ebx, dword [esp + 0x10]
add ebx, 0xffffffbc
push ebx
fld dword [esp + 0x88]
push eax
fistp dword [esp]
push 0x43
fld dword [esp + 0x90]
push eax
fistp dword [esp]
call fcn.004aca59
fld dword [esp + 0x7c]
fiadd dword [esp + 0x6c]
fadd dword [0x58e2c4]
fstp dword [esp + 0x7c]
jmp 0x479de5
push dword [esp + 0x1c]
pop eax
mov dword [esp + 0x18], eax
fild dword [esp + 0x54]
fdiv dword [0x58e41c]
fstp dword [esp + 0x48]
mov dword [0x63b854], 0
mov dword [0x63b84c], 0x5a
fld dword [esp + 0x48]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0042fce7
fld dword [esp + 0x48]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0041237b
fstp dword [esp + 0x14]
fld dword [esp + 4]
fstp dword [0x63b854]
mov dword [0x63b84c], 0x5a
fld dword [esp + 0x48]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0042fce7
fld dword [esp + 0x48]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0041237b
fsub dword [esp + 0x14]
fadd qword [0x58e634]
sub esp, 8
fstp qword [esp]
fld dword [esp + 0x50]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0047208c
fld qword [esp]
fxch st(1)
add esp, 8
fdivp st(1)
sub esp, 8
fstp qword [esp]
call fcn.0049fde0
fdiv dword [0x58e2ac]
fstp dword [esp + 0x80]
fld dword [esp + 0x48]
fmul dword [esp + 0x70]
fadd dword [0x58e330]
fstp dword [esp + 0x44]
fld dword [esp + 0x74]
fild dword [esp + 0x58]
fsub dword [esp + 0x80]
fadd dword [0x58e2c4]
fmulp st(1)
fadd dword [0x58e330]
fstp dword [esp + 0x4c]
fld dword [esp + 0x44]
push eax
fistp dword [esp]
pop eax
mov dword [esp + 0x88], eax
fld dword [esp + 0x4c]
push eax
fistp dword [esp]
pop eax
mov dword [esp + 0x8c], eax
push dword [0x63b9cc]
push dword [esp + 0x1c]
push dword [esp + 0x94]
fild dword [esp]
fstp dword [esp]
push dword [esp + 0x94]
fild dword [esp]
fstp dword [esp]
push dword [esp + 0x5c]
push dword [esp + 0x58]
call fcn.0043e82b
mov dword [0x63b854], 0
mov dword [0x63b84c], 0x5a
fld dword [esp + 0x48]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0042fce7
fld dword [esp + 0x48]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0041237b
fstp dword [esp + 0x14]
fld dword [esp + 4]
fstp dword [0x63b854]
mov dword [0x63b84c], 0x5a
fld dword [esp + 0x48]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0042fce7
fld dword [esp + 0x48]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0041237b
fsub dword [esp + 0x14]
fadd qword [0x58e634]
sub esp, 8
fstp qword [esp]
fld dword [esp + 0x50]
fdiv dword [0x63b5ac]
sub esp, 4
fstp dword [esp]
call fcn.0047208c
fld qword [esp]
fxch st(1)
add esp, 8
fdivp st(1)
sub esp, 8
fstp qword [esp]
call fcn.0049fde0
fdiv dword [0x58e2ac]
fstp dword [esp + 0x80]
fld dword [esp + 0x48]
fmul dword [esp + 0x70]
fadd dword [0x58e330]
fstp dword [esp + 0x44]
fld dword [esp + 0x74]
fild dword [esp + 0x58]
fsub dword [esp + 0x80]
fadd dword [0x58e2c4]
fmulp st(1)
fadd dword [0x58e330]
fstp dword [esp + 0x4c]
fld dword [esp + 0x48]
fild dword [esp + 0x54]
fmul dword [0x58e528]
fcompp
fnstsw ax
test ah, 1
je 0x47a0c4
jmp 0x47a157
fld dword [esp + 0x48]
fild dword [esp + 0x54]
fdiv dword [0x58e318]
fcompp
fnstsw ax
test ah, 1
je 0x47a0e5
fld dword [esp + 0x2c]
fstp dword [esp + 0x24]
jmp 0x47a0ed
fld dword [esp + 0x28]
fstp dword [esp + 0x24]
push dword [0x63b9cc]
push dword [0x63b860]
push dword [esp + 0x94]
fild dword [esp]
fstp dword [esp]
push dword [esp + 0x94]
fild dword [esp]
fstp dword [esp]
push dword [esp + 0x5c]
push dword [esp + 0x58]
call fcn.0043e82b
fld dword [esp + 0x44]
push eax
fistp dword [esp]
pop eax
mov dword [esp + 0x88], eax
fld dword [esp + 0x4c]
push eax
fistp dword [esp]
pop eax
mov dword [esp + 0x8c], eax
fld dword [esp + 0x48]
fadd dword [esp + 0x24]
fadd dword [0x58e2c4]
fstp dword [esp + 0x48]
jmp 0x479fae
call fcn.004ac35d
push dword [esp + 0x40]
call fcn.0041237b
fsub dword [esp + 0x14]
fadd qword [0x58e634]
sub esp, 8
fstp qword [esp]
push dword [esp + 0x48]
call fcn.0047208c
fld qword [esp]
fxch st(1)
add esp, 8
fdivp st(1)
sub esp, 8
fstp qword [esp]
call fcn.0049fde0
fdiv dword [0x58e2ac]
fstp dword [0x63b9c4]
push edx
call fcn.004c0b20
pop edx
push eax
push edx
call fcn.004c0b20
pop edx
push eax
push edx
call fcn.004c0b20
pop edx
push eax
push 1
push dword [0x63b9c4]
call fcn.004be280
mov edx, 0x57f97e
push edx
call fcn.004c0bf0
call fcn.004c0c50
push 0x1c
call fcn.0049c2c2
add dword [esp + 4], edx
call fcn.004a1e3d
call fcn.0049c2e0
fld dword [esp]
push eax
fistp dword [esp]
pop eax
mov dword [0x63b84c], eax
fld dword [esp + 4]
fstp dword [0x63b854]
push 0
call fcn.0040f794
xor eax, eax
push dword [esp + 0x38]
call fcn.004c0d20
push dword [esp + 0x34]
call fcn.004c0d20
push dword [esp + 0x84]
call fcn.004c0d20
push dword [esp + 0x30]
call fcn.004c0d20
push dword [esp + 0x3c]
call fcn.004c0d20
add esp, 0x90
pop ebx
ret