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

Disassembly:
push ebx
push esi
push edi
push ebp
sub esp, 0x150
mov eax, dword [esp + 0x164]
mov dword [esp + 0xc0], eax
mov ebx, ecx
fild dword [esp + 0xc0]
push eax
mov ecx, ebx
xor esi, esi
fstp dword [esp]
call fcn.0048ac20
fnstcw word [esp + 0x40]
mov eax, dword [esp + 0x40]
or byte [esp + 0x41], 0xc
fldcw word [esp + 0x40]
mov dword [esp + 0x40], eax
mov ecx, ebx
fistp dword [esp + 0xc0]
fldcw word [esp + 0x40]
mov edi, dword [esp + 0xc0]
call fcn.00489270
mov ecx, ebx
call fcn.004892a0
mov ecx, ebx
mov dword [esp + 0x3c], eax
push dword [0x5f351c]
call fcn.0048abe0
fnstcw word [esp + 0x40]
mov eax, dword [esp + 0x40]
or byte [esp + 0x41], 0xc
fldcw word [esp + 0x40]
mov dword [esp + 0x40], eax
mov edx, dword [0x8f5f7c]
fistp dword [esp + 0xc0]
fldcw word [esp + 0x40]
mov eax, dword [esp + 0xc0]
mov dword [esp + 8], eax
mov eax, edx
cmp eax, 1
ja case.default.0x4897bc
jmp dword [eax*4 + 0x5f4a58]
fld dword [0x5f3868]
jmp 0x4897d1
fld dword [0x5f386c]
fstp dword [esp + 0x44]
fld dword [esp + 0x44]
fmul dword [0x5f34f0]
mov eax, dword [esp + 0x164]
mov dword [esp + 0x34], 0
mov dword [esp + 0xc0], eax
push eax
fiadd dword [esp + 0xc4]
mov ecx, ebx
fstp dword [esp]
call fcn.0048ac20
movsx eax, byte [esp + 0x170]
fstp st(0)
mov dword [esp + 0x38], eax
jmp 0x48a92c
mov ecx, ebx
mov ebp, dword [esp + 0x168]
push 0xff
mov dword [esp + 0x34], 0
mov dword [esp + 0x2c], 1
call fcn.0048ac60
lea ecx, [esp + 0xc8]
push eax
push 0x9b
push 0x9b
push 0x9b
call fcn.004f8c20
lea eax, [esp + 0xc8]
push eax
call fcn.00501bd0
mov edx, dword [esp + 0x3c]
pop ecx
mov eax, edx
test eax, eax
je 0x489885
sub eax, 0xe
je 0x4899b6
jmp case.default.0x489894
mov ecx, dword [esp + 0x34]
mov eax, ecx
cmp eax, 0x1d
ja case.default.0x489894
jmp dword [eax*4 + 0x5f49e0]
xor esi, esi
jmp case.default.0x489894
mov esi, 1
jmp case.default.0x489894
mov esi, 2
jmp case.default.0x489894
mov esi, 3
jmp case.default.0x489894
mov esi, 4
jmp case.default.0x489894
mov esi, 5
jmp case.default.0x489894
mov esi, 6
jmp case.default.0x489894
mov esi, 7
jmp case.default.0x489894
mov esi, 8
jmp case.default.0x489894
mov esi, 9
jmp case.default.0x489894
jmp case.0x4899c5.27
jmp case.0x4899c5.27
jmp case.0x4899c5.27
mov esi, 0xa
jmp case.default.0x489894
mov esi, 0xb
jmp case.default.0x489894
mov esi, 0xc
jmp case.default.0x489894
jmp case.0x4899c5.27
mov esi, 0x20
jmp case.default.0x489894
mov esi, 0xd
jmp case.default.0x489894
cmp dword [0x8f5f7c], 0
je case.0x4899c5.27
mov esi, 0x14
jmp case.default.0x489894
cmp dword [0x8f5f7c], 0
je case.0x4899c5.27
mov esi, 0x15
jmp case.default.0x489894
jmp case.0x4899c5.27
jmp case.0x4899c5.27
jmp case.0x4899c5.27
jmp case.0x4899c5.27
mov esi, 0x22
jmp case.default.0x489894
mov esi, 0x23
jmp case.default.0x489894
mov esi, 0x1d
jmp case.default.0x489894
mov esi, 0x1e
jmp case.default.0x489894
mov esi, 0x1f
jmp case.default.0x489894
mov edx, dword [esp + 0x34]
mov eax, edx
cmp eax, 0x1d
ja case.default.0x489894
jmp dword [eax*4 + 0x5f4968]
xor esi, esi
jmp case.default.0x489894
jmp case.0x4899c5.27
jmp case.0x4899c5.27
mov esi, 0xe
jmp case.default.0x489894
mov esi, 0xf
jmp case.default.0x489894
mov esi, 5
jmp case.default.0x489894
mov esi, 6
jmp case.default.0x489894
jmp case.0x4899c5.27
jmp case.0x4899c5.27
mov esi, 9
jmp case.default.0x489894
mov esi, 0x10
jmp case.default.0x489894
mov esi, 0x11
jmp case.default.0x489894
mov esi, 0x12
jmp case.default.0x489894
mov esi, 0xa
jmp case.default.0x489894
jmp case.0x4899c5.27
jmp case.0x4899c5.27
mov esi, 0x13
jmp case.default.0x489894
jmp case.0x4899c5.27
mov esi, 0xfffffffe
jmp case.default.0x489894
mov esi, 0x16
jmp case.default.0x489894
mov esi, 0x17
jmp case.default.0x489894
mov esi, 0x19
jmp case.default.0x489894
mov esi, 0x1a
jmp case.default.0x489894
mov esi, 0x1b
jmp case.default.0x489894
mov esi, 0x1c
jmp case.default.0x489894
jmp case.0x4899c5.27
jmp case.0x4899c5.27
or esi, 0xffffffff
mov dword [esp + 0xc], 0x9b
mov eax, dword [ebx + 0x44c]
cmp eax, dword [esp + 0x34]
jne 0x489f4f
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0x164]
fild dword [esp + 0xc0]
mov dword [esp + 0xc0], eax
fmul dword [esp + 0x44]
fiadd dword [esp + 0xc0]
fadd dword [0x5f39bc]
fnstcw word [esp + 0x40]
mov eax, dword [esp + 0x40]
or byte [esp + 0x41], 0xc
fldcw word [esp + 0x40]
mov dword [esp + 0x40], eax
fistp dword [esp + 0xc0]
fldcw word [esp + 0x40]
mov eax, dword [esp + 0xc0]
mov dword [esp + 0x2c], eax
cmp byte [ebx + 0x536], 0x13
jne 0x489f4f
cmp byte [esp + 0x170], 0
jne 0x489d15
cmp dword [ebx + 0x530], 0
jne 0x489d15
mov ecx, ebx
push dword [0x5f3504]
call fcn.0048abe0
fnstcw word [esp + 0x40]
mov eax, dword [esp + 0x40]
or byte [esp + 0x41], 0xc
fldcw word [esp + 0x40]
mov dword [esp + 0x40], eax
mov ecx, ebx
fistp dword [esp + 0xc0]
fldcw word [esp + 0x40]
mov eax, dword [esp + 0xc0]
push dword [0x5f3eb8]
mov dword [esp + 0x24], eax
call fcn.0048abe0
fnstcw word [esp + 0x40]
mov eax, dword [esp + 0x40]
or byte [esp + 0x41], 0xc
fldcw word [esp + 0x40]
mov dword [esp + 0x40], eax
cmp esi, 0xffffffff
fistp dword [esp + 0xc0]
fldcw word [esp + 0x40]
mov eax, dword [esp + 0xc0]
mov dword [esp + 0x14], eax
je 0x489c30
mov ecx, ebx
push 0xd2
call fcn.0048ac60
lea ecx, [esp + 0xdc]
push eax
push 0x6a
push 0xd9
push 0xff
call fcn.004f8c20
mov eax, dword [esp + 0x2c]
mov ecx, ebx
add eax, 0xa
mov dword [esp + 0xc0], eax
push eax
fild dword [esp + 0xc4]
fstp dword [esp]
call fcn.0048ac20
mov eax, dword [esp + 0x2c]
mov ecx, ebx
mov dword [esp + 0xc0], eax
push eax
fstp dword [esp + 0x4c]
fild dword [esp + 0xc4]
fstp dword [esp]
call fcn.0048ac20
lea eax, [esp + 0xdc]
push eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0xc4], eax
fstp dword [esp + 0x50]
fild dword [esp + 0xc4]
push dword [esp + 0x4c]
push eax
fstp dword [esp]
mov eax, dword [esp + 0x2c]
push dword [esp + 0x58]
mov dword [esp + 0xd0], eax
push eax
fild dword [esp + 0xd4]
fstp dword [esp]
lea ecx, [esp + 0xe0]
jmp 0x489cdd
mov ecx, ebx
push 0x96
call fcn.0048ac60
lea ecx, [esp + 0xf0]
push eax
push 0x32
push 0xaa
push 0xeb
call fcn.004f8c20
mov eax, dword [esp + 0x2c]
mov ecx, ebx
add eax, 0xa
mov dword [esp + 0xc0], eax
push eax
fild dword [esp + 0xc4]
fstp dword [esp]
call fcn.0048ac20
mov eax, dword [esp + 0x2c]
mov ecx, ebx
mov dword [esp + 0xc0], eax
push eax
fstp dword [esp + 0x54]
fild dword [esp + 0xc4]
fstp dword [esp]
call fcn.0048ac20
lea eax, [esp + 0xf0]
push eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0xc4], eax
fstp dword [esp + 0x58]
fild dword [esp + 0xc4]
push dword [esp + 0x54]
push eax
fstp dword [esp]
mov eax, dword [esp + 0x2c]
push dword [esp + 0x60]
mov dword [esp + 0xd0], eax
push eax
fild dword [esp + 0xd4]
fstp dword [esp]
lea ecx, [esp + 0xf4]
call fcn.004ba330
push eax
call fcn.0051f970
pop ecx
pop ecx
mov ecx, ebx
push 0xff
call fcn.0048ac60
lea ecx, [esp + 0xf4]
push eax
push 0
push 0
push 0
call fcn.004f8c20
lea eax, [esp + 0xf4]
jmp 0x489f40
cmp byte [esp + 0x170], 0xe
jne 0x489f4f
cmp dword [ebx + 0x530], 0xe
jne 0x489f4f
mov ecx, ebx
push dword [0x5f397c]
call fcn.0048abe0
fnstcw word [esp + 0x40]
mov eax, dword [esp + 0x40]
or byte [esp + 0x41], 0xc
fldcw word [esp + 0x40]
mov dword [esp + 0x40], eax
mov ecx, ebx
fistp dword [esp + 0xc0]
fldcw word [esp + 0x40]
mov eax, dword [esp + 0xc0]
push dword [0x5f3988]
mov dword [esp + 0x28], eax
call fcn.0048abe0
fnstcw word [esp + 0x40]
mov eax, dword [esp + 0x40]
or byte [esp + 0x41], 0xc
fldcw word [esp + 0x40]
mov dword [esp + 0x40], eax
cmp esi, 0xffffffff
fistp dword [esp + 0xc0]
fldcw word [esp + 0x40]
mov eax, dword [esp + 0xc0]
mov dword [esp + 0x18], eax
je 0x489e60
mov ecx, ebx
push 0xd2
call fcn.0048ac60
lea ecx, [esp + 0x108]
push eax
push 0x6a
push 0xd9
push 0xff
call fcn.004f8c20
mov eax, dword [esp + 0x2c]
mov ecx, ebx
add eax, 0xa
mov dword [esp + 0xc0], eax
push eax
fild dword [esp + 0xc4]
fstp dword [esp]
call fcn.0048ac20
mov eax, dword [esp + 0x2c]
mov ecx, ebx
mov dword [esp + 0xc0], eax
push eax
fstp dword [esp + 0x5c]
fild dword [esp + 0xc4]
fstp dword [esp]
call fcn.0048ac20
lea eax, [esp + 0x108]
push eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc4], eax
fstp dword [esp + 0x60]
fild dword [esp + 0xc4]
push dword [esp + 0x5c]
push eax
fstp dword [esp]
mov eax, dword [esp + 0x30]
push dword [esp + 0x68]
mov dword [esp + 0xd0], eax
push eax
fild dword [esp + 0xd4]
fstp dword [esp]
lea ecx, [esp + 0x10c]
jmp 0x489f0d
mov ecx, ebx
push 0x96
call fcn.0048ac60
lea ecx, [esp + 0x11c]
push eax
push 0x32
push 0xaa
push 0xeb
call fcn.004f8c20
mov eax, dword [esp + 0x2c]
mov ecx, ebx
add eax, 0xa
mov dword [esp + 0xc0], eax
push eax
fild dword [esp + 0xc4]
fstp dword [esp]
call fcn.0048ac20
mov eax, dword [esp + 0x2c]
mov ecx, ebx
mov dword [esp + 0xc0], eax
push eax
fstp dword [esp + 0x64]
fild dword [esp + 0xc4]
fstp dword [esp]
call fcn.0048ac20
lea eax, [esp + 0x11c]
push eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc4], eax
fstp dword [esp + 0x68]
fild dword [esp + 0xc4]
push dword [esp + 0x64]
push eax
fstp dword [esp]
mov eax, dword [esp + 0x30]
push dword [esp + 0x70]
mov dword [esp + 0xd0], eax
push eax
fild dword [esp + 0xd4]
fstp dword [esp]
lea ecx, [esp + 0x120]
call fcn.004ba330
push eax
call fcn.0051f970
pop ecx
pop ecx
mov ecx, ebx
push 0xff
call fcn.0048ac60
lea ecx, [esp + 0x120]
push eax
push 0
push 0
push 0
call fcn.004f8c20
lea eax, [esp + 0x120]
push eax
call fcn.00501bd0
mov dword [esp + 0x10], 0
pop ecx
mov ecx, ebx
push dword [0x5f37e4]
call fcn.0048ac20
mov ecx, ebx
fstp dword [esp + 0x68]
push dword [0x5f3ebc]
call fcn.0048abe0
fstp dword [esp + 0x6c]
push dword [esp + 0x68]
push dword [esp + 0x70]
call fcn.00501b80
pop ecx
pop ecx
jmp 0x48a138
mov ecx, 0x8f43a4
push dword [esp + 0x28]
push esi
call fcn.0058ebf0
test eax, eax
mov dword [esp], eax
je 0x489f9f
inc dword [esp + 0x30]
cmp dword [esp], 0
je 0x48a0da
cmp dword [esp + 0x30], 1
jle 0x48a0ab
mov ecx, 0x941520
push str.FEC_IBT
call fcn.0052c5a0
mov ecx, ebx
mov dword [esp + 0x10], eax
push 0x50
call fcn.0048ac60
lea ecx, [esp + 0x124]
push eax
push 0x14
push 0x14
push 0x14
call fcn.004f8c20
lea eax, [esp + 0x124]
push eax
call fcn.00501bd0
mov dword [esp + 0xc4], edi
pop ecx
fild dword [esp + 0xc0]
push dword [esp + 0x10]
push eax
fstp dword [esp]
mov dword [esp + 0xc8], ebp
push eax
fild dword [esp + 0xcc]
fstp dword [esp]
call fcn.00500f50
add esp, 0xc
mov ecx, ebx
push 0xff
call fcn.0048ac60
push eax
mov al, byte [esp + 0x10]
mov dl, byte [esp + 0x10]
push eax
mov al, byte [esp + 0x14]
push edx
lea ecx, [esp + 0x134]
push eax
call fcn.004f8c20
lea eax, [esp + 0x128]
push eax
call fcn.00501bd0
pop ecx
push 1
push dword [esp + 0x14]
call fcn.005018a0
mov eax, dword [esp + 0x10]
pop ecx
mov dword [esp + 0xc4], eax
pop ecx
fiadd dword [esp + 0xc0]
mov dword [esp + 0xc0], ebp
fiadd dword [esp + 0xc0]
fnstcw word [esp + 0x40]
mov eax, dword [esp + 0x40]
or byte [esp + 0x41], 0xc
fldcw word [esp + 0x40]
mov dword [esp + 0x40], eax
fistp qword [esp + 0xc0]
fldcw word [esp + 0x40]
mov ebp, dword [esp + 0xc0]
mov dword [esp + 0xc0], edi
fild dword [esp + 0xc0]
push dword [esp]
push eax
fstp dword [esp]
mov dword [esp + 0xc8], ebp
push eax
fild dword [esp + 0xcc]
fstp dword [esp]
call fcn.00500f50
add esp, 0xc
cmp dword [esp], 0
je 0x48a134
push 1
push dword [esp + 4]
call fcn.005018a0
mov eax, dword [esp + 0x10]
pop ecx
mov dword [esp + 0xc4], eax
pop ecx
fiadd dword [esp + 0xc0]
mov dword [esp + 0xc0], ebp
fiadd dword [esp + 0xc0]
fnstcw word [esp + 0x40]
mov eax, dword [esp + 0x40]
or byte [esp + 0x41], 0xc
fldcw word [esp + 0x40]
mov dword [esp + 0x40], eax
fistp qword [esp + 0xc0]
fldcw word [esp + 0x40]
mov ebp, dword [esp + 0xc0]
inc dword [esp + 0x28]
cmp dword [esp + 0x28], 5
jge 0x48a148
cmp esi, 0xffffffff
jne 0x489f85
cmp esi, 0xffffffff
jne 0x48a181
mov ecx, ebx
push 0x50
call fcn.0048ac60
lea ecx, [esp + 0x12c]
push eax
push 0x14
push 0x14
push 0x14
call fcn.004f8c20
lea eax, [esp + 0x12c]
push eax
call fcn.00501bd0
pop ecx
push 0x5f3ec0
jmp 0x48a2e9
cmp esi, 0xfffffffe
jne 0x48a1c0
mov ecx, ebx
push 0x50
call fcn.0048ac60
lea ecx, [esp + 0x130]
push eax
push 0x14
push 0x14
push 0x14
call fcn.004f8c20
lea eax, [esp + 0x130]
push eax
call fcn.00501bd0
pop ecx
push str.FEC_CMP
jmp 0x48a2e9
cmp dword [esp + 0x30], 0
jne 0x48a320
mov eax, dword [esp + 0x34]
cmp dword [ebx + 0x44c], eax
je 0x48a250
mov ecx, ebx
push 0xff
call fcn.0048ac60
lea ecx, [esp + 0x134]
push eax
push 0xff
push 0xff
push 0xff
call fcn.004f8c20
lea eax, [esp + 0x134]
push eax
call fcn.00501bd0
pop ecx
mov ecx, 0x941520
push str.FEC_UNB
call fcn.0052c5a0
mov dword [esp + 0xc0], edi
push eax
fild dword [esp + 0xc4]
push eax
fstp dword [esp]
mov dword [esp + 0xc8], ebp
push eax
fild dword [esp + 0xcc]
fstp dword [esp]
call fcn.00500f50
add esp, 0xc
jmp 0x48a320
cmp byte [ebx + 0x113], 0
jne 0x48a2a2
mov eax, dword [esp + 0x38]
cmp eax, dword [ebx + 0x530]
je 0x48a29b
mov ecx, ebx
push 0xff
call fcn.0048ac60
lea ecx, [esp + 0x138]
push eax
push 0xff
push 0xff
push 0xff
call fcn.004f8c20
lea eax, [esp + 0x138]
push eax
call fcn.00501bd0
pop ecx
push str.FEC_UNB
jmp 0x48a2e9
mov eax, dword [esp + 0x38]
cmp eax, dword [ebx + 0x530]
je 0x48a320
mov ecx, ebx
push 0xff
call fcn.0048ac60
lea ecx, [esp + 0x13c]
push eax
push 0xff
push 0xff
push 0xff
call fcn.004f8c20
lea eax, [esp + 0x13c]
push eax
call fcn.00501bd0
pop ecx
push str.FEC_UNB
mov ecx, 0x941520
call fcn.0052c5a0
mov dword [esp + 0xc0], edi
push eax
fild dword [esp + 0xc4]
push eax
fstp dword [esp]
mov dword [esp + 0xc8], ebp
push eax
fild dword [esp + 0xcc]
fstp dword [esp]
call fcn.00500f50
add esp, 0xc
cmp byte [esp + 0x170], 0
jne 0x48a333
cmp dword [ebx + 0x530], 0
je 0x48a34e
cmp byte [esp + 0x170], 0xe
jne 0x48a8cb
cmp dword [ebx + 0x530], 0xe
jne 0x48a8cb
mov eax, dword [ebx + 0x44c]
cmp dword [esp + 0x34], eax
jne 0x48a7a3
cmp esi, 0xffffffff
je 0x48a7a3
cmp esi, 0xfffffffe
je 0x48a7a3
mov dword [ebx + 0x528], esi
cmp byte [ebx + 0x113], 0
je 0x48a675
cmp byte [0x628d72], 0
jne 0x48a39a
mov byte [0x628d72], 1
mov byte [0x628d71], 0
cmp dword [esp + 0x30], 0
jle 0x48a439
mov ecx, 0x941520
push str.FEC_IBT
call fcn.0052c5a0
mov dword [esp + 0xc0], edi
push eax
fild dword [esp + 0xc4]
push eax
mov dword [esp + 0x24], eax
fstp dword [esp]
mov dword [esp + 0xc8], ebp
push eax
fild dword [esp + 0xcc]
fstp dword [esp]
call fcn.00500f50
add esp, 0xc
push 1
push dword [esp + 0x20]
call fcn.005018a0
mov eax, dword [esp + 0x10]
pop ecx
mov dword [esp + 0xc4], eax
pop ecx
fiadd dword [esp + 0xc0]
mov dword [esp + 0xc0], ebp
fiadd dword [esp + 0xc0]
fnstcw word [esp + 0x40]
mov eax, dword [esp + 0x40]
or byte [esp + 0x41], 0xc
fldcw word [esp + 0x40]
mov dword [esp + 0x40], eax
fistp qword [esp + 0xc0]
fldcw word [esp + 0x40]
mov ebp, dword [esp + 0xc0]
cmp byte [0x628d78], 0
jne 0x48a453
mov byte [0x628d78], 1
mov dword [0x628d74], 0
mov eax, dword [0x5f7614]
sub eax, dword [0x628d74]
cmp eax, 0x96
jbe 0x48a480
xor eax, eax
cmp byte [0x628d71], 0
jne 0x48a471
inc eax
mov byte [0x628d71], al
mov eax, dword [0x5f7614]
mov dword [0x628d74], eax
cmp byte [0x628d71], 0
je 0x48a4f2
mov ecx, ebx
push 0xff
call fcn.0048ac60
lea ecx, [esp + 0x140]
push eax
push 0x37
push 0x37
push 0x37
call fcn.004f8c20
lea eax, [esp + 0x140]
push eax
call fcn.00501bd0
pop ecx
mov ecx, 0x941520
push str.FEC_QUE
call fcn.0052c5a0
mov dword [esp + 0xc0], edi
push eax
fild dword [esp + 0xc4]
push eax
fstp dword [esp]
mov dword [esp + 0xc8], ebp
push eax
fild dword [esp + 0xcc]
fstp dword [esp]
call fcn.00500f50
add esp, 0xc
call fcn.00501c90
mov ecx, ebx
push dword [0x5f37e4]
call fcn.0048ac20
mov ecx, ebx
fstp dword [esp + 0x70]
push dword [0x5f37f4]
call fcn.0048abe0
fstp dword [esp + 0x74]
push dword [esp + 0x70]
push dword [esp + 0x78]
call fcn.00501b80
pop ecx
pop ecx
push 2
call fcn.00501db0
pop ecx
mov ecx, ebx
push 0xff
call fcn.0048ac60
lea ecx, [esp + 0x144]
push eax
push 0xff
push 0xff
push 0xff
call fcn.004f8c20
lea eax, [esp + 0x144]
push eax
call fcn.00501bd0
cmp byte [ebx + 9], 0
pop ecx
jne 0x48a5b1
mov ecx, ebx
push dword [0x5f3ed8]
call fcn.0048ac20
fisubr dword [0x8f4370]
mov ecx, ebx
push dword [0x5f3edc]
fstp dword [esp + 0x7c]
call fcn.0048abe0
mov ecx, 0x941520
fstp dword [esp + 0x7c]
push 0x5f3ee0
call fcn.0052c5a0
push eax
push dword [esp + 0x7c]
push dword [esp + 0x84]
jmp 0x48a5fd
mov ecx, ebx
push dword [0x5f3ed8]
call fcn.0048ac20
fisubr dword [0x8f4370]
mov ecx, ebx
push dword [0x5f3edc]
fstp dword [esp + 0x84]
call fcn.0048abe0
mov ecx, 0x941520
fstp dword [esp + 0x84]
push str.FET_CIG
call fcn.0052c5a0
push eax
push dword [esp + 0x84]
push dword [esp + 0x8c]
call fcn.00500f50
add esp, 0xc
call fcn.00501d70
mov ecx, ebx
push dword [0x5f37e4]
call fcn.0048ac20
mov ecx, ebx
fstp dword [esp + 0x88]
push dword [0x5f37f4]
call fcn.0048abe0
fstp dword [esp + 0x8c]
push dword [esp + 0x88]
push dword [esp + 0x90]
call fcn.00501b80
pop ecx
pop ecx
push 0
call fcn.00501db0
cmp byte [ebx + 0x534], 0
pop ecx
jne 0x48a669
mov ecx, 0x95cdbe
push 0
push 0x98
call fcn.0057cc20
mov byte [ebx + 0x534], 1
jmp 0x48a8cb
call fcn.00501c90
mov ecx, ebx
push dword [0x5f37e4]
call fcn.0048ac20
mov ecx, ebx
fstp dword [esp + 0x90]
push dword [0x5f37f4]
call fcn.0048abe0
fstp dword [esp + 0x94]
push dword [esp + 0x90]
push dword [esp + 0x98]
call fcn.00501b80
pop ecx
pop ecx
push 2
call fcn.00501db0
pop ecx
mov ecx, ebx
push 0xff
call fcn.0048ac60
lea ecx, [esp + 0x148]
push eax
push 0xff
push 0xff
push 0xff
call fcn.004f8c20
lea eax, [esp + 0x148]
push eax
call fcn.00501bd0
pop ecx
mov ecx, ebx
push dword [0x5f3ed8]
call fcn.0048ac20
fisubr dword [0x8f4370]
mov ecx, ebx
push dword [0x5f3edc]
fstp dword [esp + 0x9c]
call fcn.0048abe0
mov ecx, 0x941520
fstp dword [esp + 0x9c]
push str.FET_CIG
call fcn.0052c5a0
push eax
push dword [esp + 0x9c]
push dword [esp + 0xa4]
call fcn.00500f50
add esp, 0xc
call fcn.00501d70
mov ecx, ebx
push dword [0x5f37e4]
call fcn.0048ac20
mov ecx, ebx
fstp dword [esp + 0xa0]
push dword [0x5f37f4]
call fcn.0048abe0
fstp dword [esp + 0xa4]
push dword [esp + 0xa0]
push dword [esp + 0xa8]
call fcn.00501b80
pop ecx
pop ecx
push 0
call fcn.00501db0
mov byte [ebx + 0x534], 0
pop ecx
mov byte [ebx + 9], 0
jmp 0x48a8cb
cmp dword [esp + 0x34], eax
jne 0x48a8cb
call fcn.00501c90
mov ecx, ebx
push dword [0x5f37e4]
call fcn.0048ac20
mov ecx, ebx
fstp dword [esp + 0xa8]
push dword [0x5f37f4]
call fcn.0048abe0
fstp dword [esp + 0xac]
push dword [esp + 0xa8]
push dword [esp + 0xb0]
call fcn.00501b80
pop ecx
pop ecx
push 2
call fcn.00501db0
pop ecx
mov ecx, ebx
push 0xff
call fcn.0048ac60
lea ecx, [esp + 0x14c]
push eax
push 0xff
push 0xff
push 0xff
call fcn.004f8c20
lea eax, [esp + 0x14c]
push eax
call fcn.00501bd0
pop ecx
mov ecx, ebx
push dword [0x5f3ed8]
call fcn.0048ac20
fisubr dword [0x8f4370]
mov ecx, ebx
push dword [0x5f3edc]
fstp dword [esp + 0xb4]
call fcn.0048abe0
mov ecx, 0x941520
fstp dword [esp + 0xb4]
push str.FET_EIG
call fcn.0052c5a0
push eax
push dword [esp + 0xb4]
push dword [esp + 0xbc]
call fcn.00500f50
add esp, 0xc
call fcn.00501d70
mov ecx, ebx
push dword [0x5f37e4]
call fcn.0048ac20
mov ecx, ebx
fstp dword [esp + 0xb8]
push dword [0x5f37f4]
call fcn.0048abe0
fstp dword [esp + 0xbc]
push dword [esp + 0xb8]
push dword [esp + 0xc0]
call fcn.00501b80
pop ecx
pop ecx
push 0
call fcn.00501db0
pop ecx
inc dword [esp + 0x34]
mov eax, dword [esp + 0x34]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0x164]
fild dword [esp + 0xc0]
mov dword [esp + 0xc0], eax
push eax
mov ecx, ebx
fmul dword [esp + 0x48]
fiadd dword [esp + 0xc4]
fstp dword [esp]
call fcn.0048ac20
fnstcw word [esp + 0x40]
mov eax, dword [esp + 0x40]
or byte [esp + 0x41], 0xc
fldcw word [esp + 0x40]
mov dword [esp + 0x40], eax
fistp dword [esp + 0xc0]
fldcw word [esp + 0x40]
mov edi, dword [esp + 0xc0]
mov eax, dword [esp + 0x34]
cmp eax, dword [esp + 0x3c]
jb 0x489820
add esp, 0x150
pop ebp
pop edi
pop esi
pop ebx
ret 0x10