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

Disassembly:
push 0x18
mov eax, 0x783aacdf
call fcn.783a772b
mov esi, dword [ebp + 8]
xor eax, eax
xor ebx, ebx
cmp esi, ebx
setne al
cmp eax, ebx
jne 0x7839e68b
call sym.MFC80U.DLL_Ordinal_1176
xor eax, eax
cmp dword [ebp + 0xc], ebx
setne al
cmp eax, ebx
je 0x7839e686
lea eax, [ebp - 0x1c]
push eax
mov ecx, esi
mov dword [ebp - 0x1c], ebx
call sym.MFC80U.DLL_Ordinal_3937
test eax, eax
je 0x7839ec6d
mov ecx, dword [esi + 4]
xor eax, eax
cmp ecx, ebx
setne al
cmp eax, ebx
je 0x7839e686
mov edi, dword [ebp - 0x1c]
push dword [esi + 8]
lea eax, [edi - 1]
push eax
mov dword [ebp - 0x18], eax
call sym.MFC80U.DLL_Ordinal_2728
mov ecx, eax
xor eax, eax
cmp ecx, ebx
setne al
mov dword [ebp - 0x14], ecx
cmp eax, ebx
je 0x7839e686
mov eax, dword [esi]
cmp eax, 0xe
ja case.0x7839e6e8.4
jmp dword [eax*4 + 0x7839ec76]
mov eax, dword [esi + 4]
mov dword [eax + 0x20], 1
mov eax, dword [esi + 4]
cmp dword [eax + 0x7c], ebx
jne 0x7839e740
mov eax, dword [eax + 0x18]
xor ecx, ecx
push 4
pop edx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call sym.MFC80U.DLL_Ordinal_762
mov ecx, dword [esi + 4]
mov dword [ecx + 0x7c], eax
mov eax, dword [esi + 4]
mov ecx, dword [eax + 0x18]
shl ecx, 2
push ecx
push ebx
push dword [eax + 0x7c]
call sub.MSVCR80.dll_memset
mov eax, dword [esi + 4]
mov ecx, dword [eax + 0x18]
add esp, 0x10
mov dword [eax + 0x84], ecx
mov eax, dword [esi + 4]
mov eax, dword [eax + 0x7c]
cmp dword [eax + edi*4 - 4], ebx
jne 0x7839e75e
push 0x10
call sym.MFC80U.DLL_Ordinal_762
pop ecx
mov ecx, dword [esi + 4]
mov ecx, dword [ecx + 0x7c]
mov dword [ecx + edi*4 - 4], eax
mov ecx, dword [esi + 4]
mov eax, dword [ecx + 0x7c]
mov ebx, dword [eax + edi*4 - 4]
lea eax, [edi - 1]
push eax
call sym.MFC80U.DLL_Ordinal_3962
test eax, eax
je 0x7839e77d
mov eax, dword [ebp - 0x14]
or dword [eax], 0xffffffff
jmp 0x7839e7d1
push dword [ebp + 0x10]
call fcn.7830be08
push dword [ebp + 0x10]
mov word [ebx], ax
call fcn.7830bde6
push dword [ebp + 0x10]
mov word [ebx + 2], ax
call fcn.7830bdc5
push dword [ebp + 0x10]
mov word [ebx + 4], ax
call fcn.7830bda3
push dword [ebp + 0x10]
mov word [ebx + 6], ax
call fcn.7830bd81
push dword [ebp + 0x10]
mov word [ebx + 8], ax
call fcn.7830bd1d
and dword [ebx + 0xc], 0
mov word [ebx + 0xa], ax
mov eax, dword [ebp - 0x14]
mov dword [eax], 0x10
push dword [ebp - 0x14]
movzx eax, word [esi + 8]
push 0
push ebx
push 0
push 0x17
push 0xb
push 0xb
push eax
push edi
push dword [esi + 0x2c]
call sub.ODBC32.dll_SQLBindParameter
movzx eax, ax
test ax, ax
je 0x7839e801
push dword [esi + 0x2c]
mov ecx, dword [esi + 4]
mov edx, dword [ecx]
push eax
call dword [edx + 0x60]
mov ecx, dword [esi + 4]
add ecx, 0x5c
push dword [ebp + 0x10]
call sym.MFC80U.DLL_Ordinal_862
mov dword [eax], edi
jmp 0x7839ec6d
push dword [ebp - 0x18]
mov ecx, dword [esi + 4]
call sym.MFC80U.DLL_Ordinal_3962
test eax, eax
jne 0x7839eb40
mov eax, dword [esi + 4]
mov eax, dword [eax + 0x7c]
mov esi, dword [ebp + 0x10]
mov edi, dword [eax + edi*4 - 4]
push esi
call fcn.7830be08
push esi
mov word [edi], ax
call fcn.7830bde6
push esi
mov word [edi + 2], ax
call fcn.7830bdc5
push esi
mov word [edi + 4], ax
call fcn.7830bda3
push esi
mov word [edi + 6], ax
call fcn.7830bd81
push esi
mov word [edi + 8], ax
call fcn.7830bd1d
mov word [edi + 0xa], ax
mov dword [edi + 0xc], ebx
mov eax, dword [ebp - 0x14]
mov dword [eax], 0x10
jmp 0x7839ec6d
mov eax, dword [esi + 4]
cmp dword [eax + 0x78], ebx
jne 0x7839e8c9
mov eax, dword [eax + 0x14]
xor ecx, ecx
push 4
pop edx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call sym.MFC80U.DLL_Ordinal_762
mov ecx, dword [esi + 4]
mov dword [ecx + 0x78], eax
mov eax, dword [esi + 4]
mov ecx, dword [eax + 0x14]
shl ecx, 2
push ecx
push ebx
push dword [eax + 0x78]
call sub.MSVCR80.dll_memset
mov eax, dword [esi + 4]
mov ecx, dword [eax + 0x14]
add esp, 0x10
mov dword [eax + 0x80], ecx
mov eax, dword [esi + 4]
mov eax, dword [eax + 0x78]
cmp dword [eax + edi*4 - 4], ebx
jne 0x7839e8e7
push 0x10
call sym.MFC80U.DLL_Ordinal_762
pop ecx
mov ecx, dword [esi + 4]
mov ecx, dword [ecx + 0x78]
mov dword [ecx + edi*4 - 4], eax
push dword [ebp - 0x14]
mov eax, dword [esi + 4]
mov ecx, dword [eax + 0x78]
push 0x10
push dword [ecx + edi*4 - 4]
push 0xb
push edi
push dword [eax + 4]
call sub.ODBC32.dll_SQLBindCol
mov ecx, dword [esi + 4]
mov edx, dword [ecx]
movzx eax, ax
push eax
mov dword [ebp + 0xc], eax
call dword [edx + 0x54]
test eax, eax
jne 0x7839e920
mov ecx, dword [esi + 4]
mov eax, dword [ecx]
push ebx
push dword [ebp + 0xc]
call dword [eax + 0x60]
mov ecx, dword [esi + 4]
add ecx, 0x40
jmp 0x7839e807
mov eax, dword [esi + 4]
cmp dword [eax + 0x80], ebx
je 0x7839ec6d
mov eax, dword [eax + 0x78]
push dword [ebp + 0x10]
mov edi, dword [eax + edi*4 - 4]
call fcn.7830be08
push dword [ebp + 0x10]
mov word [edi], ax
call fcn.7830bde6
push dword [ebp + 0x10]
mov word [edi + 2], ax
call fcn.7830bdc5
push dword [ebp + 0x10]
mov word [edi + 4], ax
call fcn.7830bda3
push dword [ebp + 0x10]
mov word [edi + 6], ax
call fcn.7830bd81
push dword [ebp + 0x10]
mov word [edi + 8], ax
call fcn.7830bd1d
push 0x17
mov word [edi + 0xa], ax
mov dword [edi + 0xc], ebx
push 0x10
jmp 0x7839ec5d
cmp dword [ecx], 0xffffffff
jne 0x7839e9b1
push dword [ebp - 0x18]
mov ecx, dword [esi + 4]
call sym.MFC80U.DLL_Ordinal_5903
mov eax, dword [ebp + 0x10]
mov dword [eax], ebx
mov dword [eax + 4], ebx
jmp 0x7839ec6d
mov eax, dword [esi + 4]
mov eax, dword [eax + 0x78]
mov eax, dword [eax + edi*4 - 4]
mov dword [ebp - 4], ebx
movzx esi, word [eax + 6]
movzx ecx, word [eax + 0xa]
movzx edx, word [eax + 8]
movzx edi, word [eax + 4]
push esi
movzx esi, word [eax + 2]
movsx eax, word [eax]
push esi
lea esi, [ebp - 0x24]
push esi
call fcn.7830bed3
mov edx, dword [eax]
mov ecx, dword [ebp + 0x10]
mov dword [ecx], edx
mov eax, dword [eax + 4]
mov dword [ecx + 4], eax
jmp 0x7839e9ac
push dword [ebp - 0x18]
mov ecx, dword [esi + 4]
call sym.MFC80U.DLL_Ordinal_3935
test eax, eax
je case.0x7839e6e8.10
push dword [ebp + 0xc]
mov ecx, dword [esi + 0x10]
call sym.MFC80U.DLL_Ordinal_1236
mov ecx, dword [esi + 0x10]
push 0x3d
call sym.MFC80U.DLL_Ordinal_1248
push dword [ebp - 0x18]
mov ecx, dword [esi + 4]
call sym.MFC80U.DLL_Ordinal_3935
test eax, eax
je 0x7839ec6d
mov ecx, dword [esi + 4]
mov eax, dword [ecx + 0x78]
mov ebx, dword [eax + edi*4 - 4]
lea eax, [edi - 1]
push eax
call sym.MFC80U.DLL_Ordinal_3936
test eax, eax
je 0x7839ea65
mov eax, dword [ebp - 0x14]
or dword [eax], 0xffffffff
jmp 0x7839eab9
push dword [ebp + 0x10]
call fcn.7830be08
push dword [ebp + 0x10]
mov word [ebx], ax
call fcn.7830bde6
push dword [ebp + 0x10]
mov word [ebx + 2], ax
call fcn.7830bdc5
push dword [ebp + 0x10]
mov word [ebx + 4], ax
call fcn.7830bda3
push dword [ebp + 0x10]
mov word [ebx + 6], ax
call fcn.7830bd81
push dword [ebp + 0x10]
mov word [ebx + 8], ax
call fcn.7830bd1d
and dword [ebx + 0xc], 0
mov word [ebx + 0xa], ax
mov eax, dword [ebp - 0x14]
mov dword [eax], 0x10
mov eax, dword [esi + 4]
test word [eax + 0x2c], 0x4000
jne 0x7839ec6d
mov ecx, dword [esi + 0x10]
push 0x3f
call sym.MFC80U.DLL_Ordinal_1248
push dword [esi + 0x1c]
mov ecx, dword [esi + 0x10]
call sym.MFC80U.DLL_Ordinal_1236
push dword [ebp - 0x14]
inc dword [esi + 0x28]
mov eax, dword [esi + 4]
mov eax, dword [eax + 0x38]
push 0
push ebx
push 0
push 0x17
shl edi, 4
movzx eax, word [eax + edi - 0xc]
push eax
movzx eax, word [esi + 0x28]
push 0xb
push 1
push eax
push dword [esi + 0x2c]
call sub.ODBC32.dll_SQLBindParameter
jmp 0x7839ec6d
mov eax, dword [esi + 0x18]
cmp eax, ebx
jne 0x7839eb1b
cmp dword [esi + 8], ebx
je 0x7839eb28
mov edi, dword [ebp + 0x10]
cmp eax, edi
jne 0x7839ec6d
jmp 0x7839eb2b
mov edi, dword [ebp + 0x10]
cmp dword [esi + 0x14], ebx
push dword [ebp - 0x18]
mov ecx, dword [esi + 4]
je 0x7839eb4b
call sym.MFC80U.DLL_Ordinal_5903
mov dword [edi], ebx
mov dword [edi + 4], ebx
mov eax, dword [ebp - 0x14]
or dword [eax], 0xffffffff
jmp 0x7839ec6d
call sym.MFC80U.DLL_Ordinal_1413
jmp 0x7839e874
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
or ecx, dword [eax + 4]
je 0x7839ec6d
push dword [ebp - 0x18]
mov ecx, dword [esi + 4]
call sym.MFC80U.DLL_Ordinal_5797
push dword [ebp - 0x18]
mov ecx, dword [esi + 4]
call sym.MFC80U.DLL_Ordinal_1413
jmp 0x7839ec6d
mov edi, dword [ebp + 0x10]
mov eax, dword [edi]
or eax, dword [edi + 4]
je 0x7839ec59
push dword [ebp - 0x18]
mov ecx, dword [esi + 4]
call sym.MFC80U.DLL_Ordinal_1413
jmp 0x7839ec59
mov ecx, dword [esi + 4]
mov edx, dword [ecx + 0x3c]
mov eax, edi
shl eax, 4
lea ebx, [edx + eax - 0x10]
movzx eax, byte [ebx + 0xc]
push eax
lea eax, [edi - 1]
push eax
call sym.MFC80U.DLL_Ordinal_5824
mov ecx, dword [esi + 4]
lea eax, [edi - 1]
push eax
call sym.MFC80U.DLL_Ordinal_3936
test eax, eax
jne 0x7839eb40
push dword [ebx + 8]
push dword [ebp - 0x14]
push dword [ebp + 0x10]
push dword [ebx]
call sym.MFC80U.DLL_Ordinal_1032
mov eax, dword [esi + 4]
mov eax, dword [eax + 0x78]
mov esi, dword [ebp + 0x10]
mov edi, dword [eax + edi*4 - 4]
push esi
call fcn.7830be08
push esi
mov word [edi], ax
call fcn.7830bde6
push esi
mov word [edi + 2], ax
call fcn.7830bdc5
push esi
mov word [edi + 4], ax
call fcn.7830bda3
push esi
mov word [edi + 6], ax
call fcn.7830bd81
push esi
mov word [edi + 8], ax
call fcn.7830bd1d
and dword [edi + 0xc], 0
mov word [edi + 0xa], ax
jmp 0x7839ec6d
mov eax, dword [esi + 4]
mov eax, dword [eax + 0x3c]
push 8
pop esi
shl edi, 4
push esi
lea edi, [eax + edi - 0x10]
call sym.MFC80U.DLL_Ordinal_762
cmp eax, ebx
pop ecx
je 0x7839ec4d
mov dword [eax], ebx
mov dword [eax + 4], ebx
jmp 0x7839ec4f
xor eax, eax
mov dword [edi], eax
mov dword [edi + 8], esi
jmp 0x7839ec6d
mov edi, dword [ebp + 0x10]
push 0x17
push 8
push 0xb
push dword [ebp - 0x14]
mov ecx, esi
push edi
push dword [ebp + 0xc]
call sym.MFC80U.DLL_Ordinal_1893
call fcn.783a77d0
ret 0xc