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

Disassembly:
push ebx
push esi
push edi
push ebp
add esp, 0xffffff04
mov esi, eax
lea edi, [esp + 0x80]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [0x58fac4]
call fcn.0049e748
mov eax, dword [edi]
cmp byte [eax + 0x1c], 0
je 0x4befe8
mov eax, dword [edi]
mov eax, dword [eax + 0x18]
call fcn.0049caa8
push 0x40c77000
push 0
call fcn.0049e774
xor esi, esi
mov eax, dword [edi]
mov edx, esi
call fcn.004ad5c0
mov ebx, eax
cmp byte [ebx + 4], 0
je 0x4bf0be
cmp byte [ebx + 5], 0
jne 0x4bf0be
mov eax, dword [ebx + 8]
call fcn.004a7c3c
test al, al
je 0x4bf0be
push dword [ebx + 0x14]
push dword [ebx + 0x10]
push dword [ebx + 0x1c]
push dword [ebx + 0x18]
push dword [ebx + 0x3c]
push dword [ebx + 0x38]
push dword [ebx + 0x44]
push dword [ebx + 0x40]
fild dword [esp + 0xa0]
add esp, 0xfffffff8
fstp qword [esp]
wait
fild dword [esp + 0xac]
add esp, 0xfffffff8
fstp qword [esp]
wait
mov eax, dword [esp + 0xb8]
sub eax, dword [esp + 0xb0]
mov dword [esp + 0x120], eax
fild dword [esp + 0x120]
add esp, 0xfffffff8
fstp qword [esp]
wait
mov eax, dword [esp + 0xc4]
sub eax, dword [esp + 0xbc]
mov dword [esp + 0x12c], eax
fild dword [esp + 0x12c]
add esp, 0xfffffff8
fstp qword [esp]
wait
mov eax, dword [ebx + 0x48]
push eax
push dword [ebx + 0x54]
push dword [ebx + 0x50]
mov eax, dword [ebx + 8]
call fcn.004a7d28
movzx ecx, byte [ebx + 0x21]
movzx edx, byte [ebx + 0x20]
call fcn.004a78c8
inc esi
cmp esi, 8
jne 0x4beff6
xor esi, esi
xor ebx, ebx
call fcn.004beaf4
fstp qword [esp]
wait
jmp 0x4bf5bc
mov eax, dword [edi]
cmp esi, dword [eax + 0x88]
jge 0x4bf0f4
lea ecx, [esp + 0x90]
mov eax, dword [edi]
mov edx, esi
call fcn.004ad610
mov eax, dword [edi]
cmp ebx, dword [eax + 0x68]
jge 0x4bf106
mov eax, dword [edi]
mov edx, ebx
call fcn.004ad5e8
mov ebp, eax
mov eax, dword [edi]
cmp ebx, dword [eax + 0x68]
jge 0x4bf11c
cmp byte [ebp + 0x108], 0
je 0x4bf11c
inc ebx
jmp 0x4bf5bc
mov eax, dword [edi]
cmp ebx, dword [eax + 0x68]
jge 0x4bf132
cmp byte [ebp + 0xc8], 0
jne 0x4bf132
inc ebx
jmp 0x4bf5bc
mov eax, dword [edi]
cmp esi, dword [eax + 0x88]
jge 0x4bf14c
cmp byte [esp + 0xe8], 0
jne 0x4bf14c
inc esi
jmp 0x4bf5bc
mov eax, dword [edi]
cmp ebx, dword [eax + 0x68]
jge 0x4bf163
fld qword [esp]
fcomp qword [ebp + 0x48]
wait
fnstsw ax
sahf
jb 0x4bf1e3
mov eax, dword [edi]
cmp esi, dword [eax + 0x88]
jge 0x4bf17d
fld qword [esp]
fcomp qword [esp + 0xb8]
wait
fnstsw ax
sahf
jb 0x4bf1e3
fld qword [esp]
fcomp dword [0x4bf764]
wait
fnstsw ax
sahf
jbe 0x4bf1e3
fld dword [0x4bf768]
fcomp qword [esp]
wait
fnstsw ax
sahf
jae 0x4bf1ab
xor eax, eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], 0x40c57c00
jmp 0x4bf1b3
fld qword [esp]
fstp qword [esp + 0x28]
wait
push dword [esp + 0x2c]
push dword [esp + 0x2c]
call fcn.0049e774
push dword [esp + 4]
push dword [esp + 4]
call fcn.004bebec
push dword [esp + 4]
push dword [esp + 4]
call fcn.004beb60
fstp qword [esp]
wait
jmp 0x4bf5bc
mov eax, dword [edi]
cmp ebx, dword [eax + 0x68]
jge 0x4bf20c
mov eax, dword [edi]
cmp esi, dword [eax + 0x88]
jge 0x4bf498
fld qword [esp + 0xb8]
fcomp qword [ebp + 0x48]
wait
fnstsw ax
sahf
jbe 0x4bf498
fld dword [0x4bf768]
fcomp qword [esp + 0xb8]
wait
fnstsw ax
sahf
jae 0x4bf22f
xor eax, eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], 0x40c57c00
jmp 0x4bf23b
fld qword [esp + 0xb8]
fstp qword [esp + 0x30]
wait
push dword [esp + 0x34]
push dword [esp + 0x34]
call fcn.0049e774
fild dword [esp + 0xac]
fmul qword [esp + 0xc8]
fadd qword [esp + 0x90]
fcomp qword [esp + 0x90]
wait
fnstsw ax
sahf
jbe 0x4bf278
fld qword [esp + 0x90]
fstp xword [esp + 0x38]
wait
jmp 0x4bf292
fild dword [esp + 0xac]
fmul qword [esp + 0xc8]
fadd qword [esp + 0x90]
fstp xword [esp + 0x38]
wait
fld xword [esp + 0x38]
fstp qword [esp + 8]
wait
fild dword [esp + 0xac]
fmul qword [esp + 0xc8]
fadd qword [esp + 0x90]
fcomp qword [esp + 0x90]
wait
fnstsw ax
sahf
jae 0x4bf2cb
fld qword [esp + 0x90]
fstp xword [esp + 0x48]
wait
jmp 0x4bf2e5
fild dword [esp + 0xac]
fmul qword [esp + 0xc8]
fadd qword [esp + 0x90]
fstp xword [esp + 0x48]
wait
fld xword [esp + 0x48]
fstp qword [esp + 0x10]
wait
fild dword [esp + 0xb0]
fmul qword [esp + 0xd0]
fadd qword [esp + 0x98]
fcomp qword [esp + 0x98]
wait
fnstsw ax
sahf
jbe 0x4bf31e
fld qword [esp + 0x98]
fstp xword [esp + 0x58]
wait
jmp 0x4bf338
fild dword [esp + 0xb0]
fmul qword [esp + 0xd0]
fadd qword [esp + 0x98]
fstp xword [esp + 0x58]
wait
fld xword [esp + 0x58]
fstp qword [esp + 0x18]
wait
fild dword [esp + 0xb0]
fmul qword [esp + 0xd0]
fadd qword [esp + 0x98]
fcomp qword [esp + 0x98]
wait
fnstsw ax
sahf
jae 0x4bf371
fld qword [esp + 0x98]
fstp xword [esp + 0x68]
wait
jmp 0x4bf38b
fild dword [esp + 0xb0]
fmul qword [esp + 0xd0]
fadd qword [esp + 0x98]
fstp xword [esp + 0x68]
wait
fld xword [esp + 0x68]
fstp qword [esp + 0x20]
wait
fild dword [esp + 0x88]
fcomp qword [esp + 8]
wait
fnstsw ax
sahf
jb 0x4bf492
fild dword [esp + 0x8c]
fcomp qword [esp + 0x18]
wait
fnstsw ax
sahf
jb 0x4bf492
fild dword [esp + 0x80]
fcomp qword [esp + 0x10]
wait
fnstsw ax
sahf
ja 0x4bf492
fild dword [esp + 0x84]
fcomp qword [esp + 0x20]
wait
fnstsw ax
sahf
ja 0x4bf492
mov eax, dword [esp + 0xa0]
call fcn.004a7c3c
test al, al
je 0x4bf492
fild dword [esp + 0xa4]
add esp, 0xfffffff8
fstp qword [esp]
wait
fild dword [esp + 0xb0]
add esp, 0xfffffff8
fstp qword [esp]
wait
fild dword [esp + 0xbc]
add esp, 0xfffffff8
fstp qword [esp]
wait
fild dword [esp + 0xc8]
add esp, 0xfffffff8
fstp qword [esp]
wait
push dword [esp + 0xb4]
push dword [esp + 0xb4]
push dword [esp + 0xc4]
push dword [esp + 0xc4]
push dword [esp + 0xfc]
push dword [esp + 0xfc]
push dword [esp + 0x10c]
push dword [esp + 0x10c]
push dword [esp + 0x124]
push dword [esp + 0x124]
mov eax, dword [esp + 0xe8]
call fcn.004a7d28
mov edx, dword [esp + 0x120]
call fcn.004a7804
inc esi
jmp 0x4bf5bc
fld dword [0x4bf768]
fcomp qword [ebp + 0x48]
wait
fnstsw ax
sahf
jae 0x4bf4b7
xor eax, eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], 0x40c57c00
jmp 0x4bf4bf
fld qword [ebp + 0x48]
fstp qword [esp + 0x78]
wait
push dword [esp + 0x7c]
push dword [esp + 0x7c]
call fcn.0049e774
mov eax, dword [ebp + 0xd0]
mov edx, 8
call fcn.004b037c
test al, al
je 0x4bf4f5
push 0
mov ecx, 8
mov edx, ebp
mov eax, ebp
call fcn.004b20b0
jmp 0x4bf5bb
mov eax, dword [ebp + 8]
call fcn.004a636c
test al, al
je 0x4bf5bb
fld qword [ebp + 0x20]
fcomp dword [0x4bf76c]
wait
fnstsw ax
sahf
jne 0x4bf576
fld qword [ebp + 0x28]
fcomp dword [0x4bf76c]
wait
fnstsw ax
sahf
jne 0x4bf576
fld qword [ebp + 0x30]
fcomp dword [0x4bf770]
wait
fnstsw ax
sahf
jne 0x4bf576
cmp dword [ebp + 0x40], 0xffffff
jne 0x4bf576
fld qword [ebp + 0x38]
fcomp dword [0x4bf76c]
wait
fnstsw ax
sahf
jne 0x4bf576
push dword [ebp + 0x54]
push dword [ebp + 0x50]
push dword [ebp + 0x5c]
push dword [ebp + 0x58]
fld qword [ebp + 0x10]
add esp, 0xfffffff4
fstp xword [esp]
wait
call fcn.004238e8
push eax
mov eax, dword [ebp + 8]
call fcn.004a6458
pop edx
call fcn.004a5a58
jmp 0x4bf5bb
push dword [ebp + 0x54]
push dword [ebp + 0x50]
push dword [ebp + 0x5c]
push dword [ebp + 0x58]
push dword [ebp + 0x24]
push dword [ebp + 0x20]
push dword [ebp + 0x2c]
push dword [ebp + 0x28]
push dword [ebp + 0x34]
push dword [ebp + 0x30]
push dword [ebp + 0x3c]
push dword [ebp + 0x38]
fld qword [ebp + 0x10]
add esp, 0xfffffff4
fstp xword [esp]
wait
call fcn.004238e8
push eax
mov eax, dword [ebp + 8]
call fcn.004a6458
mov ecx, dword [ebp + 0x40]
pop edx
call fcn.004a5aa4
inc ebx
mov eax, dword [edi]
cmp esi, dword [eax + 0x88]
jl 0x4bf0da
mov eax, dword [edi]
cmp ebx, dword [eax + 0x68]
jl 0x4bf0da
fld qword [esp]
fcomp dword [0x4bf764]
wait
fnstsw ax
sahf
ja 0x4bf0da
push 0xc0c77000
push 0
call fcn.0049e774
xor esi, esi
mov eax, dword [edi]
mov edx, esi
call fcn.004ad5c0
mov ebx, eax
cmp byte [ebx + 4], 0
je 0x4bf6c7
cmp byte [ebx + 5], 0
je 0x4bf6c7
mov eax, dword [ebx + 8]
call fcn.004a7c3c
test al, al
je 0x4bf6c7
push dword [ebx + 0x14]
push dword [ebx + 0x10]
push dword [ebx + 0x1c]
push dword [ebx + 0x18]
push dword [ebx + 0x3c]
push dword [ebx + 0x38]
push dword [ebx + 0x44]
push dword [ebx + 0x40]
mov ebp, dword [esp + 0xa0]
mov dword [esp + 0x110], ebp
fild dword [esp + 0x110]
add esp, 0xfffffff8
fstp qword [esp]
wait
fild dword [esp + 0xac]
add esp, 0xfffffff8
fstp qword [esp]
wait
mov eax, dword [esp + 0xb8]
sub eax, ebp
mov dword [esp + 0x124], eax
fild dword [esp + 0x124]
add esp, 0xfffffff8
fstp qword [esp]
wait
mov eax, dword [esp + 0xc4]
sub eax, dword [esp + 0xbc]
mov dword [esp + 0x130], eax
fild dword [esp + 0x130]
add esp, 0xfffffff8
fstp qword [esp]
wait
mov eax, dword [ebx + 0x48]
push eax
push dword [ebx + 0x54]
push dword [ebx + 0x50]
mov eax, dword [ebx + 8]
call fcn.004a7d28
movzx ecx, byte [ebx + 0x21]
movzx edx, byte [ebx + 0x20]
call fcn.004a78c8
inc esi
cmp esi, 8
jne 0x4bf5f6
push 0xc0c96400
push 0
call fcn.0049e774
mov eax, dword [0x58f838]
mov eax, dword [eax]
call fcn.004a636c
test al, al
je 0x4bf758
call fcn.0049c394
mov dword [esp + 0xf0], eax
fild dword [esp + 0xf0]
add esp, 0xfffffff8
fstp qword [esp]
wait
call fcn.0049c3d8
mov dword [esp + 0xfc], eax
fild dword [esp + 0xfc]
add esp, 0xfffffff8
fstp qword [esp]
wait
push 0x3ff00000
push 0
push 0x3ff00000
push 0
push 0
push 0
push 0x3ff00000
push 0
mov eax, dword [0x58f838]
mov eax, dword [eax]
call fcn.004a6458
mov edx, dword [0x58f468]
mov edx, dword [edx]
mov ecx, 0xffffff
call fcn.004a5aa4
add esp, 0xfc
pop ebp
pop edi
pop esi
pop ebx
ret