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

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x12
push 0
push 0
dec ecx
jne 0x4be064
push ebx
push esi
push edi
mov ebx, eax
xor eax, eax
push ebp
push 0x4be703
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebx + 0x6c]
call fcn.004bced0
cmp byte [ebx + 0x60], 0
jne 0x4be0ac
mov eax, dword [ebx + 0x6c]
call fcn.0041c6e4
test eax, eax
jne 0x4be0a3
mov dl, 2
mov eax, ebx
call fcn.004bf288
jmp 0x4be0ac
mov dl, 1
mov eax, ebx
call fcn.004bf288
mov eax, dword [ebx + 0x6c]
call fcn.0041c6e4
mov esi, eax
sub esi, 1
jno 0x4be0c0
call fcn.004045c4
test esi, esi
jl 0x4be192
inc esi
xor edi, edi
mov edx, edi
mov eax, dword [ebx + 0x6c]
call fcn.004bcfe8
mov edx, dword [eax + 0x10]
lea eax, [ebp - 8]
call fcn.0040568c
cmp dword [ebp - 8], 0
je 0x4be18a
cmp byte [ebx + 0x60], 1
jne 0x4be14e
push 0
mov eax, 0x4be71c
mov dword [ebp - 0x28], eax
mov eax, 0x4be72c
mov dword [ebp - 0x24], eax
mov eax, 0x4be73c
mov dword [ebp - 0x20], eax
mov eax, 0x4be74c
mov dword [ebp - 0x1c], eax
mov eax, 0x4be75c
mov dword [ebp - 0x18], eax
mov eax, 0x4be778
mov dword [ebp - 0x14], eax
lea edx, [ebp - 0x28]
mov ecx, 5
mov eax, dword [ebp - 8]
call fcn.0048b0a0
inc eax
jne 0x4be18a
mov edx, edi
mov eax, dword [ebx + 0x6c]
call fcn.004bcfe8
add eax, 0x10
mov edx, 0x4be74c
call fcn.00405648
jmp 0x4be18a
push 0
mov eax, 0x4be78c
mov dword [ebp - 0x30], eax
mov eax, 0x4be798
mov dword [ebp - 0x2c], eax
lea edx, [ebp - 0x30]
mov ecx, 1
mov eax, dword [ebp - 8]
call fcn.0048b0a0
inc eax
jne 0x4be18a
mov edx, edi
mov eax, dword [ebx + 0x6c]
call fcn.004bcfe8
add eax, 0x10
mov edx, 0x4be78c
call fcn.00405648
inc edi
dec esi
jne 0x4be0cb
mov eax, dword [ebx + 0x6c]
call fcn.0041c6e4
test eax, eax
jle 0x4be1d9
cmp dword [ebx + 0x48], 0
je 0x4be1d9
push 0
mov eax, 0x4be71c
mov dword [ebp - 0x3c], eax
mov eax, 0x4be72c
mov dword [ebp - 0x38], eax
mov eax, 0x4be73c
mov dword [ebp - 0x34], eax
lea edx, [ebp - 0x3c]
mov ecx, 2
mov eax, dword [ebx + 0x48]
call fcn.0048b0a0
inc eax
jne 0x4be1d9
lea eax, [ebx + 0x48]
call fcn.004055f4
cmp byte [ebx + 0x60], 1
jne 0x4be26e
mov eax, dword [ebx + 0x70]
call fcn.004bd9ac
lea edx, [ebp - 0xc]
mov eax, dword [0x4b7878]
call fcn.004b7a54
or ecx, 0xffffffff
mov edx, dword [ebp - 0xc]
mov eax, dword [ebx + 0x70]
call fcn.004bdc4c
mov eax, dword [ebx + 0x44]
call fcn.004058c4
test eax, eax
jne 0x4be261
mov eax, dword [ebx + 0x6c]
cmp dword [eax + 0x2c], 1
jle 0x4be23f
cmp dword [eax + 0x20], 0
jle 0x4be230
lea eax, [ebx + 0x44]
mov edx, 0x4be7a4
call fcn.00405648
jmp 0x4be261
lea eax, [ebx + 0x44]
mov edx, 0x4be7bc
call fcn.00405648
jmp 0x4be261
cmp dword [eax + 0x20], 0
jle 0x4be254
lea eax, [ebx + 0x44]
mov edx, 0x4be7a4
call fcn.00405648
jmp 0x4be261
lea eax, [ebx + 0x44]
mov edx, 0x4be7dc
call fcn.00405648
mov eax, dword [ebx + 0x6c]
mov eax, dword [eax + 0x24]
mov edx, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
lea ecx, [ebp - 4]
lea edx, [ebp - 0xd]
mov eax, ebx
call fcn.004bf2e0
mov edx, dword [ebx + 0x68]
mov eax, dword [ebx + 0xc0]
mov ecx, dword [eax]
call dword [ecx + 8]
cmp byte [ebx + 0x60], 1
jne 0x4be2a5
mov eax, dword [ebx + 0x6c]
call fcn.0041c6e4
dec eax
jne 0x4be2a5
mov eax, ebx
call fcn.004bdfa8
test al, al
jne 0x4be2a9
xor eax, eax
jmp 0x4be2ab
mov al, 1
mov byte [ebx + 0xc6], al
mov esi, dword [ebx + 0xc0]
push 1
push 0
push 0
lea eax, [ebp - 0x40]
push eax
mov ecx, dword [ebp - 4]
movzx edx, byte [ebp - 0xd]
mov eax, dword [ebx + 0x64]
call fcn.004a5c34
mov ecx, dword [ebp - 0x40]
mov edx, 0x4be7f0
mov eax, esi
call fcn.004a2448
mov eax, dword [ebp - 4]
push eax
push 0
push 0
lea eax, [ebp - 0x44]
push eax
movzx ecx, byte [ebp - 0xd]
xor edx, edx
mov eax, dword [ebx + 0x90]
call fcn.004a63b0
mov ecx, dword [ebp - 0x44]
mov edx, 0x4be800
mov eax, esi
call fcn.004a2448
push 0
push 0
push 0
lea eax, [ebp - 0x48]
push eax
mov ecx, dword [ebp - 4]
movzx edx, byte [ebp - 0xd]
mov eax, dword [ebx + 0x98]
call fcn.004a5c34
mov ecx, dword [ebp - 0x48]
mov edx, 0x4be810
mov eax, esi
call fcn.004a2448
push 0
push 0
push 0
lea eax, [ebp - 0x4c]
push eax
mov ecx, dword [ebp - 4]
movzx edx, byte [ebp - 0xd]
mov eax, dword [ebx + 0x40]
call fcn.004a5c34
mov ecx, dword [ebp - 0x4c]
mov edx, 0x4be81c
mov eax, esi
call fcn.004a2448
cmp byte [ebx + 0xc5], 0
jne 0x4be377
xor ecx, ecx
mov edx, 0x4be828
mov eax, esi
call fcn.004a2448
jmp 0x4be39f
push 0
push 0
push 0
lea eax, [ebp - 0x50]
push eax
mov ecx, dword [ebp - 4]
movzx edx, byte [ebp - 0xd]
mov eax, dword [ebx + 0x34]
call fcn.004a5c34
mov ecx, dword [ebp - 0x50]
mov edx, 0x4be828
mov eax, esi
call fcn.004a2448
lea edx, [ebp - 0x54]
mov eax, dword [ebx + 0x78]
call fcn.0041cfbc
mov ecx, dword [ebp - 0x54]
mov edx, 0x4be834
mov eax, esi
call fcn.004a2448
cmp byte [ebx + 0x60], 1
jne 0x4be4d4
cmp byte [ebx + 0xc6], 0
je 0x4be40c
mov ecx, 0x4be848
mov edx, 0x4be854
mov eax, esi
call fcn.004a2448
xor ecx, ecx
mov edx, 0x4be86c
mov eax, esi
call fcn.004a2448
xor ecx, ecx
mov edx, 0x4be884
mov eax, esi
call fcn.004a2448
xor ecx, ecx
mov edx, 0x4be8a8
mov eax, esi
call fcn.004a2448
jmp 0x4be4f2
mov ecx, dword [ebx + 0x44]
mov edx, 0x4be86c
mov eax, esi
call fcn.004a2448
cmp dword [ebx + 0x3c], 0
jbe 0x4be46b
lea ecx, [ebp - 0x5c]
mov edx, 0x4be86c
mov eax, esi
call fcn.004a2234
push dword [ebp - 0x5c]
push 0x4be8c4
push 0x4be8d0
push 0x4be8dc
push 0x4be8e8
push dword [ebx + 0x3c]
push 0x4be8fc
lea eax, [ebp - 0x58]
mov edx, 7
call fcn.00405988
mov ecx, dword [ebp - 0x58]
mov edx, 0x4be86c
mov eax, esi
call fcn.004a2448
mov eax, dword [ebx + 0x6c]
call fcn.0041c6e4
test eax, eax
jle 0x4be4b2
lea ecx, [ebp - 0x64]
mov edx, 0x4be86c
mov eax, esi
call fcn.004a2234
push dword [ebp - 0x64]
push 0x4be908
push dword [ebp - 0xc]
push 0x4be8fc
lea eax, [ebp - 0x60]
mov edx, 4
call fcn.00405988
mov ecx, dword [ebp - 0x60]
mov edx, 0x4be86c
mov eax, esi
call fcn.004a2448
mov ecx, 0x4be848
mov edx, 0x4be854
mov eax, esi
call fcn.004a2448
mov ecx, dword [ebx + 0x48]
mov edx, 0x4be884
mov eax, esi
call fcn.004a2448
jmp 0x4be4f2
mov ecx, dword [ebx + 0x48]
mov edx, 0x4be884
mov eax, esi
call fcn.004a2448
mov ecx, dword [ebx + 0x44]
mov edx, 0x4be86c
mov eax, esi
call fcn.004a2448
lea edx, [ebp - 0x68]
mov eax, dword [ebx + 0xa8]
call fcn.004a2d20
mov ecx, dword [ebp - 0x68]
mov edx, 0x4be920
mov eax, esi
call fcn.004a2448
push 0
push 0
push 0
lea eax, [ebp - 0x6c]
push eax
mov ecx, dword [ebp - 4]
movzx edx, byte [ebp - 0xd]
mov eax, dword [ebx + 0xa4]
call fcn.004a5c34
mov ecx, dword [ebp - 0x6c]
mov edx, 0x4be930
mov eax, esi
call fcn.004a2448
mov eax, dword [ebp - 4]
push eax
push 0
push 0
lea eax, [ebp - 0x70]
push eax
movzx ecx, byte [ebp - 0xd]
xor edx, edx
mov eax, dword [ebx + 0x88]
call fcn.004a63b0
mov ecx, dword [ebp - 0x70]
mov edx, 0x4be944
mov eax, esi
call fcn.004a2448
push 0
push 0
push 0
lea eax, [ebp - 0x74]
push eax
mov ecx, dword [ebp - 4]
movzx edx, byte [ebp - 0xd]
mov eax, dword [ebx + 0x94]
call fcn.004a5298
mov ecx, dword [ebp - 0x74]
mov edx, 0x4be95c
mov eax, esi
call fcn.004a2448
mov ecx, dword [ebx + 0x9c]
mov edx, 0x4be980
mov eax, esi
call fcn.004a2448
mov eax, ebx
call fcn.004bf220
test al, al
je 0x4be5d5
call fcn.0040ca0c
add esp, 0xfffffff8
fstp qword [esp]
wait
lea edx, [ebp - 0x78]
xor eax, eax
call fcn.0048ccb8
mov ecx, dword [ebp - 0x78]
mov edx, 0x4be994
mov eax, esi
call fcn.004a2448
jmp 0x4be5f4
push dword [ebx + 0x54]
push dword [ebx + 0x50]
lea edx, [ebp - 0x7c]
xor eax, eax
call fcn.0048ccb8
mov ecx, dword [ebp - 0x7c]
mov edx, 0x4be994
mov eax, esi
call fcn.004a2448
cmp byte [ebx + 0x8c], 2
je 0x4be627
lea edx, [ebp - 0x80]
movzx eax, byte [ebx + 0x8c]
add eax, 1
jno 0x4be611
call fcn.004045c4
call fcn.0040a184
mov ecx, dword [ebp - 0x80]
mov edx, 0x4be9a4
mov eax, esi
call fcn.004a2448
jmp 0x4be64c
mov edx, 0x4be9a4
mov eax, esi
call fcn.004a23b8
test eax, eax
jl 0x4be64c
mov edx, 0x4be9a4
mov eax, esi
call fcn.004a23b8
mov edx, eax
mov eax, esi
mov ecx, dword [eax]
call dword [ecx + 0x48]
mov eax, dword [ebx + 0x5c]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jle 0x4be662
mov edx, dword [ebx + 0x5c]
mov eax, esi
mov ecx, dword [eax]
call dword [ecx + 0x40]
lea edx, [ebp - 0x84]
mov eax, ebx
call fcn.004bf380
cmp dword [ebp - 0x84], 0
jne 0x4be6b9
lea ecx, [ebp - 0x88]
mov edx, 0x4be9b8
mov eax, esi
call fcn.004a2234
cmp dword [ebp - 0x88], 0
je 0x4be6d8
lea ecx, [ebp - 0x8c]
mov edx, 0x4be9b8
mov eax, esi
call fcn.004a2234
mov ecx, dword [ebp - 0x8c]
mov edx, 0x4be9cc
mov eax, esi
call fcn.004a2448
jmp 0x4be6d8
lea edx, [ebp - 0x90]
mov eax, ebx
call fcn.004bf380
mov ecx, dword [ebp - 0x90]
mov edx, 0x4be9cc
mov eax, esi
call fcn.004a2448
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4be70a
lea eax, [ebp - 0x90]
mov edx, 0x15
call fcn.00405618
lea eax, [ebp - 0xc]
mov edx, 3
call fcn.00405618
ret