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

Disassembly:
sub esp, 0x1c
mov eax, dword [esp + 0x28]
push ebx
push ebp
push esi
xor esi, esi
push edi
cmp eax, esi
mov dword [esp + 0x10], esi
jne 0x48672f
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
mov ebx, dword [esp + 0x34]
cmp dword [ebx + 0x24], esi
je 0x486742
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
test byte [ebx + 0x22], 0x10
je 0x486752
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
mov ecx, dword [esp + 0x3c]
cmp ecx, 0x63
jne 0x486776
mov dword [esp + 0x3c], 2
mov ecx, dword [eax + 8]
cmp word [ecx], 1
je 0x48678a
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
cmp ecx, 2
je 0x486763
cmp ecx, 1
je 0x486763
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
cmp dword [ecx + 0x18], esi
je 0x486799
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
cmp dword [eax + 0xc], esi
je 0x4867a8
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
cmp dword [eax + 0x18], esi
je 0x4867b7
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
cmp dword [eax + 0x10], esi
je 0x4867c6
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
cmp dword [eax + 0x28], esi
je 0x4867d5
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
cmp dword [eax + 0x1c], esi
je 0x4867e4
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
test byte [eax + 6], 1
je 0x4867f4
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
mov eax, dword [eax]
cmp dword [eax], 1
je 0x486805
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
mov eax, dword [eax + 0xc]
mov edx, dword [eax]
cmp byte [edx], 0x70
je 0x486819
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
mov eax, dword [ecx + 8]
mov ecx, dword [ecx + 0xc]
mov edx, dword [esp + 0x30]
push eax
push ecx
push esi
push edx
call fcn.00472680
mov ebp, eax
add esp, 0x10
cmp ebp, esi
mov dword [esp + 0x18], ebp
jne 0x486843
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
cmp ebp, ebx
jne 0x486851
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
test byte [ebp + 0x22], 0x10
je 0x486861
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
cmp dword [ebp + 0x1c], esi
je 0x486870
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 0x486884
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 0x486898
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret
cmp eax, esi
mov dword [esp + 0x38], esi
jle 0x4868fe
mov edx, dword [ebp + 0x10]
mov ecx, dword [ebx + 0x10]
lea eax, [esi + edx]
mov dl, byte [ecx + esi + 0x12]
lea edi, [ecx + esi]
cmp dl, byte [eax + 0x12]
jne 0x486725
mov eax, dword [eax + 0xc]
mov ecx, dword [edi + 0xc]
push eax
push ecx
call fcn.00486cc0
add esp, 8
test eax, eax
je 0x486725
mov edx, dword [ebx + 0x10]
mov al, byte [edx + esi + 0x10]
test al, al
je 0x4868eb
mov eax, dword [ebp + 0x10]
mov cl, byte [esi + eax + 0x10]
test cl, cl
je 0x486725
mov eax, dword [esp + 0x38]
mov ecx, dword [ebx + 0xc]
inc eax
add esi, 0x14
cmp eax, ecx
mov dword [esp + 0x38], eax
jl 0x4868a0
mov edi, dword [ebx + 0x14]
test edi, edi
je 0x486949
mov al, byte [edi + 0x18]
test al, al
je 0x486914
mov dword [esp + 0x10], 1
mov esi, dword [ebp + 0x14]
test esi, esi
je 0x486725
push esi
push edi
call fcn.00486cf0
add esp, 8
test eax, eax
jne 0x48693a
mov esi, dword [esi + 0x20]
test esi, esi
je 0x486725
jmp 0x48691f
test esi, esi
je 0x486725
mov edi, dword [edi + 0x20]
test edi, edi
jne 0x486905
mov eax, dword [ebx + 0x30]
test eax, eax
je 0x486969
mov ecx, dword [ebp + 0x30]
push eax
push ecx
call fcn.0047ffa0
add esp, 8
test eax, eax
jne 0x486969
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret
mov esi, dword [esp + 0x30]
mov edx, dword [ebp + 0x48]
push edx
mov eax, dword [esi]
push eax
call fcn.00475cd0
mov edi, eax
push esi
mov dword [esp + 0x28], edi
call fcn.00489330
push edi
mov edi, dword [esp + 0x40]
push edi
mov esi, eax
call fcn.00483a00
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.00485c80
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.004842d0
mov eax, dword [ebx + 8]
add esp, 0x34
test eax, eax
jge 0x4869d6
mov eax, dword [ebx + 0x14]
test eax, eax
jne 0x4869de
mov eax, dword [esp + 0x10]
test eax, eax
je 0x486a0d
push 0
push ebp
push 0x78
push esi
call fcn.0047b6a0
push 0
push 0
push 0x61
push esi
mov dword [esp + 0x58], eax
call fcn.0047b6a0
mov edx, dword [esp + 0x58]
mov dword [esp + 0x40], eax
push edx
push esi
call fcn.0047bb50
add esp, 0x28
jmp 0x486a15
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.004842d0
push 0
push edi
push 0x78
push esi
call fcn.0047b6a0
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x54]
push eax
call fcn.0047e440
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x5c], eax
push ecx
call fcn.0047e440
mov ecx, dword [ebx + 8]
add esp, 0x2c
test ecx, ecx
mov dword [esp + 0x10], eax
jl 0x486ac2
push eax
push edi
push 0x29
push esi
call fcn.0047b6a0
mov edx, dword [esp + 0x20]
mov dword [esp + 0x48], eax
push edx
push 0
push ebp
push 0x2f
push esi
call fcn.0047aa10
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.0047a9d0
mov ecx, dword [esp + 0x64]
add esp, 0x40
push ecx
push esi
call fcn.0047bb50
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x38]
push edx
push eax
push ecx
call fcn.00485d80
add esp, 0x14
jmp 0x486adf
mov ecx, dword [ebx + 0x14]
push eax
test ecx, ecx
jne 0x486acf
push ebp
push 0x1b
jmp 0x486ad2
push edi
push 0x29
push esi
call fcn.0047b6a0
add esp, 0x10
mov dword [esp + 0x38], eax
mov edx, dword [esp + 0x34]
push edx
push edi
push 0x2d
push esi
call fcn.0047b6a0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x44]
push eax
push ecx
push ebp
push 0x6e
push esi
call fcn.0047aa10
push 0xb
push esi
call fcn.0047b6c0
mov edx, dword [ebx + 4]
push 0
push edx
push 0xffffffffffffffff
push esi
call fcn.0047aa80
mov eax, dword [esp + 0x74]
push eax
push edi
push 0x6b
push esi
call fcn.0047b6a0
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.00485db0
mov ebx, dword [ebx + 0x14]
add esp, 0x10
test ebx, ebx
je 0x486c38
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx + 0x14]
test eax, eax
mov dword [esp + 0x3c], eax
je 0x486b7f
jmp 0x486b62
mov eax, dword [esp + 0x3c]
push eax
push ebx
call fcn.00486cf0
add esp, 8
test eax, eax
jne 0x486b7f
mov edx, dword [esp + 0x3c]
mov eax, dword [edx + 0x20]
test eax, eax
mov dword [esp + 0x3c], eax
jne 0x486b5e
push 0
push edi
push 0x22
push esi
call fcn.0047b6a0
push 0
push ebp
push 0x22
push esi
call fcn.0047b6a0
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x50]
push eax
push ecx
call fcn.00483d00
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.0047a9d0
mov edx, dword [esp + 0x74]
add esp, 0x44
push ebx
push edx
call fcn.00483d00
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.0047a9d0
push 0
push edi
push 0x78
push esi
call fcn.0047b6a0
mov edx, dword [esp + 0x68]
mov dword [esp + 0x6c], eax
push edx
push edi
push 8
push esi
call fcn.0047b6a0
mov eax, dword [esp + 0x78]
add esp, 0x44
push 1
push eax
push ebp
push 0x6c
push esi
call fcn.0047aa10
mov ecx, dword [esp + 0x4c]
inc ecx
push ecx
push edi
push 0x6b
push esi
call fcn.0047b6a0
mov edx, dword [esp + 0x5c]
push edx
push esi
call fcn.0047bb50
mov ebx, dword [ebx + 0x20]
add esp, 0x2c
test ebx, ebx
jne 0x486b4d
mov eax, dword [esp + 0x28]
push eax
push esi
call fcn.0047bb50
mov ecx, dword [esp + 0x18]
mov ebx, dword [esp + 0x38]
push ecx
push ebx
call fcn.0047e470
mov edx, dword [esp + 0x44]
push edx
push ebx
call fcn.0047e470
push 0
push edi
push 0x22
push esi
call fcn.0047b6a0
push 0
push ebp
push 0x22
push esi
call fcn.0047b6a0
mov edi, dword [esp + 0x58]
add esp, 0x38
test edi, edi
je 0x486ca9
push 0
push 0
push 0x28
push esi
call fcn.0047b6a0
push edi
push esi
call fcn.0047bb50
push 0
push ebp
push 0x22
push esi
call fcn.0047b6a0
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