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

Disassembly:
sub esp, 0x74
xor eax, eax
mov dword [esp + 0x10], edx
cmp dword [esp + 0x7c], eax
push ebx
mov ebx, ecx
setne al
mov ecx, dword [esp + 0x7c]
push ebp
push esi
mov esi, dword [ebx]
mov dl, byte [eax + ecx + 0x19]
mov dword [esp + 0x30], eax
mov byte [esp + 0xf], dl
push edi
cmp dl, 7
jne 0x43b61d
mov eax, dword [esi + 0x20]
and eax, 0x80000
or eax, 0
jne 0x43b670
mov eax, dword [esp + 0x34]
mov edi, dword [ecx + eax*4 + 0x1c]
test dl, dl
je 0x43bb33
test edi, edi
jne 0x43bb33
mov edx, dword [esp + 0x20]
xor eax, eax
mov ebp, eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x24], eax
mov edi, ecx
mov dword [esp + 0x14], eax
mov ecx, ebx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x18], eax
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x30]
mov dword [esp + 0x44], ebp
push eax
push edi
call fcn.0043a485
add esp, 0xc
test eax, eax
je 0x43b677
xor eax, eax
jmp 0x43bb35
xor ecx, ecx
mov dword [esp + 0x30], ecx
cmp dword [edi + 0x14], ecx
jle 0x43b96c
push 3
pop eax
mov dword [esp + 0x4c], 0x4907f4
mov ebp, ecx
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], 0x4907f0
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x24]
test eax, eax
je 0x43b6b4
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x14], eax
jmp 0x43b6bb
mov edx, dword [edi + 0x24]
mov dword [esp + 0x14], edx
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x43b6d0
mov eax, dword [eax + 4]
movzx ecx, word [eax + ecx*2]
mov eax, dword [esp + 0x20]
jmp 0x43b6d8
mov eax, dword [esp + 0x20]
movzx ecx, word [eax + 0x28]
mov eax, dword [eax + 4]
movsx ecx, cx
add ecx, ecx
mov ecx, dword [eax + ecx*8]
mov dword [esp + 0x44], ecx
call fcn.00407084
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x48], eax
mov eax, dword [edi]
shl ecx, 4
mov dword [esp + 0x14], ecx
mov eax, dword [eax + 4]
mov ecx, dword [ecx + eax]
mov dword [esp + 0x5c], ecx
call fcn.00407084
mov dword [esp + 0x60], eax
mov ecx, esi
push 0
lea eax, [esp + 0x60]
push eax
push 0x3b
pop edx
call fcn.00429feb
pop ecx
pop ecx
push eax
push 0
lea eax, [esp + 0x4c]
mov ecx, esi
push eax
push 0x3b
pop edx
call fcn.00429feb
pop ecx
pop ecx
push eax
push 0
lea eax, [esp + 0x58]
mov ecx, esi
push eax
push 0x3b
pop edx
call fcn.00429feb
pop ecx
pop ecx
push eax
mov edx, 0x89
mov ecx, ebx
call fcn.0042a15f
pop ecx
pop ecx
push eax
push 0x35
pop edx
mov ecx, ebx
call fcn.0042a15f
mov edx, dword [ebx]
mov dword [esp + 0x44], edx
pop ecx
pop ecx
mov ecx, eax
mov dword [esp + 0x38], ecx
test ebp, ebp
jne 0x43b77e
mov ebp, ecx
jmp 0x43b816
test ecx, ecx
je 0x43b816
mov eax, dword [ebp + 4]
and eax, 0x20000001
cmp eax, 0x20000000
je 0x43b7b3
mov eax, dword [ecx + 4]
and eax, 0x20000001
cmp eax, 0x20000000
je 0x43b7b3
push ecx
push ebp
push 0x2c
pop edx
mov ecx, ebx
call fcn.0042a15f
pop ecx
jmp 0x43b813
cmp byte [ebx + 0xc0], 2
mov ecx, edx
jb 0x43b7ee
xorps xmm0, xmm0
mov dword [esp + 0x64], ebx
mov edx, ebp
movlpd qword [esp + 0x70], xmm0
lea ecx, [esp + 0x64]
movlpd qword [esp + 0x78], xmm0
mov dword [esp + 0x68], 0x42f795
mov dword [esp + 0x6c], 0x42f7aa
call fcn.00427952
mov ecx, dword [ebx]
mov edx, ebp
call fcn.0042a441
mov edx, dword [esp + 0x38]
mov ecx, ebx
call fcn.0042a4f7
mov ecx, dword [esp + 0x3c]
mov edx, 0x96
push 0x490c18
call fcn.0042a130
mov ebp, eax
pop ecx
cmp dword [esp + 0x8c], 0
je 0x43b8af
push 0
lea eax, [esp + 0x48]
mov ecx, esi
push eax
push 0x3b
pop edx
call fcn.00429feb
pop ecx
pop ecx
push eax
push 0
lea eax, [esp + 0x5c]
mov ecx, esi
push eax
push 0x3b
pop edx
call fcn.00429feb
pop ecx
pop ecx
push eax
mov edx, 0x89
mov ecx, ebx
call fcn.0042a15f
pop ecx
pop ecx
push eax
push 0
lea eax, [esp + 0x4c]
mov ecx, esi
push eax
push 0x3b
pop edx
call fcn.00429feb
pop ecx
pop ecx
push eax
push 0
lea eax, [esp + 0x58]
mov ecx, esi
push eax
push 0x3b
pop edx
call fcn.00429feb
pop ecx
pop ecx
push eax
mov edx, 0x89
mov ecx, ebx
call fcn.0042a15f
pop ecx
pop ecx
push eax
push 0x2d
pop edx
mov ecx, ebx
call fcn.0042a15f
mov edx, dword [esp + 0x20]
mov ecx, ebx
push eax
call fcn.0042a219
add esp, 0xc
mov dword [esp + 0x18], eax
mov al, byte [esp + 0x13]
cmp al, 7
je 0x43b952
cmp al, 0xa
jne 0x43b903
cmp dword [esp + 0x8c], 0
je 0x43b952
push 0
lea eax, [esp + 0x48]
mov ecx, esi
push eax
push 0x3b
pop edx
call fcn.00429feb
pop ecx
pop ecx
push eax
push 0
lea eax, [esp + 0x5c]
mov ecx, esi
push eax
push 0x3b
pop edx
call fcn.00429feb
pop ecx
pop ecx
push eax
mov edx, 0x89
mov ecx, ebx
call fcn.0042a15f
jmp 0x43b92d
mov ecx, esi
push 0
cmp al, 9
jne 0x43b923
mov eax, dword [edi]
mov edx, dword [esp + 0x18]
mov eax, dword [eax + 4]
mov edx, dword [eax + edx + 4]
test edx, edx
je 0x43b923
call fcn.0042a8d4
jmp 0x43b92e
push 0
push 0x75
pop edx
call fcn.00429feb
pop ecx
mov edx, dword [esp + 0x20]
pop ecx
push eax
mov ecx, ebx
call fcn.0042ae1d
pop ecx
lea ecx, [esp + 0x5c]
mov dword [esp + 0x1c], eax
push 0
push ecx
mov edx, eax
mov ecx, ebx
call fcn.0042afeb
pop ecx
pop ecx
mov ecx, dword [esp + 0x30]
inc ecx
mov dword [esp + 0x30], ecx
cmp ecx, dword [edi + 0x14]
jl 0x43b6a3
mov dword [esp + 0x14], ebp
mov ebp, dword [esp + 0x40]
mov eax, dword [esp + 0x24]
test eax, eax
je 0x43b97d
mov edx, eax
mov ecx, esi
call fcn.00404c57
mov eax, dword [edi]
mov edi, dword [eax]
mov ecx, edi
mov dword [esp + 0x40], edi
call fcn.00407084
cmp byte [esp + 0x13], 7
mov dword [esp + 0x30], eax
jne 0x43b9fa
push str.FOREIGN_KEY_constraint_failed
push 0x47
pop edx
mov ecx, esi
mov dword [esp + 0x60], edi
mov dword [esp + 0x64], eax
call fcn.0042a130
mov edi, eax
pop ecx
test edi, edi
je 0x43b9b9
mov byte [edi + 1], 2
xor eax, eax
xor edx, edx
push eax
push eax
push eax
push eax
push eax
push dword [esp + 0x28]
mov ecx, ebx
push eax
lea eax, [esp + 0x78]
push eax
call fcn.00436649
pop ecx
pop ecx
push eax
push edi
xor edx, edx
mov ecx, ebx
call fcn.0042ae1d
pop ecx
mov edx, eax
mov ecx, ebx
call fcn.0044270e
add esp, 0x1c
mov dword [esp + 0x28], eax
and dword [esp + 0x14], 0
mov eax, dword [esp + 0x30]
inc dword [esi + 0x110]
add eax, 0x51
push 0
push eax
mov ecx, esi
call fcn.00404dde
mov edi, eax
pop ecx
pop ecx
test edi, edi
je 0x43ba8f
push dword [esp + 0x30]
lea ebp, [edi + 0x24]
push dword [esp + 0x44]
lea ecx, [ebp + 0x2c]
mov dword [edi + 0x1c], ebp
push ecx
mov dword [ebp + 0xc], ecx
call fcn.00462610
mov edx, dword [esp + 0x20]
add esp, 0xc
mov ecx, esi
push 1
call fcn.0042a8d4
mov edx, dword [esp + 0x20]
pop ecx
push 1
mov ecx, esi
mov dword [ebp + 0x10], eax
call fcn.0042a8f2
mov edx, dword [esp + 0x2c]
pop ecx
push 1
mov ecx, esi
mov dword [ebp + 0x14], eax
call fcn.0042ac33
mov dword [ebp + 8], eax
mov eax, dword [esp + 0x1c]
pop ecx
test eax, eax
je 0x43ba8f
push 0
push eax
push 0x13
pop edx
mov ecx, ebx
call fcn.0042a15f
push 1
mov edx, eax
mov dword [esp + 0x24], eax
mov ecx, esi
call fcn.0042a8d4
add esp, 0xc
mov dword [edi + 0xc], eax
mov edx, dword [esp + 0x14]
mov ecx, esi
dec dword [esi + 0x110]
call fcn.0042a4e4
mov edx, dword [esp + 0x18]
mov ecx, esi
call fcn.0042a4e4
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x43babc
mov edx, eax
mov ecx, esi
call fcn.0042b03d
mov edx, dword [esp + 0x28]
mov ecx, esi
call fcn.004427ea
cmp byte [esi + 0x51], 1
jne 0x43badb
mov edx, edi
mov ecx, esi
call fcn.0043adf7
jmp 0x43b670
mov al, byte [esp + 0x13]
cmp al, 7
je 0x43bafd
cmp al, 0xa
jne 0x43baf7
cmp dword [esp + 0x8c], 0
jne 0x43baf7
mov byte [ebp], 0x7c
jmp 0x43bb01
mov byte [ebp], 0x7d
jmp 0x43bb01
mov byte [ebp], 0x86
mov ecx, dword [esp + 0x20]
cmp dword [esp + 0x8c], 0
mov dword [ebp + 4], edi
mov eax, dword [ecx + 0x48]
mov dword [edi + 0x14], eax
mov eax, dword [ecx + 0x48]
mov ecx, dword [esp + 0x88]
mov dword [edi + 0x18], eax
mov eax, dword [esp + 0x34]
mov dword [ecx + eax*4 + 0x1c], edi
setne al
add al, 0x7c
mov byte [edi + 8], al
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret