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

Disassembly:
sub esp, 0x84
mov eax, dword [0x490004]
xor eax, esp
mov dword [esp + 0x7c], eax
xor eax, eax
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x8c]
test edx, edx
push ebx
mov ebx, ecx
mov dword [esp + 0x14], edx
mov ecx, dword [esp + 0x8c]
setne al
push ebp
push esi
mov esi, dword [ebx]
mov dl, byte [ecx + eax + 0x19]
mov dword [esp + 0x44], ecx
mov dword [esp + 0x48], eax
mov byte [esp + 0x13], dl
push edi
cmp dl, 7
jne 0x43cdde
mov eax, dword [esi + 0x20]
and eax, 0x80000
or eax, 0
jne 0x43ce31
mov eax, dword [esp + 0x4c]
mov edi, dword [ecx + eax*4 + 0x1c]
test dl, dl
je 0x43d2e8
test edi, edi
jne 0x43d2e8
mov edx, dword [esp + 0x2c]
xor eax, eax
mov ebp, eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x30], eax
mov edi, ecx
mov dword [esp + 0x18], eax
mov ecx, ebx
mov dword [esp + 0x28], eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x30]
push eax
lea eax, [esp + 0x48]
mov dword [esp + 0x3c], ebp
push eax
push edi
call fcn.0043bbd4
add esp, 0xc
test eax, eax
je 0x43ce38
xor eax, eax
jmp 0x43d2ea
xor ecx, ecx
mov dword [esp + 0x24], ecx
cmp dword [edi + 0x14], ecx
jle 0x43d12c
push 3
pop eax
mov dword [esp + 0x60], 0x489384
mov ebp, ecx
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], 0x489380
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x30]
test eax, eax
je 0x43ce75
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x18], eax
jmp 0x43ce7c
mov edx, dword [edi + 0x24]
mov dword [esp + 0x18], edx
mov eax, dword [esp + 0x44]
test eax, eax
je 0x43ce91
mov eax, dword [eax + 4]
movzx ecx, word [eax + ecx*2]
mov eax, dword [esp + 0x2c]
jmp 0x43ce99
mov eax, dword [esp + 0x2c]
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 + 0x50], ecx
call fcn.00406d3c
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x54], eax
mov eax, dword [edi]
shl ecx, 4
mov dword [esp + 0x18], ecx
mov eax, dword [eax + 4]
mov ecx, dword [ecx + eax]
mov dword [esp + 0x3c], ecx
call fcn.00406d3c
mov dword [esp + 0x40], eax
mov ecx, esi
push 0
lea eax, [esp + 0x40]
push eax
push 0x3b
pop edx
call fcn.0042b175
pop ecx
pop ecx
push eax
push 0
lea eax, [esp + 0x58]
mov ecx, esi
push eax
push 0x3b
pop edx
call fcn.0042b175
pop ecx
pop ecx
push eax
push 0
lea eax, [esp + 0x6c]
mov ecx, esi
push eax
push 0x3b
pop edx
call fcn.0042b175
pop ecx
pop ecx
push eax
mov edx, 0x89
mov ecx, ebx
call fcn.0042b2e9
pop ecx
pop ecx
push eax
push 0x35
pop edx
mov ecx, ebx
call fcn.0042b2e9
mov edx, dword [ebx]
mov dword [esp + 0x64], edx
pop ecx
pop ecx
mov ecx, eax
mov dword [esp + 0x58], ecx
test ebp, ebp
jne 0x43cf3f
mov ebp, ecx
jmp 0x43cfda
test ecx, ecx
je 0x43cfda
mov eax, dword [ebp + 4]
and eax, 0x20000001
cmp eax, 0x20000000
je 0x43cf74
mov eax, dword [ecx + 4]
and eax, 0x20000001
cmp eax, 0x20000000
je 0x43cf74
push ecx
push ebp
push 0x2c
pop edx
mov ecx, ebx
call fcn.0042b2e9
pop ecx
jmp 0x43cfd7
cmp byte [ebx + 0xc0], 2
mov ecx, edx
jb 0x43cfb2
xorps xmm0, xmm0
mov dword [esp + 0x70], ebx
mov edx, ebp
movlpd qword [esp + 0x7c], xmm0
lea ecx, [esp + 0x70]
movlpd qword [esp + 0x84], xmm0
mov dword [esp + 0x74], 0x430b14
mov dword [esp + 0x78], 0x430b29
call fcn.004289f6
mov ecx, dword [ebx]
mov edx, ebp
call fcn.0042b5cc
mov edx, dword [esp + 0x58]
mov ecx, ebx
call fcn.0042b682
mov ecx, dword [esp + 0x5c]
mov edx, 0x96
push 0x4897a8
call fcn.0042b2ba
mov ebp, eax
pop ecx
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x43d075
push 0
lea eax, [esp + 0x54]
mov ecx, esi
push eax
push 0x3b
pop edx
call fcn.0042b175
pop ecx
pop ecx
push eax
push 0
lea eax, [esp + 0x70]
mov ecx, esi
push eax
push 0x3b
pop edx
call fcn.0042b175
pop ecx
pop ecx
push eax
mov edx, 0x89
mov ecx, ebx
call fcn.0042b2e9
pop ecx
pop ecx
push eax
push 0
lea eax, [esp + 0x58]
mov ecx, esi
push eax
push 0x3b
pop edx
call fcn.0042b175
pop ecx
pop ecx
push eax
push 0
lea eax, [esp + 0x6c]
mov ecx, esi
push eax
push 0x3b
pop edx
call fcn.0042b175
pop ecx
pop ecx
push eax
mov edx, 0x89
mov ecx, ebx
call fcn.0042b2e9
pop ecx
pop ecx
push eax
push 0x2d
pop edx
mov ecx, ebx
call fcn.0042b2e9
mov edx, dword [esp + 0x24]
mov ecx, ebx
push eax
call fcn.0042b3a3
mov ecx, dword [esp + 0x2c]
add esp, 0xc
mov dword [esp + 0x1c], eax
mov al, byte [esp + 0x17]
cmp al, 7
je 0x43d112
cmp al, 0xa
jne 0x43d0c3
test ecx, ecx
je 0x43d112
push 0
lea eax, [esp + 0x54]
mov ecx, esi
push eax
push 0x3b
pop edx
call fcn.0042b175
pop ecx
pop ecx
push eax
push 0
lea eax, [esp + 0x70]
mov ecx, esi
push eax
push 0x3b
pop edx
call fcn.0042b175
pop ecx
pop ecx
push eax
mov edx, 0x89
mov ecx, ebx
call fcn.0042b2e9
jmp 0x43d0ed
mov ecx, esi
push 0
cmp al, 9
jne 0x43d0e3
mov eax, dword [edi]
mov edx, dword [esp + 0x1c]
mov eax, dword [eax + 4]
mov edx, dword [eax + edx + 4]
test edx, edx
je 0x43d0e3
call fcn.0042ba8a
jmp 0x43d0ee
push 0
push 0x75
pop edx
call fcn.0042b175
pop ecx
mov edx, dword [esp + 0x2c]
pop ecx
push eax
mov ecx, ebx
call fcn.0042bff7
pop ecx
lea ecx, [esp + 0x3c]
mov dword [esp + 0x28], eax
push 0
push ecx
mov edx, eax
mov ecx, ebx
call fcn.0042c1c5
pop ecx
pop ecx
mov ecx, dword [esp + 0x24]
inc ecx
mov dword [esp + 0x24], ecx
cmp ecx, dword [edi + 0x14]
jl 0x43ce64
mov dword [esp + 0x18], ebp
mov ebp, dword [esp + 0x38]
mov eax, dword [esp + 0x30]
test eax, eax
je 0x43d13d
mov edx, eax
mov ecx, esi
call fcn.004047d8
mov eax, dword [edi]
mov edi, dword [eax]
mov ecx, edi
mov dword [esp + 0x38], edi
call fcn.00406d3c
cmp byte [esp + 0x17], 7
mov dword [esp + 0x24], eax
jne 0x43d1ba
push str.FOREIGN_KEY_constraint_failed
push 0x47
pop edx
mov ecx, esi
mov dword [esp + 0x40], edi
mov dword [esp + 0x44], eax
call fcn.0042b2ba
mov edi, eax
pop ecx
test edi, edi
je 0x43d179
mov byte [edi + 1], 2
xor eax, eax
xor edx, edx
push eax
push eax
push eax
push eax
push eax
push dword [esp + 0x2c]
mov ecx, ebx
push eax
lea eax, [esp + 0x58]
push eax
call fcn.00437c6e
pop ecx
pop ecx
push eax
push edi
xor edx, edx
mov ecx, ebx
call fcn.0042bff7
pop ecx
mov edx, eax
mov ecx, ebx
call fcn.00444062
add esp, 0x1c
mov dword [esp + 0x34], eax
and dword [esp + 0x18], 0
mov eax, dword [esp + 0x24]
inc dword [esi + 0x110]
add eax, 0x51
push 0
push eax
mov ecx, esi
call fcn.0040495f
mov edi, eax
pop ecx
pop ecx
test edi, edi
je 0x43d24f
push dword [esp + 0x24]
lea ebp, [edi + 0x24]
push dword [esp + 0x3c]
lea ecx, [ebp + 0x2c]
mov dword [edi + 0x1c], ebp
push ecx
mov dword [ebp + 0xc], ecx
call fcn.00463550
mov edx, dword [esp + 0x24]
add esp, 0xc
mov ecx, esi
push 1
call fcn.0042ba8a
mov edx, dword [esp + 0x2c]
pop ecx
push 1
mov ecx, esi
mov dword [ebp + 0x10], eax
call fcn.0042baa8
mov edx, dword [esp + 0x38]
pop ecx
push 1
mov ecx, esi
mov dword [ebp + 0x14], eax
call fcn.0042bde9
mov dword [ebp + 8], eax
mov eax, dword [esp + 0x20]
pop ecx
test eax, eax
je 0x43d24f
push 0
push eax
push 0x13
pop edx
mov ecx, ebx
call fcn.0042b2e9
push 1
mov edx, eax
mov dword [esp + 0x28], eax
mov ecx, esi
call fcn.0042ba8a
add esp, 0xc
mov dword [edi + 0xc], eax
mov edx, dword [esp + 0x18]
mov ecx, esi
dec dword [esi + 0x110]
call fcn.0042b66f
mov edx, dword [esp + 0x1c]
mov ecx, esi
call fcn.0042b66f
mov eax, dword [esp + 0x28]
test eax, eax
je 0x43d27c
mov edx, eax
mov ecx, esi
call fcn.0042c217
mov edx, dword [esp + 0x34]
mov ecx, esi
call fcn.0044415a
cmp byte [esi + 0x51], 1
jne 0x43d29b
mov edx, edi
mov ecx, esi
call fcn.0043c58a
jmp 0x43ce31
mov al, byte [esp + 0x17]
mov edx, dword [esp + 0x20]
cmp al, 7
je 0x43d2bb
cmp al, 0xa
jne 0x43d2b5
test edx, edx
jne 0x43d2b5
mov byte [ebp], 0x7c
jmp 0x43d2bf
mov byte [ebp], 0x7d
jmp 0x43d2bf
mov byte [ebp], 0x86
mov ecx, dword [esp + 0x2c]
test edx, edx
mov dword [ebp + 4], edi
mov eax, dword [ecx + 0x48]
mov dword [edi + 0x14], eax
mov eax, dword [ecx + 0x48]
mov ecx, dword [esp + 0x48]
mov dword [edi + 0x18], eax
mov eax, dword [esp + 0x4c]
mov dword [ecx + eax*4 + 0x1c], edi
setne al
add al, 0x7c
mov byte [edi + 8], al
mov eax, edi
mov ecx, dword [esp + 0x8c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004614f6
add esp, 0x84
ret