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

Disassembly:
mov qword [rsp + 0x18], rbx
mov dword [rsp + 0x20], r9d
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov rbx, qword [rcx]
mov r15d, 2
mov rbp, qword [rcx + 8]
mov r14d, r8d
and dword [rsp + 0x80], 0
mov r12d, edx
and dword [rsp + 0x30], 0
mov rdi, rcx
mov r13d, dword [rbx + 0x44]
mov al, byte [rbp + 0x20]
dec r13d
mov rsi, qword [rcx + 0x10]
mov byte [rsp + 0x88], al
mov dword [rsp + 0x34], r13d
mov dword [rbx + 0x44], r13d
cmp edx, r15d
jne 0x18007b4e4
cmp byte [rbp + 0x21], 0x5a
jne 0x18007b4e4
xor eax, eax
jmp 0x18007b863
mov ecx, 0x39
test r14d, r14d
jle 0x18007b568
cmp byte [rbp + 0x20], 0x59
jne 0x18007b550
mov eax, dword [rsi + 0x90]
mov dword [rsp + 0x30], eax
cmp r12d, r15d
jne 0x18007b52e
mov r9b, Ordinal_88
cmp byte [rbp + 0x21], r9b
jne 0x18007b512
mov r8d, dword [rdi + 0x30]
jmp 0x18007b516
mov r8d, dword [rdi + 0x28]
mov eax, SQLGetData
mov edx, 0x37
cmovne edx, ecx
lea ecx, [rax + 8]
cmovne eax, ecx
mov ecx, dword [rax + rdi]
jmp 0x18007b53a
mov r8d, dword [rdi + 0x38]
mov edx, reloc.WLDAP32.dll_Ordinal_54
mov ecx, dword [rdi + 0x30]
mov dword [rsp + 0x28], r13d
mov r9d, r14d
mov dword [rsp + 0x20], ecx
mov rcx, rdi
call fcn.18007b1d4
jmp 0x18007b568
mov r9d, r13d
mov dword [rsp + 0x20], 1
mov edx, 0x2f
mov rcx, rsi
call fcn.180031b54
cmp r12d, 1
jne 0x18007b581
cmp dword [rbp + 0x84], 0
jne 0x18007b581
xor edx, edx
mov rcx, rdi
call fcn.18007a87c
mov eax, dword [rsi + 0x90]
mov dword [rsp + 0x38], eax
mov al, byte [rbp + 0x22]
cmp byte [rbp + 0x21], al
jne 0x18007b69f
test r14d, r14d
je 0x18007b69f
cmp byte [rbp + 0x20], 0x59
jne 0x18007b69f
cmp r12d, r15d
jne 0x18007b69f
mov al, byte [rbx + 0x1f]
test al, al
jne 0x18007b5c3
inc dword [rbx + 0x38]
mov r15d, dword [rbx + 0x38]
jmp 0x18007b5d7
dec al
movzx eax, al
mov byte [rbx + 0x1f], al
mov r15d, dword [rbx + rax*4 + 0xbc]
test al, al
jne 0x18007b5e0
inc dword [rbx + 0x38]
mov r14d, dword [rbx + 0x38]
jmp 0x18007b5f0
dec al
movzx eax, al
mov byte [rbx + 0x1f], al
mov r14d, dword [rbx + rax*4 + 0xbc]
mov r8d, dword [rdi + 0x28]
mov r9d, r15d
and dword [rsp + 0x20], 0
mov edx, 0x80
mov rcx, rsi
call fcn.180031b54
mov r8d, dword [rdi + 0x38]
mov r9d, r14d
and dword [rsp + 0x20], 0
mov edx, 0x80
mov rcx, rsi
call fcn.180031b54
mov r9d, r13d
mov dword [rsp + 0x20], r15d
mov r8d, r14d
mov edx, 0x39
mov rcx, rsi
call fcn.180031b54
test r15d, r15d
je 0x18007b654
cmp byte [rbx + 0x1f], 8
jae 0x18007b654
movzx eax, byte [rbx + 0x1f]
mov dword [rbx + rax*4 + 0xbc], r15d
inc byte [rbx + 0x1f]
test r14d, r14d
je 0x18007b66e
cmp byte [rbx + 0x1f], 8
jae 0x18007b66e
movzx eax, byte [rbx + 0x1f]
mov dword [rbx + rax*4 + 0xbc], r14d
inc byte [rbx + 0x1f]
mov r8d, dword [rbp + 0x84]
mov r9d, 1
mov r15d, dword [rdi + 0x28]
mov r13d, dword [rdi + 0x2c]
test r8d, r8d
jne 0x18007b6ca
mov eax, dword [rdi + 0x20]
mov r8d, r15d
mov rdx, rbp
mov dword [rsp + 0x20], eax
mov rcx, rdi
call fcn.18007a42c
jmp 0x18007b6f3
mov ecx, r12d
sub ecx, 1
je 0x18007b6e3
cmp ecx, 1
je 0x18007b66e
cmp dword [rbp + 0x84], 0
mov r15d, dword [rdi + 0x38]
mov r13d, dword [rdi + 0x3c]
je 0x18007b6de
mov r8d, dword [rbp + 0x88]
mov r9d, 1
and dword [rsp + 0x20], 0
mov edx, 0x53
mov rcx, rsi
call fcn.180031b54
jmp 0x18007b6f3
xor r9d, r9d
jmp 0x18007b688
mov r15d, dword [rdi + 0x30]
mov rcx, rdi
mov r13d, dword [rdi + 0x34]
call fcn.18007ad60
cmp r12d, dword [rdi + 0x24]
jne 0x18007b730
and dword [rsp + 0x20], 0
xor r9d, r9d
mov r8d, r15d
mov rcx, rsi
lea edx, [r9 + 0x7b]
call fcn.180031b54
movsxd rax, dword [rsi + 0x90]
test eax, eax
jle 0x18007b730
lea rcx, [rax + rax*2]
mov edx, 2
mov rax, qword [rsi + 0x88]
mov word [rax + rcx*8 - 0x16], dx
cmp dword [rsp + 0x98], 0
mov r12d, reloc.Cabinet.dll_FCIAddFile
mov eax, dword [rsi + 0x90]
mov r8d, r15d
mov rcx, rsi
lea edx, [r12 - 6]
je 0x18007b78f
and dword [rsp + 0x20], 0
lea r9d, [rax + 2]
call fcn.180031b54
and dword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
mov edx, r12d
mov rcx, rsi
call fcn.180031b54
cmp byte [rsp + 0x88], 0x4c
mov r12d, eax
mov dword [rsp + 0x80], eax
je 0x18007b835
jmp 0x18007b7d0
xor r9d, r9d
cmp byte [rsp + 0x88], 0x4c
setne r9b
and dword [rsp + 0x20], 0
inc r9d
add r9d, eax
call fcn.180031b54
cmp byte [rsp + 0x88], 0x4c
je 0x18007b82d
and dword [rsp + 0x20], 0
xor r8d, r8d
mov r9d, dword [rsp + 0x34]
mov edx, r12d
mov rcx, rsi
call fcn.180031b54
mov rax, qword [rbp + 0x18]
test rax, rax
je 0x18007b7f1
mov r14d, dword [rax]
test r14d, r14d
je 0x18007b7f4
mov edx, r14d
mov rcx, rbx
call fcn.1800486c8
mov r12d, eax
jmp 0x18007b7f7
xor r14d, r14d
xor r12d, r12d
mov r8d, r12d
mov edx, r15d
mov rcx, rdi
call fcn.18007a39c
mov eax, dword [rsp + 0x38]
mov r9d, r13d
mov rdx, qword [rbp + 0x18]
mov r8d, r12d
mov rcx, rbx
mov dword [rsp + 0x20], eax
call fcn.18007b100
mov r8d, r14d
mov edx, r12d
mov rcx, rbx
call fcn.18004871c
mov r12d, dword [rsp + 0x80]
mov eax, dword [rsp + 0x30]
test eax, eax
je 0x18007b854
and dword [rsp + 0x20], 0
xor r8d, r8d
mov r9d, eax
mov rcx, rsi
lea edx, [r8 + 0xb]
call fcn.180031b54
mov edx, dword [rsp + 0x34]
mov rcx, rsi
call fcn.180031f48
mov eax, r12d
mov rbx, qword [rsp + 0x90]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret