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

Disassembly:
sub esp, 0x9c
mov eax, dword [0x4d8eb0]
xor eax, esp
push ebx
mov ebx, dword [esp + 0xac]
push ebp
mov ebp, dword [esp + 0xb4]
push esi
mov esi, dword [esp + 0xac]
push edi
mov edi, dword [esp + 0xb4]
mov dword [esp + 0xa8], eax
lea eax, [esp + 0x28]
push eax
push edi
push esi
mov dword [esp + 0x24], ebx
mov dword [esp + 0x3c], ebp
call fcn.0043eb40
mov eax, dword [esp + 0x34]
add esp, 0xc
cmp eax, 1
jne 0x43be7d
push 0
mov ecx, 0xa
mov edi, ebp
push ebx
rep movsd dword es:[edi], dword [esi]
call fcn.0043e9f0
add esp, 8
jmp 0x43c110
mov eax, dword [edi]
cmp eax, 1
jg 0x43beab
movzx edx, word [edi + 4]
lea ecx, [esp + 0x10]
push ecx
push edx
mov edi, ebx
mov ecx, esi
call fcn.0043bda0
movzx eax, word [esp + 0x18]
push eax
push ebp
call fcn.0043e9f0
add esp, 0x10
jmp 0x43c110
xor ecx, ecx
mov cx, word [edi + eax*2 + 2]
shr cx, 1
mov ax, cx
test ax, ax
mov ebp, 0xf
mov dword [esp + 0x24], ebp
mov dword [esp + 0x10], ecx
je 0x43bedd
lea ebx, [ebx]
shr ax, 1
dec ebp
test ax, ax
jne 0x43bed0
mov dword [esp + 0x24], ebp
mov ecx, dword [esi]
lea edx, [esp + 0x14]
push edx
push 0x21
lea eax, [esp + 0x6c]
push eax
push ebp
push ecx
lea edx, [esi + 4]
push edx
call fcn.0043ea20
mov edx, dword [edi]
lea eax, [esp + 0x54]
push eax
push 0x10
lea ecx, [esp + 0x60]
push ecx
push ebp
push edx
add edi, 4
push edi
call fcn.0043ea20
mov ecx, dword [esp + 0x44]
mov eax, dword [esi]
add esp, 0x30
cmp ecx, eax
jne 0x43bf28
mov word [esp + ecx*2 + 0x64], 0
inc ecx
mov dword [esp + 0x14], ecx
mov edx, dword [esp + 0x3c]
mov eax, ecx
sub eax, edx
mov dword [ebx], eax
lea edx, [esp + edx*2 + 0x3c]
xor ebp, ebp
mov bp, word [edx + 2]
mov dx, word [edx]
lea esi, [ebx + eax*2 + 4]
dec eax
lea edi, [esp + ecx*2 + 0x64]
mov dword [esp + 0x20], esi
mov word [esp + 0x34], dx
mov dword [esp + 0x38], ebp
js 0x43c0b8
inc eax
mov dword [esp + 0x1c], eax
jmp 0x43bf70
mov ebp, dword [esp + 0x38]
jmp 0x43bf70
mov ax, word [edi - 2]
movzx edx, word [edi - 4]
sub edi, 2
movzx ecx, ax
shl ecx, 0x10
or ecx, edx
cmp ax, bp
mov dword [esp + 0x2c], edi
jb 0x43bf93
mov eax, 0xffff
jmp 0x43bf9c
movzx esi, bp
mov eax, ecx
xor edx, edx
div esi
movzx esi, ax
movzx edx, bp
imul esi, edx
sub ecx, esi
test ecx, 0xffff0000
jne 0x43bfdc
movzx ebx, word [edi - 4]
movzx esi, word [esp + 0x34]
movzx ebp, ax
imul ebp, esi
mov esi, ecx
shl esi, 0x10
or esi, ebx
cmp ebp, esi
jbe 0x43bfd8
add ecx, edx
add eax, 0xffff
test ecx, 0xffff0000
je 0x43bfb3
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x3c]
lea edx, [ecx + ecx]
mov ebp, edx
mov edx, edi
sub edx, ebp
dec ecx
mov dword [esp + 0x10], 0
lea esi, [esp + 0x40]
js 0x43c02f
movzx ebx, ax
lea edi, [ecx + 1]
mov edi, edi
movzx ebp, word [esi]
movzx ecx, word [edx]
imul ebp, ebx
sub ecx, ebp
movzx ebp, word [esp + 0x10]
sub ecx, ebp
mov word [edx], cx
shr ecx, 0x10
neg ecx
add esi, 2
add edx, 2
dec edi
mov dword [esp + 0x10], ecx
jne 0x43c000
mov edi, dword [esp + 0x2c]
mov ebx, dword [esp + 0x18]
movzx ecx, word [edx]
movzx esi, word [esp + 0x10]
sub ecx, esi
mov word [edx], cx
mov edx, dword [esp + 0x20]
sub edx, 2
test ecx, 0xffff0000
mov dword [esp + 0x20], edx
mov word [edx], ax
je 0x43c0aa
dec eax
mov word [edx], ax
mov eax, dword [esp + 0x3c]
lea ecx, [eax + eax]
mov esi, ecx
mov ecx, edi
sub ecx, esi
dec eax
mov dword [esp + 0x10], 0
lea edx, [esp + 0x40]
js 0x43c0a2
lea esi, [eax + 1]
movzx eax, word [edx]
movzx ebp, word [esp + 0x10]
add eax, ebp
movzx ebp, word [ecx]
add eax, ebp
mov ebp, eax
and ebp, 0xffff0000
add edx, 2
neg ebp
sbb ebp, ebp
neg ebp
mov word [ecx], ax
add ecx, 2
dec esi
mov dword [esp + 0x10], ebp
jne 0x43c075
mov dx, word [esp + 0x10]
add word [ecx], dx
dec dword [esp + 0x1c]
jne 0x43bf62
mov ecx, dword [esp + 0x14]
mov eax, dword [ebx]
lea eax, [ebx + eax*2 + 4]
mov edi, edi
sub eax, 2
cmp word [eax], 0
jne 0x43c0d4
mov esi, dword [ebx]
dec esi
mov edx, esi
test edx, edx
mov dword [ebx], esi
jg 0x43c0c0
lea eax, [esp + ecx*2 + 0x64]
jmp 0x43c0e0
sub eax, 2
cmp word [eax], 0
jne 0x43c0ee
dec ecx
test ecx, ecx
jg 0x43c0e0
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x24]
push eax
push 0x10
add eax, 4
push eax
push edx
push ecx
lea eax, [esp + 0x78]
push eax
mov dword [esp + 0x2c], ecx
call fcn.0043e940
add esp, 0x18
mov ecx, dword [esp + 0xa8]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
xor eax, eax
call fcn.00460f23
add esp, 0x9c
ret