Function at 0x180012bd0
Capabilities:
Reference sql statements

Disassembly:
mov rax, rsp
mov dword [rax + 0x18], r8d
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
xor r13d, r13d
movsxd r15, ecx
mov r12d, r13d
mov r14, rdx
cmp qword [0x1800495d8], r12
je 0x18001326b
cmp qword [0x1800495e0], r12
je 0x18001326b
mov qword [rax + 8], rbx
lea rcx, [rbp - 0x30]
mov qword [rax - 0x30], rsi
mov qword [rax - 0x38], rdi
lea rax, str.SELECT_PNPDeviceID_FROM_Win32_NetworkAdapter_WHERE__MACAddress_IS_NOT_NULL__AND__NOT__PNPDeviceID_LIKE_ROOT___
imul rsi, r15, 0x38
mov qword [rbp - 0x38], r13
mov rdx, qword [rsi + rax]
call fcn.180012590
mov rcx, qword [rax]
test rcx, rcx
je 0x180012c42
mov rdi, qword [rcx]
jmp 0x180012c45
mov rdi, r13
mov ecx, 0x18
call fcn.180017cbc
mov rbx, rax
test rax, rax
je 0x18001327e
lea rcx, [0x180040af8]
mov qword [rax + 8], r13
mov dword [rax + 0x10], 1
call fcn.180017160
mov qword [rbx], rax
lea rdx, [rbp - 0x38]
mov rcx, qword [0x1800495d8]
mov r9d, 0x30
mov qword [rsp + 0x28], rdx
mov r8, rdi
mov rdx, rax
mov qword [rsp + 0x20], r13
mov r10, qword [rcx]
call qword [r10 + 0xa0]
mov edi, eax
mov ecx, 0xffffffff
lock xadd dword [rbx + 0x10], ecx
cmp ecx, 1
jne 0x180012ce1
mov rcx, qword [rbx]
test rcx, rcx
je 0x180012cc2
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r13
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x180012cd4
call fcn.180017cf8
mov qword [rbx + 8], r13
mov edx, 0x18
mov rcx, rbx
call fcn.180017cf8
mov rbx, qword [rbp - 0x30]
test rbx, rbx
je 0x180012d2e
mov eax, 0xffffffff
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x180012d2e
test rbx, rbx
je 0x180012d2e
mov rcx, qword [rbx]
test rcx, rcx
je 0x180012d0f
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r13
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x180012d21
call fcn.180017cf8
mov qword [rbx + 8], r13
mov edx, 0x18
mov rcx, rbx
call fcn.180017cf8
test edi, edi
jns 0x180012d57
mov eax, 0xfffffffd
mov rsi, qword [rsp + 0x68]
mov rbx, qword [rsp + 0xa0]
mov rdi, qword [rsp + 0x60]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov rcx, qword [rbp - 0x38]
test rcx, rcx
je 0x18001325d
xor edi, edi
lea rbx, [r14 + 0x600]
mov qword [rbp + 0x48], rdi
mov qword [rbp - 0x40], rdi
mov dword [rbp + 0x40], edi
test r14, r14
je 0x180012d87
cmp r13, 0xa
jge 0x18001325d
mov rax, qword [rcx]
lea rdx, [rbp + 0x40]
mov qword [rsp + 0x20], rdx
lea r9, [rbp - 0x40]
mov edx, 0xffffffff
lea r8d, [rdx + 2]
call qword [rax + 0x20]
cmp dword [rbp + 0x40], 0
je 0x180013259
test r14, r14
je 0x180013223
lea rcx, str.SELECT_PNPDeviceID_FROM_Win32_NetworkAdapter_WHERE__MACAddress_IS_NOT_NULL__AND__NOT__PNPDeviceID_LIKE_ROOT___
mov eax, dword [rsi + rcx + 8]
mov dword [r14 + 0xa00], eax
cmp dword [rsi + rcx + 8], 0
jle 0x180013221
xor r13d, r13d
nop word [rax + rax]
xor eax, eax
lea rcx, [rbp - 0x28]
mov qword [rbp - 0x28], rax
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], rax
call qword [sym.imp.OLEAUT32.dll_VariantClear]
mov ecx, edi
test edi, edi
je 0x180013048
sub ecx, 1
je 0x180012fb8
sub ecx, 1
je 0x180012f30
sub ecx, 1
je 0x180012eb5
cmp ecx, 1
jne 0x180013200
mov rcx, qword [rbp - 0x40]
lea rdx, str.SELECT_PNPDeviceID_FROM_Win32_NetworkAdapter_WHERE__MACAddress_IS_NOT_NULL__AND__NOT__PNPDeviceID_LIKE_ROOT___
mov rdx, qword [rsi + rdx + 0x30]
lea r9, [rbp - 0x28]
mov qword [rsp + 0x28], r13
xor r8d, r8d
mov qword [rsp + 0x20], r13
mov rax, qword [rcx]
call qword [rax + 0x20]
test eax, eax
js 0x180013200
cmp word [rbp - 0x28], 8
jne 0x180013200
mov r8, qword [rbp - 0x20]
lea rcx, [rbx + 0x200]
sub r8, rcx
mov edx, 0x100
lea rax, [rdx + 0x7ffffefe]
test rax, rax
je 0x180012ea3
movzx eax, word [r8 + rcx]
test ax, ax
je 0x180012ea3
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x180012e73
sub rcx, 2
mov word [rcx], r13w
jmp 0x180013200
test rdx, rdx
jne 0x180012eac
sub rcx, 2
mov word [rcx], r13w
jmp 0x180013200
mov rcx, qword [rbp - 0x40]
lea rdx, str.SELECT_PNPDeviceID_FROM_Win32_NetworkAdapter_WHERE__MACAddress_IS_NOT_NULL__AND__NOT__PNPDeviceID_LIKE_ROOT___
mov rdx, qword [rsi + rdx + 0x28]
lea r9, [rbp - 0x28]
mov qword [rsp + 0x28], r13
xor r8d, r8d
mov qword [rsp + 0x20], r13
mov rax, qword [rcx]
call qword [rax + 0x20]
test eax, eax
js 0x180013200
cmp word [rbp - 0x28], 8
jne 0x180013200
mov r8, qword [rbp - 0x20]
mov edx, 0x100
sub r8, rbx
mov rcx, rbx
nop
lea rax, [rdx + 0x7ffffefe]
test rax, rax
je 0x180012ea3
movzx eax, word [r8 + rcx]
test ax, ax
je 0x180012ea3
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x180012f00
sub rcx, 2
mov word [rcx], r13w
jmp 0x180013200
mov rcx, qword [rbp - 0x40]
lea rdx, str.SELECT_PNPDeviceID_FROM_Win32_NetworkAdapter_WHERE__MACAddress_IS_NOT_NULL__AND__NOT__PNPDeviceID_LIKE_ROOT___
mov rdx, qword [rsi + rdx + 0x20]
lea r9, [rbp - 0x28]
mov qword [rsp + 0x28], r13
xor r8d, r8d
mov qword [rsp + 0x20], r13
mov rax, qword [rcx]
call qword [rax + 0x20]
test eax, eax
js 0x180013200
cmp word [rbp - 0x28], 8
jne 0x180013200
mov r8, qword [rbp - 0x20]
lea rcx, [rbx - 0x200]
sub r8, rcx
mov edx, 0x100
nop dword [rax]
lea rax, [rdx + 0x7ffffefe]
test rax, rax
je 0x180012ea3
movzx eax, word [r8 + rcx]
test ax, ax
je 0x180012ea3
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x180012f80
sub rcx, 2
mov word [rcx], r13w
jmp 0x180013200
mov rcx, qword [rbp - 0x40]
lea rdx, str.SELECT_PNPDeviceID_FROM_Win32_NetworkAdapter_WHERE__MACAddress_IS_NOT_NULL__AND__NOT__PNPDeviceID_LIKE_ROOT___
mov rdx, qword [rsi + rdx + 0x18]
lea r9, [rbp - 0x28]
mov qword [rsp + 0x28], r13
xor r8d, r8d
mov qword [rsp + 0x20], r13
mov rax, qword [rcx]
call qword [rax + 0x20]
test eax, eax
js 0x180013200
cmp word [rbp - 0x28], 8
jne 0x180013200
mov r8, qword [rbp - 0x20]
lea rcx, [rbx - 0x400]
sub r8, rcx
mov edx, 0x100
nop word [rax + rax]
lea rax, [rdx + 0x7ffffefe]
test rax, rax
je 0x180012ea3
movzx eax, word [r8 + rcx]
test ax, ax
je 0x180012ea3
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x180013010
sub rcx, 2
mov word [rcx], r13w
jmp 0x180013200
mov rcx, qword [rbp - 0x40]
lea rdx, str.SELECT_PNPDeviceID_FROM_Win32_NetworkAdapter_WHERE__MACAddress_IS_NOT_NULL__AND__NOT__PNPDeviceID_LIKE_ROOT___
mov rdx, qword [rsi + rdx + 0x10]
lea r9, [rbp - 0x28]
mov qword [rsp + 0x28], r13
xor r8d, r8d
mov qword [rsp + 0x20], r13
mov rax, qword [rcx]
call qword [rax + 0x20]
test eax, eax
js 0x180013200
cmp word [rbp - 0x28], 8
jne 0x180013200
mov r8, qword [rbp - 0x20]
lea rcx, [rbx - 0x600]
sub r8, rcx
mov edx, 0x100
nop word [rax + rax]
lea rax, [rdx + 0x7ffffefe]
test rax, rax
je 0x1800130c5
movzx eax, word [r8 + rcx]
test ax, ax
je 0x1800130c5
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x1800130a0
jmp 0x1800130ca
test rdx, rdx
jne 0x1800130ce
sub rcx, 2
mov word [rcx], r13w
mov edx, r15d
movsxd rax, r12d
imul rcx, rax, 0xa04
add rcx, r14
test r15d, r15d
je 0x1800131f8
sub edx, 1
je 0x1800131f1
mov rax, 0xffffffffffffffff
cmp edx, 5
je 0x180013181
cmp word [rcx + rax*2 + 2], r13w
lea rax, [rax + 1]
jne 0x180013104
lea rdx, [rax + 1]
lea rdx, [rcx + rdx*2]
cmp rcx, rdx
je 0x180013200
cmp word [rcx], 0x20
je 0x180013130
add rcx, 2
cmp rcx, rdx
jne 0x180013121
cmp rcx, rdx
je 0x180013200
lea rax, [rcx + 2]
mov r9, rdx
sub r9, rax
mov r8, r13
inc r9
shr r9, 1
cmp rax, rdx
cmova r9, r13
test r9, r9
je 0x180013200
nop dword [rax]
movzx edx, word [rax]
cmp dx, 0x20
je 0x180013170
mov word [rcx], dx
add rcx, 2
add rax, 2
inc r8
cmp r8, r9
jne 0x180013160
jmp 0x180013200
cmp word [rcx + rax*2 + 2], r13w
lea rax, [rax + 1]
jne 0x180013181
lea rdx, [rax + 1]
lea rdx, [rcx + rdx*2]
cmp rcx, rdx
je 0x180013200
nop word [rax + rax]
cmp word [rcx], 0x3a
je 0x1800131af
add rcx, 2
cmp rcx, rdx
jne 0x1800131a0
cmp rcx, rdx
je 0x180013200
lea rax, [rcx + 2]
mov r9, rdx
sub r9, rax
mov r8, r13
inc r9
shr r9, 1
cmp rax, rdx
cmova r9, r13
test r9, r9
je 0x180013200
movzx edx, word [rax]
cmp dx, 0x3a
je 0x1800131e3
mov word [rcx], dx
add rcx, 2
add rax, 2
inc r8
cmp r8, r9
jne 0x1800131d3
jmp 0x180013200
call fcn.1800129c0
jmp 0x180013200
mov rdx, rcx
call fcn.1800126e0
lea rcx, [rbp - 0x28]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rax, str.SELECT_PNPDeviceID_FROM_Win32_NetworkAdapter_WHERE__MACAddress_IS_NOT_NULL__AND__NOT__PNPDeviceID_LIKE_ROOT___
inc edi
cmp edi, dword [rsi + rax + 8]
jl 0x180012de0
mov r13, qword [rbp + 0x48]
xor edi, edi
mov rcx, qword [rbp - 0x40]
inc r13
inc r12d
mov qword [rbp + 0x48], r13
add rbx, 0xa04
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rbp - 0x38]
test rcx, rcx
jne 0x180012d71
mov rdx, qword [rcx]
call qword [rdx + 0x10]
mov eax, r12d
jmp 0x180012d37
mov rcx, qword [rbp - 0x38]
mov rdx, qword [rcx]
call qword [rdx + 0x10]
mov eax, r12d
jmp 0x180012d37
mov eax, 0xfffffffe
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov ecx, 0x8007000e
call fcn.180017150
int3