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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4a6d5b
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x94
mov eax, 0x7fff
push ebx
mov word [esp + 8], ax
mov word [esp + 0xa], ax
mov eax, 0xffff8001
push esi
push edi
mov word [esp + 0x14], ax
mov word [esp + 0x16], ax
mov esi, dword [ebp + 8]
xor ebx, ebx
lea ecx, [esp + 0x7c]
mov dword [esp + 0xa8], ebx
lea eax, [esi + 0x20]
mov dword [esp + 0x34], ebx
push eax
call fcn.0040f9a0
fild dword [0x4dc718]
sub esp, 8
lea edi, [esi + 0x24]
mov ecx, edi
mov dword [esp + 0x44], ebx
fstp qword [esp]
mov dword [esp + 0x60], ebx
mov dword [esp + 0x40], edi
call fcn.00437ae0
fild dword [0x4dc708]
fcomp st(1)
fnstsw ax
test ah, 0x41
fstp st(0)
jne 0x48cc69
mov al, byte [0x4dcd78]
test al, al
je 0x48cc69
fild dword [0x4dc718]
sub esp, 8
mov ecx, edi
fstp qword [esp]
call fcn.00437ae0
fild dword [0x4dc708]
fld dword [esi + 0x14]
fadd st(2)
mov byte [esp + 0x23], 1
fcompp
fnstsw ax
test ah, 0x41
fstp st(0)
je 0x48cc6e
mov byte [esp + 0x23], 0
mov eax, dword [esp + 0x84]
mov dword [esp + 0x24], ebx
cmp eax, ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ebx
je 0x48cc8e
mov dword [esp + 0x90], eax
jmp 0x48cc96
mov byte [esp + 0x8d], 1
mov byte [esp + 0x94], 0
mov ecx, dword [esp + 0x7c]
cmp dword [ecx], ebx
je 0x48d1c0
cmp eax, dword [esp + 0x90]
jne 0x48ccc2
mov cl, byte [esp + 0x94]
test cl, cl
jne 0x48d1c0
mov esi, eax
mov dword [esp + 0x30], esi
mov ax, word [esi + 6]
mov dl, al
shr dl, 6
test dl, 1
jne 0x48ccdd
shr al, 7
test al, 1
je 0x48ccf2
push ebx
push 2
push 0x4b4838
push 0x4dcd88
call fcn.00441210
add esp, 0x10
lea edx, [esi + 0x10]
mov dword [esp + 0x3c], edx
mov eax, dword [edx]
mov dword [esp + 0x40], eax
mov eax, dword [edx]
cmp eax, ebx
je 0x48cd09
mov eax, dword [eax]
jmp 0x48cd0b
xor eax, eax
cmp eax, ebx
mov dword [esp + 0x44], eax
je 0x48cd17
mov ecx, dword [eax]
jmp 0x48cd19
xor ecx, ecx
cmp eax, ebx
mov dword [esp + 0x48], ecx
mov dword [esp + 0x50], ebx
mov byte [esp + 0x4c], 0
mov byte [esp + 0x4d], 0
je 0x48cd35
mov dword [esp + 0x50], eax
jmp 0x48cd3a
mov byte [esp + 0x4d], 1
mov byte [esp + 0x54], 0
cmp dword [edx], ebx
je 0x48d1ab
cmp eax, dword [esp + 0x50]
jne 0x48cd59
mov cl, byte [esp + 0x54]
test cl, cl
jne 0x48d1ab
xor ecx, ecx
mov ebx, eax
mov cl, byte [esi + 7]
mov dword [esp + 0x78], ebx
test cl, 1
jne 0x48cf9d
lea edx, [ebx + 4]
mov dword [esp + 0x58], edx
mov eax, dword [edx]
mov dword [esp + 0x5c], eax
mov eax, dword [edx]
test eax, eax
je 0x48cd84
mov eax, dword [eax]
jmp 0x48cd86
xor eax, eax
test eax, eax
mov dword [esp + 0x60], eax
je 0x48cd92
mov ecx, dword [eax]
jmp 0x48cd94
xor ecx, ecx
test eax, eax
mov dword [esp + 0x64], ecx
mov dword [esp + 0x6c], 0
mov byte [esp + 0x68], 0
mov byte [esp + 0x69], 0
je 0x48cdb4
mov dword [esp + 0x6c], eax
jmp 0x48cdb9
mov byte [esp + 0x69], 1
mov byte [esp + 0x70], 0
cmp dword [edx], 0
je 0x48cfa1
cmp eax, dword [esp + 0x6c]
jne 0x48cdd9
mov cl, byte [esp + 0x70]
test cl, cl
jne 0x48cfa1
mov edi, eax
mov ecx, dword [edi + 4]
mov dword [esp + 0x10], ecx
mov edx, dword [edi + 8]
lea ecx, [esp + 0x10]
mov dword [esp + 0x14], edx
call fcn.00402110
test al, al
jne 0x48ce02
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
sub esi, eax
jmp 0x48ce04
xor esi, esi
lea ecx, [esp + 0x10]
call fcn.00402110
test al, al
jne 0x48ce1d
mov eax, dword [esp + 0x16]
mov ecx, dword [esp + 0x12]
sub eax, ecx
jmp 0x48ce1f
xor eax, eax
cmp si, ax
lea ecx, [esp + 0x10]
jle 0x48ce3d
call fcn.00402110
test al, al
jne 0x48ce52
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
sub eax, ecx
jmp 0x48ce54
call fcn.00402110
test al, al
jne 0x48ce52
mov eax, dword [esp + 0x16]
mov ecx, dword [esp + 0x12]
sub eax, ecx
jmp 0x48ce54
xor eax, eax
mov esi, dword [ebp + 8]
movsx eax, ax
mov dword [esp + 0x1c], eax
fild dword [esp + 0x1c]
fld dword [esi + 0x14]
fmul qword [0x4dccc8]
fcompp
fnstsw ax
test ah, 0x41
jne 0x48ce78
inc dword [esp + 0x24]
mov eax, dword [edi + 0x18]
test eax, eax
je 0x48cf87
lea ecx, [esp + 0x10]
call fcn.00402110
test al, al
jne 0x48ce9c
mov eax, dword [esp + 0x16]
mov ecx, dword [esp + 0x12]
sub eax, ecx
jmp 0x48ce9e
xor eax, eax
movsx ecx, ax
mov dword [esp + 0x1c], ecx
fild dword [esp + 0x1c]
fld qword [0x4dcc78]
fadd qword [0x4a8200]
fmul dword [esi + 0x14]
fcompp
fnstsw ax
test ah, 0x41
jne 0x48cf87
lea ecx, [esp + 0x10]
call fcn.00402110
test al, al
jne 0x48cede
mov eax, dword [esp + 0x16]
mov ecx, dword [esp + 0x12]
sub eax, ecx
jmp 0x48cee0
xor eax, eax
movsx edx, ax
mov dword [esp + 0x1c], edx
fild dword [esp + 0x1c]
fld qword [0x4a8200]
fsub qword [0x4dcc78]
fmul dword [esi + 0x14]
fcompp
fnstsw ax
test ah, 1
je 0x48cf87
lea ecx, [esp + 0x10]
call fcn.00402110
test al, al
jne 0x48cf20
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
sub eax, ecx
jmp 0x48cf22
xor eax, eax
movsx eax, ax
mov dword [esp + 0x1c], eax
fild dword [esp + 0x1c]
fld qword [0x4dcc68]
fadd qword [0x4a8200]
fmul dword [esi + 0x14]
fcompp
fnstsw ax
test ah, 0x41
jne 0x48cf87
lea ecx, [esp + 0x10]
call fcn.00402110
test al, al
jne 0x48cf5e
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
sub eax, ecx
jmp 0x48cf60
xor eax, eax
movsx ecx, ax
mov dword [esp + 0x1c], ecx
fild dword [esp + 0x1c]
fld qword [0x4a8200]
fsub qword [0x4dcc68]
fmul dword [esi + 0x14]
fcompp
fnstsw ax
test ah, 1
je 0x48cf87
inc dword [esp + 0x2c]
lea ecx, [esp + 0x58]
call fcn.004403e0
mov eax, dword [esp + 0x60]
mov edx, dword [esp + 0x58]
jmp 0x48cdbe
inc dword [esp + 0x2c]
lea edx, [esp + 0x98]
mov ecx, ebx
push edx
call fcn.0043b8f0
mov ecx, dword [eax]
mov dword [esp + 0x10], ecx
mov edx, dword [eax + 4]
lea ecx, [esp + 0x10]
mov dword [esp + 0x14], edx
call fcn.00402110
test al, al
jne 0x48cfd6
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
sub esi, eax
jmp 0x48cfd8
xor esi, esi
lea ecx, [esp + 0x10]
call fcn.00402110
test al, al
jne 0x48cff1
mov eax, dword [esp + 0x16]
mov ecx, dword [esp + 0x12]
sub eax, ecx
jmp 0x48cff3
xor eax, eax
cmp si, ax
lea ecx, [esp + 0x10]
jle 0x48d011
call fcn.00402110
test al, al
jne 0x48d026
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
sub eax, ecx
jmp 0x48d028
call fcn.00402110
test al, al
jne 0x48d026
mov eax, dword [esp + 0x16]
mov ecx, dword [esp + 0x12]
sub eax, ecx
jmp 0x48d028
xor eax, eax
mov esi, dword [ebp + 8]
movsx ecx, ax
mov dword [esp + 0x1c], ecx
fild dword [esp + 0x1c]
fld dword [esi + 0x14]
fmul qword [0x4dccc8]
fcompp
fnstsw ax
test ah, 0x41
je 0x48d086
fild dword [esp + 0x1c]
fld dword [esi + 0x14]
fadd st(0), st(0)
fcompp
fnstsw ax
test ah, 0x41
jne 0x48d086
mov eax, ecx
mov ecx, ebx
cdq
idiv dword [0x4dccd8]
push eax
call fcn.0043ba70
mov ecx, dword [0x4dccb8]
mov dword [esp + 0x34], eax
cmp eax, ecx
jge 0x48d114
inc dword [esp + 0x28]
jmp 0x48d114
lea ecx, [esp + 0x10]
call fcn.00402110
test al, al
jne 0x48d09f
mov eax, dword [esp + 0x16]
mov ecx, dword [esp + 0x12]
sub eax, ecx
jmp 0x48d0a1
xor eax, eax
movsx eax, ax
mov dword [esp + 0x1c], eax
fild dword [esp + 0x1c]
fld dword [esi + 0x14]
fadd st(0), st(0)
fcompp
fnstsw ax
test ah, 1
je 0x48d114
mov ecx, dword [esp + 0x7c]
mov eax, dword [ecx]
test eax, eax
je 0x48d0e9
mov ecx, dword [esp + 0x84]
mov edx, dword [eax]
cmp ecx, edx
je 0x48d0e9
test ecx, ecx
jne 0x48d10f
cmp dword [esp + 0x80], eax
jne 0x48d10f
mov al, byte [esp + 0x8c]
test al, al
jne 0x48d10f
mov edx, dword [esp + 0x3c]
mov eax, dword [edx]
test eax, eax
je 0x48d114
mov ecx, dword [esp + 0x44]
mov edx, dword [eax]
cmp ecx, edx
je 0x48d114
test ecx, ecx
jne 0x48d10f
cmp dword [esp + 0x40], eax
jne 0x48d10f
mov al, byte [esp + 0x4c]
test al, al
je 0x48d114
add dword [esp + 0x24], 2
mov al, byte [esp + 0x23]
test al, al
je 0x48d18f
movsx eax, word [esp + 0x10]
movsx ecx, word [esp + 0x12]
mov dword [esp + 0x1c], eax
mov esi, dword [esp + 0x16]
fild dword [esp + 0x1c]
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x38]
fild dword [esp + 0x1c]
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x10]
sub esp, 8
fstp dword [esp + 0x7c]
fstp qword [esp]
call fcn.00437ae0
fsubr dword [esp + 0x74]
mov eax, dword [esp + 0x78]
mov edx, dword [esp + 0x34]
sub esp, 8
lea ecx, [eax + 4]
fstp qword [esp]
push edx
call fcn.0043ff80
movsx ecx, si
push eax
mov eax, dword [esp + 0x2c]
movsx edx, di
push ecx
push edx
movsx ecx, bx
push eax
push ecx
push 0x4c6cc0
call fcn.00443600
add esp, 0x24
lea ecx, [esp + 0x3c]
call fcn.004403e0
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x3c]
mov esi, dword [esp + 0x30]
xor ebx, ebx
jmp 0x48cd3f
lea ecx, [esp + 0x7c]
call fcn.004403e0
mov eax, dword [esp + 0x84]
jmp 0x48cc9e
mov al, byte [0x4dcc38]
test al, al
je 0x48d259
movsx esi, word [esp + 0x14]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x30], esi
fild dword [esp + 0x30]
sub esp, 8
fstp qword [esp]
call fcn.00437ae0
sub esp, 8
fstp qword [esp]
push esi
push 0x4c6ca8
call fcn.00443600
fild dword [esp + 0x34]
fild dword [esp + 0x38]
add esp, 0x10
fmul qword [0x4dcca8]
fcompp
fnstsw ax
test ah, 1
je 0x48d222
mov eax, dword [esp + 0x24]
cmp eax, 2
mov eax, 0x4c6c9c
jg 0x48d227
mov eax, 0x4b3300
mov ecx, dword [esp + 0x28]
test ecx, ecx
jle 0x48d239
fild dword [esp + 0x24]
fidiv dword [esp + 0x28]
jmp 0x48d23f
fld dword [0x4a8668]
mov edx, dword [esp + 0x24]
push eax
push ecx
push edx
sub esp, 8
fstp qword [esp]
push 0x4c6c80
call fcn.00443600
add esp, 0x18
mov eax, dword [esp + 0x2c]
mov ecx, dword [0x4dcc58]
cmp eax, ecx
jge 0x48d29c
fild dword [esp + 0x24]
fild dword [esp + 0x28]
fmul qword [0x4dcc48]
fcompp
fnstsw ax
test ah, 1
je 0x48d29c
cmp dword [esp + 0x24], 2
jle 0x48d29c
mov al, 1
mov ecx, dword [esp + 0xa0]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [esp + 0xa0]
pop edi
pop esi
xor al, al
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret