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

Disassembly:
sub esp, 0x1c
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0x38]
mov dword [esp + 0x10], 0
test edi, edi
jne 0x43b611
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
mov ebx, dword [esp + 0x34]
mov esi, dword [esp + 0x30]
push ebx
push esi
call fcn.00442be0
add esp, 8
test eax, eax
je 0x43b631
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
test byte [ebx + 0x22], 0x10
je 0x43b641
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
mov eax, dword [esp + 0x3c]
cmp eax, 0x63
jne 0x43b665
mov dword [esp + 0x3c], 2
mov eax, dword [edi + 8]
cmp word [eax], 1
je 0x43b679
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
cmp eax, 2
je 0x43b652
cmp eax, 1
je 0x43b652
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x43b68a
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
mov ecx, dword [edi + 0xc]
test ecx, ecx
je 0x43b69b
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x43b6ac
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
mov ecx, dword [edi + 0x10]
test ecx, ecx
je 0x43b6bd
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
mov ecx, dword [edi + 0x28]
test ecx, ecx
je 0x43b6ce
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
mov ecx, dword [edi + 0x1c]
test ecx, ecx
je 0x43b6df
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
test byte [edi + 6], 1
je 0x43b6ef
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
mov edi, dword [edi]
cmp dword [edi], 1
je 0x43b700
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
mov ecx, dword [edi + 0xc]
mov edx, dword [ecx]
cmp byte [edx], 0x71
je 0x43b714
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
push ecx
push edx
push 0
push esi
call fcn.004270d0
mov ebp, eax
add esp, 0x10
test ebp, ebp
mov dword [esp + 0x18], ebp
jne 0x43b739
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret
cmp ebp, ebx
jne 0x43b747
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
test byte [ebp + 0x22], 0x10
je 0x43b757
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
mov eax, dword [ebp + 0x1c]
test eax, eax
je 0x43b768
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
mov eax, dword [ebx + 0xc]
mov ecx, dword [ebp + 0xc]
cmp eax, ecx
je 0x43b77c
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
mov ecx, dword [ebx + 8]
mov edx, dword [ebp + 8]
cmp ecx, edx
je 0x43b790
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
test eax, eax
mov dword [esp + 0x38], 0
jle 0x43b800
xor esi, esi
mov edx, dword [ebp + 0x10]
mov ecx, dword [ebx + 0x10]
lea eax, [edx + esi]
mov dl, byte [esi + ecx + 0x12]
lea edi, [esi + ecx]
cmp dl, byte [eax + 0x12]
jne 0x43b607
mov eax, dword [eax + 0xc]
mov ecx, dword [edi + 0xc]
push eax
push ecx
call fcn.0043bbc0
add esp, 8
test eax, eax
je 0x43b607
mov edx, dword [ebx + 0x10]
mov al, byte [esi + edx + 0x10]
test al, al
je 0x43b7e9
mov eax, dword [ebp + 0x10]
mov cl, byte [eax + esi + 0x10]
test cl, cl
je 0x43b607
mov eax, dword [esp + 0x38]
mov ecx, dword [ebx + 0xc]
inc eax
add esi, 0x14
cmp eax, ecx
mov dword [esp + 0x38], eax
jl 0x43b79e
mov esi, dword [esp + 0x30]
mov edi, dword [ebx + 0x14]
test edi, edi
je 0x43b84f
mov al, byte [edi + 0x18]
test al, al
je 0x43b816
mov dword [esp + 0x10], 1
mov esi, dword [ebp + 0x14]
test esi, esi
je 0x43b607
push esi
push edi
call fcn.0043bbf0
add esp, 8
test eax, eax
jne 0x43b83c
mov esi, dword [esi + 0x20]
test esi, esi
je 0x43b607
jmp 0x43b821
test esi, esi
je 0x43b607
mov edi, dword [edi + 0x20]
test edi, edi
jne 0x43b807
mov esi, dword [esp + 0x30]
mov eax, dword [ebx + 0x2c]
test eax, eax
je 0x43b86f
mov ecx, dword [ebp + 0x2c]
push eax
push ecx
call fcn.00434c90
add esp, 8
test eax, eax
jne 0x43b86f
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret
mov edx, dword [ebp + 0x48]
mov eax, dword [esi]
push edx
push eax
call fcn.0042a770
mov edi, eax
push esi
mov dword [esp + 0x28], edi
call fcn.0043e3b0
push edi
mov edi, dword [esp + 0x40]
push edi
mov esi, eax
call fcn.004388a0
mov edi, dword [edi + 0x44]
mov edx, dword [esp + 0x54]
mov eax, dword [esp + 0x44]
push ebx
lea ebp, [edi + 1]
push edx
push eax
lea ecx, [ebp + 1]
mov dword [eax + 0x44], ecx
call fcn.0043ab60
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x60]
push 0xa
push ebx
push eax
push ebp
push ecx
call fcn.00439170
mov eax, dword [ebx + 8]
add esp, 0x34
test eax, eax
jge 0x43b8d8
mov eax, dword [ebx + 0x14]
test eax, eax
jne 0x43b8e0
mov eax, dword [esp + 0x10]
test eax, eax
je 0x43b90f
push 0
push ebp
push 0x7a
push esi
call fcn.00430030
push 0
push 0
push 0x61
push esi
mov dword [esp + 0x58], eax
call fcn.00430030
mov edx, dword [esp + 0x58]
mov dword [esp + 0x40], eax
push edx
push esi
call fcn.004304d0
add esp, 0x28
jmp 0x43b917
mov dword [esp + 0x20], 0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x30]
push 0xe
push eax
push ecx
push edi
push edx
call fcn.00439170
push 0
push edi
push 0x7a
push esi
call fcn.00430030
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x54]
push eax
call fcn.00432d90
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x5c], eax
push ecx
call fcn.00432d90
mov ecx, dword [ebx + 8]
add esp, 0x2c
test ecx, ecx
mov dword [esp + 0x10], eax
jl 0x43b9c4
push eax
push edi
push 0x29
push esi
call fcn.00430030
mov edx, dword [esp + 0x20]
mov dword [esp + 0x48], eax
push edx
push 0
push ebp
push 0x2f
push esi
call fcn.0042f500
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x60]
push 0xfffffffffffffffe
push str.PRIMARY_KEY_must_be_unique
push 0
push eax
push 0x13
push 0x28
push esi
call fcn.0042f4c0
mov ecx, dword [esp + 0x64]
add esp, 0x40
push ecx
push esi
call fcn.004304d0
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x38]
push edx
push eax
push ecx
call fcn.0043ac70
add esp, 0x14
jmp 0x43b9e1
mov ecx, dword [ebx + 0x14]
push eax
test ecx, ecx
jne 0x43b9d1
push ebp
push 0x1b
jmp 0x43b9d4
push edi
push 0x29
push esi
call fcn.00430030
add esp, 0x10
mov dword [esp + 0x38], eax
mov edx, dword [esp + 0x34]
push edx
push edi
push 0x2d
push esi
call fcn.00430030
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x44]
push eax
push ecx
push ebp
push 0x6f
push esi
call fcn.0042f500
push 0xb
push esi
call fcn.00430050
mov edx, dword [ebx + 4]
push 0
push edx
push 0xffffffffffffffff
push esi
call fcn.004260e0
mov eax, dword [esp + 0x74]
push eax
push edi
push 0x6b
push esi
call fcn.00430030
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x8c]
mov eax, dword [esp + 0x7c]
add esp, 0x4c
push ecx
push ebx
push edx
push eax
call fcn.0043aca0
mov ebx, dword [ebx + 0x14]
add esp, 0x10
test ebx, ebx
je 0x43bb3a
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx + 0x14]
test eax, eax
mov dword [esp + 0x3c], eax
je 0x43ba81
jmp 0x43ba64
mov eax, dword [esp + 0x3c]
push eax
push ebx
call fcn.0043bbf0
add esp, 8
test eax, eax
jne 0x43ba81
mov edx, dword [esp + 0x3c]
mov eax, dword [edx + 0x20]
test eax, eax
mov dword [esp + 0x3c], eax
jne 0x43ba60
push 0
push edi
push 0x22
push esi
call fcn.00430030
push 0
push ebp
push 0x22
push esi
call fcn.00430030
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x50]
push eax
push ecx
call fcn.00438ba0
mov edx, dword [esp + 0x44]
push 0xfffffffffffffff0
push eax
mov eax, dword [esp + 0x6c]
push edx
mov ecx, dword [eax + 0x14]
push ecx
push edi
push 0xe
push esi
call fcn.0042f4c0
mov edx, dword [esp + 0x74]
add esp, 0x44
push ebx
push edx
call fcn.00438ba0
mov ecx, dword [ebx + 0x14]
push 0xfffffffffffffff0
push eax
mov eax, dword [esp + 0x50]
push eax
push ecx
push ebp
push 0xa
push esi
call fcn.0042f4c0
push 0
push edi
push 0x7a
push esi
call fcn.00430030
mov edx, dword [esp + 0x68]
mov dword [esp + 0x6c], eax
push edx
push edi
push 8
push esi
call fcn.00430030
mov eax, dword [esp + 0x78]
add esp, 0x44
push 1
push eax
push ebp
push 0x6d
push esi
call fcn.0042f500
mov ecx, dword [esp + 0x4c]
inc ecx
push ecx
push edi
push 0x6b
push esi
call fcn.00430030
mov edx, dword [esp + 0x5c]
push edx
push esi
call fcn.004304d0
mov ebx, dword [ebx + 0x20]
add esp, 0x2c
test ebx, ebx
jne 0x43ba4f
mov eax, dword [esp + 0x28]
push eax
push esi
call fcn.004304d0
mov ecx, dword [esp + 0x18]
mov ebx, dword [esp + 0x38]
push ecx
push ebx
call fcn.00432dc0
mov edx, dword [esp + 0x44]
push edx
push ebx
call fcn.00432dc0
push 0
push edi
push 0x22
push esi
call fcn.00430030
push 0
push ebp
push 0x22
push esi
call fcn.00430030
mov edi, dword [esp + 0x58]
add esp, 0x38
test edi, edi
je 0x43bbab
push 0
push 0
push 0x28
push esi
call fcn.00430030
push edi
push esi
call fcn.004304d0
push 0
push ebp
push 0x22
push esi
call fcn.00430030
add esp, 0x28
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x1c
ret