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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov ecx, dword [ebp + 8]
sub esp, 0x3c
push ebx
push esi
push edi
call fcn.0043c35c
test eax, eax
jne 0x43c353
xorps xmm0, xmm0
mov dword [esp + 0x38], eax
mov byte [esp + 0x18], al
mov edi, eax
mov ebx, eax
movlpd qword [esp + 0x30], xmm0
mov eax, dword [ebp + 8]
mov edx, dword [esp + 0x34]
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0x30]
lea esi, [eax + 0x34]
movlpd qword [esp + 0x40], xmm0
mov dword [esp + 0x3c], esi
mov ecx, esi
mov dword [esp + 0x24], edx
mov edx, dword [ebp + 0x18]
mov dword [esp + 0x14], ecx
test edx, edx
je 0x43c135
mov eax, dword [esp + 0x44]
mov ecx, esi
mov dword [esp + 0x14], ecx
cmp eax, dword [edx + 4]
ja 0x43c346
jb 0x43c132
mov eax, dword [esp + 0x40]
cmp eax, dword [edx]
jae 0x43c346
mov eax, dword [ebp + 8]
xor edx, edx
mov esi, edx
mov dword [esp + 0x1c], esi
cmp byte [esp + 0x18], dl
jne 0x43c181
mov eax, dword [eax + 0x38]
mov edx, dword [ecx]
sub eax, edi
mov ecx, dword [ebp + 0xc]
add edx, edi
mov dword [esp + 0x18], eax
lea eax, [esp + 0x18]
push eax
call fcn.0043cf21
add edi, dword [esp + 0x18]
mov esi, eax
mov eax, dword [ebp + 8]
push 1
pop edx
mov dword [esp + 0x1c], esi
cmp edi, dword [eax + 0x38]
setne cl
test esi, esi
movzx ecx, cl
cmovne ecx, edx
xor edx, edx
mov dword [esp + 0x18], ecx
test edi, edi
je 0x43c351
mov cl, dl
mov byte [esp + 0x13], cl
cmp edi, ebx
je 0x43c231
mov edx, dword [eax + 0x78]
mov eax, edi
sub eax, ebx
push eax
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x18]
mov ecx, dword [edx]
mov eax, dword [eax]
add eax, ebx
push eax
push edx
call dword [ecx + 0x10]
mov edx, eax
mov dword [esp + 0x2c], edx
test edx, edx
je 0x43c22d
lea ecx, [edx + ebx]
mov dword [esp + 0x30], ecx
cmp edx, dword [esp + 0x20]
ja 0x43c1d4
mov ebx, ecx
cmp edi, ecx
je 0x43c22d
mov eax, dword [ebp + 8]
jmp 0x43c197
test esi, esi
jne 0x43c229
mov esi, dword [ebp + 8]
cmp byte [esi + 0x44], 0
je 0x43c220
mov eax, dword [esi + 0x38]
sub eax, ebx
cmp edx, eax
ja 0x43c220
cmp byte [esp + 0x18], 0
je 0x43c220
mov eax, dword [esp + 0x14]
xor edx, edx
mov eax, dword [eax]
mov byte [eax + edi], dl
inc edi
cmp edi, ecx
jne 0x43c1f9
mov ecx, dword [esi + 0x78]
add eax, ebx
mov esi, dword [esp + 0x2c]
push esi
push eax
mov edx, dword [ecx]
push ecx
call dword [edx + 0x10]
cmp esi, eax
jne 0x43c34a
mov ebx, dword [esp + 0x30]
jmp 0x43c24a
xor eax, eax
mov esi, ebx
lea ecx, [eax + 1]
jmp 0x43c23a
mov esi, ebx
jmp 0x43c259
mov cl, byte [esp + 0x13]
cmp dword [esp + 0x1c], 0
mov esi, ebx
jne 0x43c259
mov eax, ebx
and eax, 0xffffffc0
cmp byte [esp + 0x18], 0
je 0x43c257
test cl, cl
jne 0x43c24e
mov esi, edi
jmp 0x43c259
mov ecx, dword [ebp + 8]
cmp byte [ecx + 0x44], 0
je 0x43c259
mov esi, eax
mov eax, dword [ebp + 0x18]
mov edx, esi
mov dword [esp + 0x20], edx
test eax, eax
je 0x43c285
mov ecx, dword [eax]
sub ecx, dword [esp + 0x40]
mov eax, dword [eax + 4]
sbb eax, dword [esp + 0x44]
cmp dword [esp + 0x38], eax
jb 0x43c285
ja 0x43c27f
cmp esi, ecx
jbe 0x43c285
mov edx, ecx
mov dword [esp + 0x20], ecx
mov eax, dword [esp + 0x14]
mov ecx, dword [ebp + 0x10]
push edx
mov edx, dword [eax]
call fcn.0043cf6b
test eax, eax
jne 0x43c353
mov eax, dword [esp + 0x20]
add dword [esp + 0x40], eax
push 0
pop eax
adc dword [esp + 0x44], eax
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x43c353
cmp byte [esp + 0x18], al
je 0x43c2ce
cmp edi, esi
je 0x43c346
mov eax, dword [ebp + 8]
cmp byte [eax + 0x44], 0
je 0x43c341
test esi, esi
je 0x43c34a
cmp ebx, esi
jb 0x43c34a
sub ebx, esi
sub edi, esi
je 0x43c2f0
mov eax, dword [esp + 0x14]
push edi
mov ecx, dword [eax]
lea eax, [ecx + esi]
push eax
push ecx
call fcn.0041bf60
add esp, 0xc
mov edx, dword [ebp + 0x1c]
test edx, edx
je 0x43c331
mov ecx, dword [esp + 0x40]
sub ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x44]
sbb eax, dword [esp + 0x28]
jne 0x43c311
cmp ecx, 0x400000
jb 0x43c331
mov eax, dword [esp + 0x40]
lea ecx, [esp + 0x40]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x44]
push ecx
mov dword [esp + 0x2c], eax
mov eax, dword [edx]
push ecx
push edx
call dword [eax + 0xc]
test eax, eax
jne 0x43c353
mov eax, dword [ebp + 8]
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x3c]
jmp 0x43c106
xor eax, eax
inc eax
jmp 0x43c353
xor eax, eax
jmp 0x43c353
mov eax, 0x80004005
jmp 0x43c353
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18