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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xdc
push ebx
push esi
mov esi, dword [ebp + 8]
xor ebx, ebx
cmp esi, ebx
push edi
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x1c], ebx
je 0x48babd
cmp dword [esi + 0xc], ebx
je 0x48babd
cmp dword [0x571920], 0x54
jne 0x48ab5c
mov eax, dword [esi + 0xa4]
cmp eax, ebx
je 0x48ab5c
cmp dword [eax + 0xc0], ebx
jge 0x48ab5c
push esi
call fcn.0048cbe0
add esp, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + 0xa4]
mov edi, 1
cmp ecx, ebx
je 0x48ab8b
push ecx
call fcn.00457cd0
mov ecx, dword [esi + 0xa4]
add esp, 4
mov dword [esp + 0x5c], edi
test byte [ecx + 0xcc], 1
je 0x48ab8b
mov dword [esp + 0x64], edi
mov eax, dword [0x584fb8]
mov edx, dword [0x584fe0]
mov dword [esp + 0xcc], eax
mov eax, dword [0x5838d8]
shr eax, 0xa
and eax, edi
mov dword [esp + 0xd4], edx
mov dword [esp + 0xd0], eax
mov eax, dword [0x584ce8]
cmp eax, ebx
je 0x48abcf
cmp ecx, eax
je 0x48abcf
mov eax, dword [0x5838d8]
or ah, 4
mov dword [0x5838d8], eax
mov eax, dword [esi + 0x3c]
cmp eax, ebx
mov dword [esp + 0x2c], eax
jne 0x48abdd
mov dword [ebp + 0x14], ebx
xor eax, eax
mov ax, word [esi + 0x88]
push eax
call fcn.004d1c40
mov edi, dword [ebp + 0xc]
mov dword [esp + 0x40], eax
mov eax, dword [esi]
add esp, 4
shr eax, 0x19
and eax, 1
mov dword [esp + 0x58], eax
je 0x48ac26
push ebx
push edi
call fcn.004b25c0
add esp, 8
test eax, eax
jne 0x48ac1f
mov eax, dword [esi + 0x40]
test ah, 0x10
je 0x48ac1f
fld dword [esi + 0x60]
jmp 0x48ac22
fld dword [esi + 0x5c]
fstp qword [esp + 0x68]
cmp edi, ebx
je 0x48ac92
mov eax, dword [edi + 0x10]
cmp eax, ebx
je 0x48ac5c
mov ecx, dword [eax]
test ecx, 0x20000
jne 0x48ac55
test ch, 0x10
je 0x48ac5c
push edi
call fcn.00463860
add esp, 4
cmp eax, ebx
je 0x48ac5c
test dword [eax], 0x20000
je 0x48ac5c
add eax, 0x6c
mov dword [esp + 0x1c], eax
mov ecx, dword [edi + 0x10]
mov eax, dword [ecx]
test ah, 0x10
jne 0x48ac92
mov eax, dword [esi + 0xc]
mov edx, dword [eax]
test dh, 0x10
jne 0x48ac92
mov edx, dword [0x584ab4]
add eax, 0x10
push edx
mov edx, dword [0x584ab0]
push edx
add ecx, 0x20
push eax
push ecx
call fcn.00418a10
add esp, 0x10
test eax, eax
jne 0x48ac9a
mov eax, dword [esi + 0x40]
test ah, 4
je 0x48aca9
mov eax, 1
cmp word [esi + 0x6c], ax
mov dword [esp + 0x44], eax
jbe 0x48acad
mov dword [esp + 0x44], ebx
mov eax, dword [ebp + 0x10]
mov ebx, 0x800
test eax, eax
je 0x48acf2
mov edx, dword [esi + 0x10]
mov ecx, dword [edx]
test ch, 0x10
jne 0x48acf2
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
test ah, 0x10
je 0x48acd2
test ah, 0x20
je 0x48acf2
mov eax, dword [0x584ab4]
add ecx, 0x10
push eax
mov eax, dword [0x584ab0]
push eax
add edx, 0x20
push ecx
push edx
call fcn.00418a10
add esp, 0x10
test eax, eax
jne 0x48acf7
test dword [esi + 0x40], ebx
je 0x48ad09
cmp word [esi + 0x6c], 1
mov dword [esp + 0x84], 1
jbe 0x48ad14
mov dword [esp + 0x84], 0
mov eax, dword [esp + 0x58]
mov dword [esp + 0x80], 0
test eax, eax
je 0x48ad39
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], edx
jmp 0x48ad4d
mov eax, dword [esi + 0x40]
test ah, 4
je 0x48ad46
fld dword [esi + 0x68]
jmp 0x48ad49
fld dword [esi + 0x5c]
fstp qword [esp + 0x20]
test edi, edi
je 0x48adda
test dword [edi + 0x40], ebx
jne 0x48ad67
mov eax, dword [esp + 0x44]
test eax, eax
jne 0x48ad67
fld dword [edi + 0x5c]
jmp 0x48ad8c
mov eax, dword [edi + 0x10]
test eax, eax
je 0x48ad89
push eax
call fcn.00440770
add esp, 4
test eax, eax
je 0x48ad89
mov eax, dword [edi + 0x10]
push eax
call fcn.004406f0
add esp, 4
jmp 0x48ad8c
fld dword [edi + 0x68]
mov eax, dword [esp + 0x58]
fstp qword [esp + 0x10]
test eax, eax
je 0x48ad9d
fld dword [esi + 0x5c]
jmp 0x48ada1
fld qword [esp + 0x20]
fld qword [esp + 0x10]
fcomp st(1)
fnstsw ax
test ah, 0x41
fstp st(0)
jne 0x48adc0
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], edx
mov eax, dword [esp + 0x44]
test eax, eax
je 0x48ade2
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
push eax
push ecx
call fcn.00457540
add esp, 8
mov eax, dword [esp + 0x44]
test eax, eax
jne 0x48adf6
mov edi, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
push edi
push edx
call fcn.00457540
add esp, 8
jmp 0x48adfa
mov edi, dword [esp + 0x24]
mov ebx, dword [esi + 0xc]
test ebx, ebx
mov dword [esp + 0x28], ebx
je 0x48b1b0
mov eax, dword [ebx]
test ah, 0x10
je 0x48b1ac
mov eax, dword [0x584fb8]
mov dword [esp + 0x80], ebx
test eax, eax
jne 0x48ae39
mov eax, dword [esi + 0x40]
test ah, 4
jne 0x48ae39
mov eax, dword [0x584fe0]
test eax, eax
je 0x48b19a
mov eax, dword [esp + 0x3c]
push eax
call fcn.004b2890
mov eax, dword [esi + 0x40]
add esp, 4
test ah, 4
jne 0x48ae5b
push 0x1f1f
call fcn.004b2f00
add esp, 4
test dword [esi], 0x20000
je 0x48ae72
lea ecx, [esi + 0x90]
push ecx
call fcn.004573a0
add esp, 4
mov eax, dword [esp + 0x64]
test eax, eax
je 0x48ae96
mov edx, dword [esi + 0xa4]
lea eax, [ebx + 0x20]
push edx
lea ecx, [ebx + 0x10]
push eax
push ecx
call fcn.00438150
add esp, 0xc
jmp 0x48b07d
cmp dword [0x571920], 0x54
jne 0x48b022
push esi
push ebx
call fcn.00438390
mov eax, dword [0x584fe0]
add esp, 8
test eax, eax
je 0x48b07d
lea edi, [ebx + 0x10]
push edi
call fcn.004189c0
mov eax, dword [esi + 0xa4]
add esp, 4
fstp qword [esp + 0x30]
test eax, eax
je 0x48aef0
fld qword [eax + 0x50]
fsub qword [0x550f30]
fabs
fcomp qword [0x550f90]
fnstsw ax
test ah, 1
je 0x48b07d
lea edx, [ebx + 0x20]
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
mov dword [esp + 0x98], 0
mov eax, dword [edx]
mov dword [esp + 0x9c], 0
mov dword [esp + 0x88], eax
mov dword [esp + 0x40], 1
mov ecx, dword [edx + 4]
mov dword [esp + 0x8c], ecx
mov eax, dword [edx + 8]
mov dword [esp + 0x90], eax
mov ecx, dword [edx + 0xc]
lea edx, [esp + 0x88]
push edx
mov dword [esp + 0x98], ecx
call fcn.004189e0
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x34]
push eax
lea edx, [esp + 0x90]
push ecx
push edx
fstp st(0)
call fcn.00418af0
lea eax, [esp + 0xa8]
push 1
lea ecx, [esp + 0x9c]
push eax
push ecx
push edi
call fcn.0043fc80
fst qword [esp + 0x30]
fcomp qword [0x550f10]
add esp, 0x20
fnstsw ax
test ah, 0x41
jne 0x48afb6
fld qword [0x550f28]
fsub qword [esp + 0x10]
mov dword [esp + 0x40], 0
fstp qword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x34]
push 0
push edx
mov edx, dword [esp + 0x38]
push eax
push ecx
lea eax, [esp + 0xa8]
push edx
mov edx, dword [esp + 0x54]
lea ecx, [esp + 0x9c]
push eax
push ecx
push edi
push edx
call fcn.0043fa90
mov edi, eax
add esp, 0x24
test edi, edi
je 0x48b1c1
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x2c]
push esi
push eax
push ecx
push edx
push 0
push edi
call fcn.004b25b0
add esp, 0x18
test eax, eax
jne 0x48b1c1
push edi
call fcn.00488710
add esp, 4
jmp 0x48b07d
push ebx
call fcn.0048e930
mov eax, dword [0x584fe0]
add esp, 4
test eax, eax
je 0x48b07d
mov eax, dword [ebx + 0xc]
test dword [eax], 0x20000
jne 0x48b07d
mov eax, dword [ebx]
push esi
test ah, 0x20
je 0x48b05f
mov ecx, dword [esp + 0x30]
push ecx
push ebx
call fcn.004b25b0
add esp, 0xc
test eax, eax
jne 0x48b1c1
jmp 0x48b07d
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x30]
push edi
push edx
push eax
push 0
push ebx
call fcn.004b25b0
add esp, 0x18
test eax, eax
jne 0x48b1c1
test dword [esi], 0x20000
je 0x48b08a
call fcn.00457470
lea ecx, [esi + 0x90]
lea edx, [ebx + 0x20]
push ecx
lea eax, [esp + 0xdc]
push edx
push eax
call fcn.004189a0
mov eax, dword [ebx]
mov ecx, dword [ebx + 0xc]
add esp, 0xc
test eax, 0x20000
je 0x48b0b6
lea ecx, [ebx + 0x6c]
jmp 0x48b0d8
mov eax, dword [ecx]
test ah, 0x10
jne 0x48b0ce
test eax, 0x20000
jne 0x48b0d5
mov dword [esp + 0x1c], 0
jmp 0x48b0dc
test eax, 0x20000
je 0x48b0dc
add ecx, 0x60
mov dword [esp + 0x1c], ecx
mov eax, dword [esp + 0x58]
test eax, eax
je 0x48b0f6
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], eax
jmp 0x48b12d
push ebx
call fcn.00440770
add esp, 4
test eax, eax
je 0x48b112
push ebx
call fcn.004406f0
fstp qword [esp + 0x24]
add esp, 4
jmp 0x48b12d
mov eax, dword [esi + 0x40]
test ah, 4
je 0x48b126
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x48b126
fld dword [eax + 0x68]
jmp 0x48b129
fld dword [esi + 0x5c]
fstp qword [esp + 0x20]
mov eax, dword [esi + 0x40]
test ah, 4
je 0x48b145
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x48b145
fld dword [eax + 0x54]
fstp qword [esp + 0x78]
jmp 0x48b155
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0xbff00000
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x7c]
push esi
fld dword [esi + 0x58]
push 1
mov edi, dword [esp + 0x2c]
push ecx
mov ecx, dword [esp + 0x84]
push edx
mov edx, dword [esp + 0x30]
push eax
push ecx
mov ecx, dword [ebp + 0x14]
sub esp, 8
lea eax, [esp + 0xf8]
fstp qword [esp]
push edi
push edx
push eax
push ecx
call fcn.0048bad0
add esp, 0x30
test eax, eax
jne 0x48b1c1
mov ebx, dword [ebx + 0xc]
mov eax, dword [esi + 0xc]
cmp ebx, eax
je 0x48b1cf
test ebx, ebx
jne 0x48ae09
mov dword [esp + 0x28], ebx
test dword [ebx], 0x20000
je 0x48b1e5
lea edx, [ebx + 0x60]
mov dword [esp + 0x1c], edx
jmp 0x48b1ed
mov dword [esp + 0x28], ebx
mov esi, 1
jmp 0x48ba7d
push 0xffff
mov dword [esp + 0x2c], ebx
call fcn.004b2f00
add esp, 4
jmp 0x48ba7b
mov dword [esp + 0x1c], 0
lea eax, [esi + 0x90]
lea ecx, [ebx + 0x10]
push eax
lea eax, [esp + 0x4c]
push ecx
push eax
call fcn.004189a0
push esi
call fcn.00463860
mov edx, dword [esi + 0x10]
mov ecx, dword [eax + 0xc]
add esp, 0x10
cmp eax, edx
mov dword [esp + 0x78], eax
mov dword [esp + 0x40], ecx
je 0x48b224
mov edx, dword [ecx]
test dh, 0x10
jne 0x48b22c
mov dword [esp + 0x40], 0
lea edi, [eax + 0x20]
lea eax, [esi + 0x90]
push eax
lea ecx, [esp + 0xac]
push edi
push ecx
call fcn.004189a0
mov edx, dword [0x584ab4]
mov eax, dword [0x584ab0]
push edx
push eax
lea eax, [ebx + 0x10]
push edi
push eax
call fcn.00418a10
add esp, 0x1c
neg eax
sbb eax, eax
inc eax
mov dword [esp + 0x74], eax
mov eax, dword [esi]
test eax, 0x2000000
je 0x48b2bb
test eax, 0x20000
je 0x48b286
lea eax, [esi + 0x90]
push eax
call fcn.004573a0
add esp, 4
mov edx, dword [ebp + 0x14]
lea ecx, [esp + 0x68]
push ecx
push edx
push esi
push ebx
call fcn.0048bc90
mov edi, eax
mov eax, dword [esi]
add esp, 0x10
test eax, 0x20000
je 0x48b2a9
call fcn.00457470
test edi, edi
je 0x48b915
mov esi, 1
jmp 0x48ba7d
xor eax, eax
mov ax, word [esi + 0x6c]
test eax, eax
mov dword [esp + 0x70], eax
jg 0x48b2d2
mov eax, 1
mov dword [esp + 0x70], eax
fld dword [esi + 0x64]
cmp eax, 1
mov dword [esp + 0x60], 1
fstp qword [esp + 0x98]
jl 0x48b915
mov edi, dword [esp + 0x60]
cmp edi, 1
jle 0x48b30c
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], ecx
mov ebx, dword [esp + 0x28]
push ebx
call fcn.00440770
add esp, 4
test eax, eax
je 0x48b328
push ebx
call fcn.004406d0
add esp, 4
jmp 0x48b335
lea eax, [esi + 0x40]
push eax
push edi
call fcn.004d1c20
add esp, 8
fstp qword [esp + 0x30]
fld dword [esi + 0x60]
fadd qword [esp + 0x98]
mov eax, dword [esp + 0x80]
test eax, eax
fsub dword [esi + 0x64]
fstp qword [esp + 0x10]
je 0x48b37a
mov ecx, dword [eax]
test ch, 0x20
je 0x48b37a
fld dword [eax + 0x44]
fstp qword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
push edx
push eax
call fcn.00457540
add esp, 8
jmp 0x48b547
mov eax, dword [esp + 0x74]
test eax, eax
jne 0x48b38b
cmp edi, 1
jne 0x48b547
mov eax, dword [esp + 0x44]
test eax, eax
jne 0x48b547
mov ecx, dword [esp + 0x3c]
push ecx
call fcn.004b2890
push 0x1f1f
call fcn.004b2f00
fld dword [esi + 0x5c]
fstp qword [esp]
call fcn.00457540
add esp, 8
cmp edi, 1
je 0x48b3e2
mov eax, dword [0x584fb8]
test eax, eax
je 0x48b3e2
mov edx, dword [esp + 0x54]
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x4c]
push edx
mov edx, dword [esp + 0x4c]
push eax
push ecx
push edx
call fcn.00456b90
jmp 0x48b3fb
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x4c]
push eax
mov eax, dword [esp + 0x4c]
push ecx
push edx
push eax
call fcn.004569e0
mov eax, dword [0x584fe0]
add esp, 0x10
test eax, eax
je 0x48b476
mov eax, dword [esp + 0x74]
test eax, eax
je 0x48b476
cmp edi, 1
jle 0x48b476
push esi
call fcn.00463830
add esp, 4
test eax, eax
je 0x48b476
mov ecx, dword [esi + 0x10]
add eax, 0x10
push 0
add ecx, 0x20
push eax
push ecx
call fcn.0043f9f0
mov edi, eax
push edi
call fcn.00481650
fcomp qword [0x584ab0]
add esp, 0x10
fnstsw ax
test ah, 0x41
jne 0x48b46d
fld dword [esi + 0x5c]
mov edx, dword [esp + 0x2c]
push esi
sub esp, 8
fstp qword [esp]
push edx
push 0
push edi
call fcn.004b25b0
add esp, 0x18
test eax, eax
jne 0x48b2b1
push edi
call fcn.00488710
add esp, 4
mov edi, dword [esp + 0x1c]
mov eax, dword [esp + 0x2c]
fld dword [esi + 0x58]
push esi
push 1
push edi
push eax
push 0xbff00000
push 0
sub esp, 8
mov ebx, dword [ebp + 0x14]
lea ecx, [esp + 0x68]
fstp qword [esp]
fld dword [esi + 0x5c]
sub esp, 8
fstp qword [esp]
push ecx
push ebx
call fcn.0048bad0
add esp, 0x30
test eax, eax
jne 0x48b2b1
mov edx, dword [esp + 0x3c]
push edx
call fcn.004b2890
push 0x1f1f
call fcn.004b2f00
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x18]
mov edx, ecx
mov dword [esp + 0x28], eax
push edx
push eax
mov dword [esp + 0x34], ecx
call fcn.00457540
mov eax, dword [0x584fb8]
add esp, 0x10
test eax, eax
je 0x48b50a
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x50]
mov eax, dword [esp + 0x4c]
push ecx
mov ecx, dword [esp + 0x4c]
push edx
push eax
push ecx
call fcn.00456b90
add esp, 0x10
mov edx, dword [esp + 0x2c]
push esi
fld dword [esi + 0x58]
push 1
mov eax, dword [esp + 0x1c]
push edi
mov ecx, dword [esp + 0x1c]
push edx
push 0xbff00000
push 0
lea edx, [esp + 0x60]
sub esp, 8
fstp qword [esp]
push eax
push ecx
push edx
push ebx
call fcn.0048bad0
add esp, 0x30
test eax, eax
jne 0x48b2b1
mov ebx, dword [esp + 0x28]
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x4c]
push eax
mov eax, dword [esp + 0x4c]
push ecx
push edx
push eax
call fcn.004569e0
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x5c]
mov eax, dword [esp + 0x60]
mov dword [esp + 0xc8], ecx
mov ecx, dword [esp + 0x64]
mov dword [esp + 0xcc], edx
mov dword [esp + 0xd0], eax
mov dword [esp + 0xd4], ecx
mov eax, dword [ebx]
add esp, 0x10
test eax, 0x1000000
je 0x48b5b3
lea eax, [esi + 0x90]
lea edx, [ebx + 0x20]
push eax
lea eax, [esp + 0xbc]
push edx
push eax
call fcn.004189a0
add esp, 0xc
mov ecx, dword [esp + 0x3c]
push ecx
call fcn.004b2890
mov eax, dword [ebx]
add esp, 4
mov edx, eax
and edx, 0xe00
cmp edx, 0x600
jne 0x48b61a
test eax, 0x1000000
je 0x48b61a
mov edi, dword [esp + 0x34]
mov ebx, dword [esp + 0x30]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
push edi
push ebx
push ecx
mov ecx, dword [esp + 0x34]
push edx
mov edx, dword [ecx + 0x6c]
push edx
mov edx, dword [ecx + 0x68]
shr eax, 4
and eax, 1
push edx
mov edx, dword [ecx + 0x44]
push eax
lea eax, [ecx + 0x10]
push eax
lea eax, [ecx + 0x30]
push eax
mov eax, dword [ecx + 0x40]
push edx
push eax
call fcn.00437450
add esp, 0x2c
jmp 0x48b651
mov edi, dword [esp + 0x34]
mov ebx, dword [esp + 0x30]
push edi
push ebx
call fcn.00457540
mov ecx, dword [esp + 0xcc]
mov edx, dword [esp + 0xc8]
mov eax, dword [esp + 0xc4]
push ecx
mov ecx, dword [esp + 0xc4]
push edx
push eax
push ecx
call fcn.00456b90
add esp, 0x18
fld qword [esp + 0x20]
fcomp qword [esp + 0x30]
fnstsw ax
test ah, 0x40
jne 0x48b6ad
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x1c]
fld dword [esi + 0x50]
mov dword [esp + 0x20], edx
mov edx, dword [esp + 0x2c]
push esi
push 1
push ecx
mov eax, dword [esp + 0x40]
push edx
mov ecx, dword [ebp + 0x14]
sub esp, 8
mov dword [esp + 0x3c], eax
lea eax, [esp + 0xd0]
fstp qword [esp]
fld dword [esi + 0x58]
sub esp, 8
fstp qword [esp]
push edi
push ebx
push eax
push ecx
call fcn.0048bad0
add esp, 0x30
test eax, eax
jne 0x48b2b1
mov eax, dword [esp + 0x5c]
mov dword [0x584fb8], 0
fld dword [esi + 0x68]
test eax, eax
fstp qword [esp + 0x88]
fld qword [esp + 0x30]
fstp dword [esi + 0x68]
je 0x48b6ea
mov edi, dword [0x5838d8]
shr edi, 0xa
and edi, 1
mov dword [esp + 0xc8], edi
call fcn.00457f30
jmp 0x48b6f1
mov edi, dword [esp + 0xc8]
push esi
call fcn.0048cbe0
mov ebx, eax
mov eax, dword [esp + 0x60]
add esp, 4
test eax, eax
je 0x48b729
mov edx, dword [esi + 0xa4]
push edx
call fcn.00457cd0
mov eax, dword [0x5838d8]
and edi, 1
shl edi, 0xa
and ah, 0xfb
add esp, 4
or edi, eax
mov dword [0x5838d8], edi
fld qword [esp + 0x88]
mov ecx, dword [esp + 0xcc]
mov edx, dword [esp + 0xd4]
fstp dword [esi + 0x68]
test ebx, ebx
mov dword [0x584fb8], ecx
mov dword [0x584fe0], edx
jne 0x48b2b1
mov eax, dword [esp + 0xb4]
mov ecx, dword [esp + 0xb0]
mov edx, dword [esp + 0xac]
push eax
mov eax, dword [esp + 0xac]
push ecx
push edx
push eax
call fcn.004569e0
mov eax, dword [esp + 0x84]
add esp, 0x10
test eax, eax
jne 0x48b798
mov ecx, dword [esp + 0x60]
mov eax, dword [esp + 0x70]
cmp ecx, eax
jne 0x48b900
mov eax, dword [esp + 0x84]
test eax, eax
jne 0x48b900
mov eax, dword [esp + 0x40]
test eax, eax
je 0x48b7ba
mov ecx, dword [eax]
test ch, 0x20
jne 0x48b900
mov ebx, dword [esp + 0x78]
test dword [ebx], 0x1000000
je 0x48b85c
mov edx, dword [esp + 0x3c]
push edx
call fcn.004b2890
mov eax, dword [ebx + 0x1c]
mov ecx, dword [ebx + 0x18]
mov edx, dword [ebx + 0x14]
lea edi, [ebx + 0x10]
push eax
push ecx
mov eax, dword [edi]
push edx
push eax
call fcn.004569e0
mov eax, dword [ebx]
mov edx, dword [esp + 0x28]
mov ecx, eax
add esp, 0x14
and ecx, 0xe00
cmp ecx, 0x600
push edx
jne 0x48b83a
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x28]
push ecx
mov ecx, dword [esp + 0x28]
push edx
mov edx, dword [ebx + 0x6c]
push ecx
mov ecx, dword [ebx + 0x68]
shr eax, 4
push edx
and eax, 1
push ecx
mov ecx, dword [ebx + 0x40]
push eax
mov eax, dword [ebx + 0x44]
lea edx, [ebx + 0x30]
push edi
push edx
push eax
push ecx
call fcn.00437450
add esp, 0x2c
jmp 0x48b85c
mov eax, dword [esp + 0x14]
push eax
call fcn.00457540
mov ecx, dword [ebx + 0x2c]
mov edx, dword [ebx + 0x28]
mov eax, dword [ebx + 0x24]
push ecx
mov ecx, dword [ebx + 0x20]
push edx
push eax
push ecx
call fcn.00456b90
add esp, 0x18
mov edx, dword [esp + 0x3c]
push edx
call fcn.004b2890
push 0x1f1f
call fcn.004b2f00
fld dword [esi + 0x5c]
fstp qword [esp]
call fcn.00457540
mov eax, dword [0x584fb8]
add esp, 8
test eax, eax
je 0x48b8af
mov eax, dword [esp + 0xb4]
mov ecx, dword [esp + 0xb0]
mov edx, dword [esp + 0xac]
push eax
mov eax, dword [esp + 0xac]
push ecx
push edx
push eax
call fcn.00456b90
add esp, 0x10
test dword [ebx], 0x20000
je 0x48b8bc
add ebx, 0x6c
jmp 0x48b8be
xor ebx, ebx
mov ecx, dword [esp + 0x2c]
push esi
fld dword [esi + 0x58]
push 1
push ebx
push ecx
push 0xbff00000
push 0
mov eax, dword [ebp + 0x14]
sub esp, 8
lea edx, [esp + 0xc8]
mov dword [esp + 0x3c], ebx
fstp qword [esp]
fld dword [esi + 0x5c]
sub esp, 8
fstp qword [esp]
push edx
push eax
call fcn.0048bad0
add esp, 0x30
test eax, eax
jne 0x48b2b1
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x70]
inc eax
cmp eax, ecx
mov dword [esp + 0x60], eax
jle 0x48b2ed
mov ebx, dword [esp + 0x40]
test ebx, ebx
je 0x48ba7b
mov edi, dword [esp + 0x1c]
cmp ebx, dword [esi + 0xc]
je 0x48ba7b
mov eax, dword [ebx]
test ah, 0x10
je 0x48ba7b
mov eax, dword [0x584fb8]
test eax, eax
je 0x48ba70
test dword [esi], 0x20000
je 0x48b95d
lea eax, [esi + 0x90]
push eax
call fcn.004573a0
add esp, 4
push 0x1f1f
call fcn.004b2f00
mov ecx, dword [esp + 0x40]
push ecx
call fcn.004b2890
mov eax, dword [esp + 0x6c]
add esp, 8
test eax, eax
je 0x48b995
mov edx, dword [esi + 0xa4]
lea eax, [ebx + 0x20]
push edx
lea ecx, [ebx + 0x10]
push eax
push ecx
call fcn.00438150
add esp, 0xc
jmp 0x48b9b3
cmp dword [0x571920], 0x54
jne 0x48b9aa
push esi
push ebx
call fcn.00438390
add esp, 8
jmp 0x48b9b3
push ebx
call fcn.0048e930
add esp, 4
test dword [esi], 0x20000
je 0x48b9c0
call fcn.00457470
lea eax, [esi + 0x90]
lea edx, [ebx + 0x20]
push eax
lea eax, [esp + 0xdc]
push edx
push eax
call fcn.004189a0
mov eax, dword [ebx]
add esp, 0xc
test eax, 0x20000
je 0x48b9e7
lea edi, [ebx + 0x6c]
mov eax, dword [esp + 0x58]
test eax, eax
je 0x48ba01
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
jmp 0x48ba31
push ebx
call fcn.00440770
add esp, 4
test eax, eax
je 0x48ba1d
push ebx
call fcn.004406f0
fstp qword [esp + 0x14]
add esp, 4
jmp 0x48ba31
mov eax, dword [esi + 0x40]
test ah, 8
je 0x48ba2a
fld dword [esi + 0x68]
jmp 0x48ba2d
fld dword [esi + 0x5c]
fstp qword [esp + 0x10]
mov eax, dword [esp + 0x2c]
push esi
fld dword [esi + 0x58]
push 1
mov ecx, dword [esp + 0x1c]
push edi
mov edx, dword [esp + 0x1c]
push eax
push 0xbff00000
push 0
lea eax, [esp + 0xf0]
sub esp, 8
fstp qword [esp]
push ecx
mov ecx, dword [ebp + 0x14]
push edx
push eax
push ecx
call fcn.0048bad0
add esp, 0x30
test eax, eax
jne 0x48b2b1
mov ebx, dword [ebx + 0xc]
test ebx, ebx
jne 0x48b925
xor esi, esi
push 0xffff
call fcn.004b2f00
mov eax, dword [esp + 0x60]
add esp, 4
test eax, eax
je 0x48ba97
call fcn.00457f30
mov eax, dword [esp + 0xd0]
mov edx, dword [0x5838d8]
and eax, 1
and dh, 0xfb
shl eax, 0xa
or eax, edx
mov dword [0x5838d8], eax
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret