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

Disassembly:
sub esp, 0x20
push ebx
push ebp
mov ebp, dword [esp + 0x34]
push esi
xor esi, esi
push edi
cmp ebp, esi
mov dword [esp + 0x14], esi
jne 0x43f73f
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
mov edi, dword [esp + 0x38]
mov ebx, dword [esp + 0x34]
push edi
push ebx
call fcn.00447120
add esp, 8
test eax, eax
je 0x43f75f
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
test byte [edi + 0x22], 0x10
je 0x43f76f
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
mov eax, dword [esp + 0x40]
cmp eax, 0x63
jne 0x43f793
mov dword [esp + 0x40], 2
mov eax, dword [ebp + 8]
cmp word [eax], 1
je 0x43f7a7
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
cmp eax, 2
je 0x43f780
cmp eax, 1
je 0x43f780
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
cmp dword [eax + 0x18], esi
je 0x43f7b6
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
cmp dword [ebp + 0xc], esi
je 0x43f7c5
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
cmp dword [ebp + 0x18], esi
je 0x43f7d4
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
cmp dword [ebp + 0x10], esi
je 0x43f7e3
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
cmp dword [ebp + 0x28], esi
je 0x43f7f2
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
cmp dword [ebp + 0x1c], esi
je 0x43f801
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
test byte [ebp + 6], 1
je 0x43f811
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
mov ebp, dword [ebp]
cmp dword [ebp], 1
je 0x43f824
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx]
cmp byte [edx], 0x71
je 0x43f838
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
push ecx
push edx
push esi
push ebx
call fcn.00429230
mov ebp, eax
add esp, 0x10
cmp ebp, esi
mov dword [esp + 0x18], ebp
jne 0x43f85e
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
cmp ebp, edi
jne 0x43f86c
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
test byte [ebp + 0x22], 0x10
je 0x43f87c
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
cmp dword [ebp + 0x1c], esi
je 0x43f88b
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
mov eax, dword [edi + 8]
mov ecx, dword [ebp + 8]
cmp eax, ecx
je 0x43f89f
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
mov ecx, dword [edi + 4]
mov edx, dword [ebp + 4]
cmp ecx, edx
je 0x43f8b3
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
cmp eax, esi
mov dword [esp + 0x3c], esi
jle 0x43f921
mov edx, dword [ebp + 0xc]
mov ecx, dword [edi + 0xc]
lea eax, [edx + esi]
mov dl, byte [esi + ecx + 0x16]
lea edi, [esi + ecx]
cmp dl, byte [eax + 0x16]
jne 0x43f735
mov eax, dword [eax + 0x10]
mov ecx, dword [edi + 0x10]
push eax
push ecx
call fcn.0043fcb0
add esp, 8
test eax, eax
je 0x43f735
mov ecx, dword [esp + 0x38]
mov edx, dword [ecx + 0xc]
mov al, byte [esi + edx + 0x14]
test al, al
je 0x43f90a
mov eax, dword [ebp + 0xc]
mov dl, byte [eax + esi + 0x14]
test dl, dl
je 0x43f735
mov eax, dword [esp + 0x3c]
mov edx, dword [ecx + 8]
mov edi, dword [esp + 0x38]
inc eax
add esi, 0x18
cmp eax, edx
mov dword [esp + 0x3c], eax
jl 0x43f8bb
mov edi, dword [edi + 0x10]
test edi, edi
je 0x43f96c
mov al, byte [edi + 0x18]
test al, al
je 0x43f937
mov dword [esp + 0x14], 1
mov esi, dword [ebp + 0x10]
test esi, esi
je 0x43f735
push esi
push edi
call fcn.0043fce0
add esp, 8
test eax, eax
jne 0x43f95d
mov esi, dword [esi + 0x20]
test esi, esi
je 0x43f735
jmp 0x43f942
test esi, esi
je 0x43f735
mov edi, dword [edi + 0x20]
test edi, edi
jne 0x43f928
mov ecx, dword [esp + 0x38]
mov eax, dword [ecx + 0x2c]
test eax, eax
je 0x43f992
mov edx, dword [ebp + 0x2c]
push eax
push edx
call fcn.00437b70
add esp, 8
test eax, eax
je 0x43f992
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
mov eax, dword [ebp + 0x44]
mov ecx, dword [ebx]
push eax
push ecx
call fcn.0042c980
mov edi, eax
push ebx
mov dword [esp + 0x28], edi
call fcn.004425a0
push edi
push ebx
mov esi, eax
call fcn.0043b530
mov edi, dword [ebx + 0x44]
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x58]
push eax
lea ebp, [edi + 1]
push ecx
push ebx
lea edx, [ebp + 1]
mov dword [ebx + 0x44], edx
call fcn.0043ede0
mov edx, dword [esp + 0x58]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x64]
push 0x27
push edx
push eax
push ebp
push ebx
call fcn.0043db10
mov eax, dword [esp + 0x6c]
add esp, 0x34
mov ecx, dword [eax + 4]
test ecx, ecx
jge 0x43f9fb
mov ecx, dword [eax + 0x10]
test ecx, ecx
jne 0x43fa03
mov eax, dword [esp + 0x14]
test eax, eax
je 0x43fa32
push 0
push ebp
push 0x41
push esi
call fcn.00432990
push 0
push 0
push 1
push esi
mov dword [esp + 0x5c], eax
call fcn.00432990
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x40], eax
push ecx
push esi
call fcn.004329b0
add esp, 0x28
jmp 0x43fa3a
mov dword [esp + 0x20], 0
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
push 0x26
push edx
push eax
push edi
push ebx
call fcn.0043db10
push 0
push edi
push 0x41
push esi
call fcn.00432990
push ebx
mov dword [esp + 0x54], eax
call fcn.004329d0
push ebx
mov dword [esp + 0x40], eax
call fcn.004329d0
mov ecx, dword [esp + 0x64]
add esp, 0x2c
mov dword [esp + 0x10], eax
mov edx, dword [ecx + 4]
test edx, edx
jl 0x43fad2
push eax
push edi
push 0x3d
push esi
call fcn.00432990
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x4c], eax
push ecx
push 0
push ebp
push 0x34
push esi
call fcn.00432000
mov edx, dword [esp + 0x64]
push 0xfffffffffffffffe
push str.PRIMARY_KEY_must_be_unique
push edx
push ebx
mov dword [esp + 0x58], eax
call fcn.0043b690
mov eax, dword [esp + 0x58]
push eax
push esi
call fcn.004329b0
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x64]
push ecx
push edx
push ebx
call fcn.0043ee60
add esp, 0x48
jmp 0x43faef
mov edx, dword [ecx + 0x10]
push eax
test edx, edx
jne 0x43fadf
push ebp
push 0x36
jmp 0x43fae2
push edi
push 0x3d
push esi
call fcn.00432990
add esp, 0x10
mov dword [esp + 0x3c], eax
mov ebx, dword [esp + 0x14]
push ebx
push edi
push 0x3c
push esi
call fcn.00432990
mov eax, dword [esp + 0x20]
push eax
push ebx
push ebp
push 0x37
push esi
call fcn.00432000
push 0xb
push esi
call fcn.00432ec0
mov ebx, dword [esp + 0x64]
push 0
mov ecx, dword [ebx]
push ecx
push 0xffffffffffffffff
push esi
call fcn.00427da0
mov edx, dword [esp + 0x78]
push edx
push edi
push 0x43
push esi
call fcn.00432990
mov ebx, dword [ebx + 0x10]
add esp, 0x4c
test ebx, ebx
je 0x43fc2c
mov eax, dword [esp + 0x18]
mov eax, dword [eax + 0x10]
test eax, eax
mov dword [esp + 0x38], eax
je 0x43fb73
jmp 0x43fb56
mov eax, dword [esp + 0x38]
push eax
push ebx
call fcn.0043fce0
add esp, 8
test eax, eax
jne 0x43fb73
mov ecx, dword [esp + 0x38]
mov eax, dword [ecx + 0x20]
test eax, eax
mov dword [esp + 0x38], eax
jne 0x43fb52
push 0
push edi
push 0x2b
push esi
call fcn.00432990
push 0
push ebp
push 0x2b
push esi
call fcn.00432990
mov edx, dword [esp + 0x58]
mov eax, dword [esp + 0x54]
push edx
push eax
call fcn.0043b930
mov edx, dword [esp + 0x60]
mov ecx, dword [esp + 0x44]
push 0xfffffffffffffff0
push eax
mov eax, dword [edx + 0x14]
push ecx
push eax
push edi
push 0x26
push esi
call fcn.00431fc0
mov ecx, dword [esp + 0x78]
add esp, 0x44
push ebx
push ecx
call fcn.0043b930
mov edx, dword [esp + 0x4c]
push 0xfffffffffffffff0
push eax
mov eax, dword [ebx + 0x14]
push edx
push eax
push ebp
push 0x27
push esi
call fcn.00431fc0
push 0
push edi
push 0x41
push esi
call fcn.00432990
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x70], eax
push ecx
push edi
push 0x3b
push esi
call fcn.00432990
mov edx, dword [esp + 0x58]
add esp, 0x44
push 1
push edx
push ebp
push 0x46
push esi
call fcn.00432000
mov eax, dword [esp + 0x50]
inc eax
push eax
push edi
push 0x43
push esi
call fcn.00432990
mov ecx, dword [esp + 0x60]
push ecx
push esi
call fcn.004329b0
mov ebx, dword [ebx + 0x20]
add esp, 0x2c
test ebx, ebx
jne 0x43fb41
mov edx, dword [esp + 0x2c]
push edx
push esi
call fcn.004329b0
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x3c]
push eax
push ebx
call fcn.00432a00
mov ecx, dword [esp + 0x24]
push ecx
push ebx
call fcn.00432a00
push 0
push edi
push 0x2b
push esi
call fcn.00432990
push 0
push ebp
push 0x2b
push esi
call fcn.00432990
mov edi, dword [esp + 0x58]
add esp, 0x38
test edi, edi
je 0x43fc9d
push 0
push 0
push 6
push esi
call fcn.00432990
push edi
push esi
call fcn.004329b0
push 0
push ebp
push 0x2b
push esi
call fcn.00432990
add esp, 0x28
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x20
ret