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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x10]
cmp eax, dword [ecx + 8]
jbe 0x6bec1b
sub esp, 0x90
mov eax, 0
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], eax
lea ecx, [0x926d00]
mov edx, dword [esp + 0x94]
mov dword [edx + 0xc], ecx
mov ecx, dword [0xc6f140]
test ecx, ecx
jne 0x6bebec
mov eax, dword [esp + 0xa4]
mov dword [edx + 0x10], eax
mov dword [esp], edx
call fcn.006bc9e0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x94]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov dword [esp], 8
lea eax, [0x8bf8e8]
mov dword [esp + 4], eax
call fcn.00426b30
test eax, eax
jne 0x6bebdf
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 0x10]
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x94]
mov dword [esp], ecx
mov edx, dword [esp + 0x98]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x9c]
mov dword [esp + 8], ebx
mov ebp, dword [esp + 0xa0]
mov dword [esp + 0xc], ebp
call fcn.006bef10
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.006c44a0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x58], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x54], ecx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x3c], edx
mov ebx, dword [esp + 0x94]
mov ebp, dword [ebx + 0x18]
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
lea esi, [0x6cbc20]
mov dword [esp + 0x80], esi
mov esi, dword [esp + 0xa4]
mov dword [esp + 0x84], esi
mov dword [esp + 0x88], ebx
mov dword [esp + 0x8c], ebp
mov ebp, edx
and edx, 0x1f
cmp edx, 0x11
jbe 0x6bebc5
cmp edx, 0x12
jne 0x6be8bb
lea edi, [edx - 0x12]
cmp edi, 1
ja 0x6be877
test ebp, 0x200
je 0x6be854
xor edx, edx
jmp 0x6be710
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov eax, dword [esp + 0x50]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x80]
lea edx, [esp + 0x80]
call eax
mov eax, dword [esp + 0x28]
lea edx, [eax + 1]
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x54]
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0x28], edx
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
call fcn.004a1c70
mov eax, dword [esp + 0x14]
movzx ecx, byte [esp + 0x18]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0xc]
test cl, cl
je 0x6be7e4
mov dword [esp + 0x50], ebx
mov dword [esp + 0x38], eax
mov dword [esp + 0x4c], edx
lea eax, [0x809b20]
mov dword [esp], eax
mov ecx, dword [esp + 0x28]
mov dword [esp + 4], ecx
call fcn.00407440
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
test eax, eax
je 0x6be7d9
movzx ebx, byte [0xc5cc40]
test bl, bl
je 0x6be78c
mov dword [0xc5cc44], eax
mov ebx, dword [0xc6f140]
test ebx, ebx
jne 0x6be7c6
mov dword [0xc5cc48], ecx
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], ecx
mov eax, dword [esp + 0x64]
test eax, eax
je 0x6be7bb
movzx ebx, byte [eax + 0xf]
mov ebp, ebx
and ebx, 0x1f
xchg ebp, eax
test al, 0x20
xchg ebp, eax
jne 0x6be6ca
or ebx, 0x80
jmp 0x6be6ca
xor ebx, ebx
xor ecx, ecx
xor eax, eax
jmp 0x6be6ca
lea edi, [0xc5cc48]
mov edx, eax
mov eax, ecx
call fcn.0044c860
mov eax, edx
jmp 0x6be78c
xor ebx, ebx
xor ecx, ecx
xor eax, eax
jmp 0x6be6ca
mov eax, dword [esp + 0x28]
test eax, eax
jne 0x6be847
mov eax, dword [esp + 0xa4]
mov eax, dword [eax + 0x18]
test eax, eax
jne 0x6be807
nop
call fcn.004272f0
add esp, 0x90
ret
lea ecx, [0x926c00]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0xc], eax
call fcn.006bd9d0
jmp 0x6be7fa
nop
call fcn.004272f0
add esp, 0x90
ret
test ebp, 0x80
je 0x6be873
mov edx, dword [eax]
test edx, edx
setne dl
xor edx, 1
test dl, dl
je 0x6be6c6
jmp 0x6be7ec
mov edx, eax
jmp 0x6be85e
mov dword [esp + 0x3c], edx
lea eax, [0x836c60]
mov dword [esp], eax
call fcn.00409d90
mov edi, dword [esp + 4]
mov dword [edi + 4], 0x13
mov eax, dword [0xc6f140]
test eax, eax
jne 0x6be8ab
lea eax, [0x8a0d63]
mov dword [edi], eax
jmp 0x6bec00
lea eax, [0x8a0d63]
call fcn.0044c860
jmp 0x6bec00
cmp edx, 0x15
je 0x6beaad
cmp edx, 0x17
jne 0x6bea2d
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
call fcn.004a0b90
mov eax, dword [esp + 0xc]
test eax, eax
je 0x6be7ec
xor eax, eax
jmp 0x6be961
mov dword [esp + 0x24], edx
mov dword [esp + 0x44], eax
mov dword [esp + 0x40], ecx
mov ebx, dword [esp + 0x54]
mov dword [esp], ebx
mov ebp, dword [esp + 0x58]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x3c]
mov dword [esp + 8], esi
mov edi, dword [esp + 0x2c]
mov dword [esp + 0xc], edi
call fcn.004a0480
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x40]
mov dword [esp], ebx
mov ebx, dword [esp + 0x44]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x24]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x80]
lea edx, [esp + 0x80]
call eax
mov eax, dword [esp + 0x2c]
inc eax
mov dword [esp + 0x2c], eax
mov ecx, dword [esp + 0x54]
mov dword [esp], ecx
mov edx, dword [esp + 0x58]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x3c]
mov dword [esp + 8], ebx
call fcn.004a0b90
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x2c]
cmp ecx, eax
jge 0x6bea20
lea eax, [0x809b20]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00407440
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
test ecx, ecx
je 0x6bea15
movzx edx, byte [0xc5cc40]
test dl, dl
je 0x6be9d0
mov dword [0xc5cc44], ecx
mov edx, dword [0xc6f140]
test edx, edx
jne 0x6bea08
mov dword [0xc5cc48], eax
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x5c]
test ecx, ecx
je 0x6be9fd
movzx edx, byte [ecx + 0xf]
mov ebx, edx
and edx, 0x1f
test bl, 0x20
jne 0x6be8ed
or edx, 0x80
jmp 0x6be8ed
xor edx, edx
xor eax, eax
xor ecx, ecx
jmp 0x6be8ed
lea edi, [0xc5cc48]
call fcn.0044c860
jmp 0x6be9d0
xor edx, edx
xor eax, eax
xor ecx, ecx
jmp 0x6be8ed
nop
call fcn.004272f0
add esp, 0x90
ret
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
lea eax, [0x895fc0]
mov dword [esp], eax
lea eax, [esp + 0x74]
mov dword [esp + 4], eax
call fcn.00407360
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x94]
mov dword [esp], eax
lea ecx, [0x8a5fa0]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x1b
lea ecx, [esp + 0x6c]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], 1
mov dword [esp + 0x14], 1
call fcn.006bcdf0
jmp 0x6be7ec
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
call fcn.004a0b90
mov eax, dword [esp + 0xc]
test eax, eax
je 0x6be7ec
mov eax, dword [esp + 0x54]
mov dword [esp], eax
mov ecx, dword [esp + 0x58]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x3c]
mov dword [esp + 8], edx
call fcn.004a0f00
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.006c4b30
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
test eax, eax
jle 0x6bebb8
mov dword [esp + 0x34], eax
xor edx, edx
jmp 0x6beb24
mov ebx, dword [esp + 0x48]
add ebx, 0xc
mov ecx, ebx
mov edx, eax
mov dword [esp + 0x48], ecx
mov dword [esp + 0x30], edx
mov eax, dword [ecx + 8]
mov dword [esp + 0x38], eax
mov ebx, dword [ecx + 4]
mov dword [esp + 0x4c], ebx
mov ebp, dword [ecx]
mov dword [esp + 0x50], ebp
mov esi, dword [esp + 0x54]
mov dword [esp], esi
mov edi, dword [esp + 0x58]
mov dword [esp + 4], edi
mov edi, dword [esp + 0x3c]
mov dword [esp + 8], edi
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], eax
call fcn.004a0d30
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x50]
mov dword [esp], ebx
mov ebx, dword [esp + 0x4c]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x38]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x80]
lea edx, [esp + 0x80]
call eax
mov eax, dword [esp + 0x30]
inc eax
mov ecx, dword [esp + 0x34]
cmp eax, ecx
jl 0x6beb19
nop
call fcn.004272f0
add esp, 0x90
ret
test ebp, 0x1f
je 0x6be7ec
cmp edx, 0x11
je 0x6be8cd
jmp 0x6bea2d
nop
call fcn.004272f0
add esp, 0x90
ret
lea edi, [edx + 0x10]
mov eax, dword [esp + 0xa4]
call fcn.0044c860
jmp 0x6be58d
mov eax, dword [esp + 0x3c]
mov dword [edi + 8], eax
lea eax, [0x81b700]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.00427650
ud2
call fcn.0044b100
jmp fcn.006be530