Function at 0x140036df0
Capabilities:
Reference sql statements

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x10b0]
mov eax, 0x11b0
call fcn.1400a6370
sub rsp, rax
mov rax, qword [0x14012a210]
xor rax, rsp
mov qword [rbp + 0x10a0], rax
mov rdi, r9
mov rsi, rdx
mov r15, qword [rbp + 0x1100]
mov qword [rsp + 0x30], r15
mov r13d, 0x80004005
mov rax, qword [r9 + 8]
cmp qword [r9], rax
je 0x140037922
xor edx, edx
mov r8d, 0x800
lea rcx, [rbp + 0x8a0]
call fcn.1400a83f0
lea r8, str.SELECT_PNPDeviceID__MACAddress_FROM_Win32_NetworkAdapter_WHERE
mov edx, 0x400
lea rcx, [rbp + 0x8a0]
call fcn.1400b81fc
mov rbx, qword [rdi]
cmp rbx, qword [rdi + 8]
je 0x140036f50
cmp qword [rdi], rbx
je 0x140036ea9
lea r8, [0x140105df8]
mov edx, 0x400
lea rcx, [rbp + 0x8a0]
call fcn.1400bc87c
mov rdx, rbx
lea rcx, [rbp + 0x20]
call fcn.140012240
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x270]
call fcn.1400a83f0
lea r9, [rbp + 0x20]
cmp qword [rbp + 0x38], 8
cmovae r9, qword [rbp + 0x20]
lea r8, str._MACAddress____s_
mov edx, 0x104
lea rcx, [rbp + 0x270]
call fcn.140036160
lea r8, [rbp + 0x270]
mov edx, 0x400
lea rcx, [rbp + 0x8a0]
call fcn.1400bc87c
mov rdx, qword [rbp + 0x38]
cmp rdx, 8
jb 0x140036f47
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140036f42
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140037961
call fcn.1400a59a4
add rbx, 0x20
jmp 0x140036e82
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
xor r14d, r14d
mov qword [rbp - 0x30], r14
mov qword [rbp - 0x28], r14
lea ecx, [r14 + 0x40]
call fcn.1400a5718
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rbp - 0x30], rax
mov qword [rbp + 0x40], r14
mov rsi, qword [rsi]
lea rcx, [rbp + 0x8a0]
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov rdi, rax
mov qword [rbp - 0x20], rax
test rax, rax
je 0x140037967
lea rcx, [0x140100ce8]
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov rbx, rax
mov qword [rbp + 0x10], rax
test rax, rax
je 0x140037972
mov rax, qword [rsi]
lea rcx, [rbp + 0x40]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], r14
lea r9d, [r14 + 0x20]
mov r8, rdi
mov rdx, rbx
mov rcx, rsi
call qword [rax + SHCreateDirectory]
mov r13d, eax
mov rcx, rbx
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
nop
mov rcx, rdi
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
lea r8d, [r14 + 1]
lea r12, [r14 - 1]
test r13d, r13d
js 0x1400374e0
xor edi, edi
mov qword [rbp + 0x10], rdi
mov dword [rbp + 0x18], edi
nop word [rax + rax]
mov rcx, qword [rbp + 0x40]
mov rax, qword [rcx]
lea rdx, [rbp + 0x18]
mov qword [rsp + 0x20], rdx
lea r9, [rbp + 0x10]
mov edx, 0x2710
call qword [rax + 0x20]
mov r14d, eax
test eax, eax
jne 0x1400374ab
cmp dword [rbp + 0x18], 1
jne 0x1400374ab
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x48], xmm0
mov qword [rbp - 0x38], rax
lea rcx, [rbp - 0x48]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rbp + 0x10]
mov rax, qword [rcx]
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rdi
lea r9, [rbp - 0x48]
xor r8d, r8d
lea rdx, str.PNPDeviceID
call qword [rax + 0x20]
mov r13d, eax
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], rax
lea rcx, [rbp - 0x60]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
nop
test r13d, r13d
js 0x140037496
mov rcx, qword [rbp + 0x10]
mov rax, qword [rcx]
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rdi
lea r9, [rbp - 0x60]
xor r8d, r8d
lea rdx, str.MACAddress
call qword [rax + 0x20]
mov r13d, eax
test eax, eax
js 0x140037496
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x480]
call fcn.1400a83f0
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x270]
call fcn.1400a83f0
mov r9, qword [rbp - 0x40]
lea r8, [0x140103020]
mov edx, 0x208
lea rcx, [rbp + 0x480]
call fcn.140036160
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x60]
call fcn.1400a83f0
lea r8, [rbp + 0x480]
mov edx, 0x104
lea rcx, [rbp + 0x60]
call fcn.1400b81fc
lea rax, [rbp + 0x60]
mov rcx, r12
nop dword [rax]
inc rcx
cmp word [rax + rcx*2], 0
jne 0x140037150
mov ebx, edi
mov rax, rdi
movsxd rdx, ecx
test ecx, ecx
jle 0x14003795b
nop word [rax + rax]
cmp word [rbp + rax*2 + 0x60], 0x5c
je 0x140037188
inc ebx
inc rax
cmp rax, rdx
jge 0x14003795b
jmp 0x140037170
add rax, rax
cmp rax, 0x208
jae 0x14003795b
mov word [rbp + rax + 0x60], di
lea r8, [rbp + 0x60]
mov edx, 0x104
lea rcx, [rbp + 0x270]
call fcn.1400b81fc
lea rax, [rbp + 0x60]
mov rcx, r12
nop dword [rax + rax]
inc rcx
cmp word [rax + rcx*2], 0
jne 0x1400371c0
mov r8d, edi
mov rax, rdi
movsxd rdx, ecx
test ecx, ecx
jle 0x1400371ea
cmp word [rbp + rax*2 + 0x60], 0x7b
je 0x1400371f1
inc r8d
inc rax
cmp rax, rdx
jl 0x1400371d7
mov r8d, r12d
test ecx, ecx
jle 0x140037208
mov ecx, edi
mov rax, rdi
cmp word [rbp + rax*2 + 0x60], 0x7d
je 0x14003720b
inc ecx
inc rax
cmp rax, rdx
jl 0x1400371f6
mov ecx, r12d
test r8d, r8d
jne 0x14003724e
test ecx, ecx
jle 0x14003724e
lea r8, [rbp + 0x480]
mov edx, 0x104
lea rcx, [rbp + 0x60]
call fcn.1400b81fc
movsxd rax, ebx
lea r8, [rbp + 0x482]
lea r8, [r8 + rax*2]
mov edx, 0x104
mov r9d, 5
lea rcx, [rbp + 0x270]
call fcn.1400bbf64
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x690]
call fcn.1400a83f0
mov r9, qword [rbp - 0x58]
lea r8, [0x140103020]
mov edx, 0x208
lea rcx, [rbp + 0x690]
call fcn.140036160
lea rcx, [rbp + 0x480]
mov rax, r12
nop dword [rax + rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x140037290
test rax, rax
je 0x140037490
lea rax, [rbp + 0x690]
mov r8, r12
nop dword [rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x1400372b0
test r8, r8
je 0x140037490
mov qword [rbp + 0x20], rdi
mov qword [rbp + 0x30], rdi
mov qword [rbp + 0x38], 7
mov word [rbp + 0x20], di
lea rdx, [rbp + 0x690]
lea rcx, [rbp + 0x20]
call fcn.140011160
nop
lea rcx, [rbp + 0x270]
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbp - 0x20], rax
test rax, rax
je 0x140037989
mov rsi, qword [rbp - 0x30]
mov rbx, qword [rsi + 8]
mov qword [rbp - 0x10], rbx
mov dword [rbp - 8], edi
mov rdi, rsi
cmp byte [rbx + 0x19], 0
jne 0x140037374
xor esi, esi
lea r15d, [rsi + 1]
nop dword [rax]
nop word [rax + rax]
mov qword [rbp - 0x10], rbx
xor r9d, r9d
mov r8d, 0x400
mov rdx, rax
mov rcx, qword [rbx + 0x20]
call qword [sym.imp.OLEAUT32.dll_VarR8Pow]
test eax, eax
jne 0x140037357
mov dword [rbp - 8], esi
mov rbx, qword [rbx + 0x10]
jmp 0x140037361
mov dword [rbp - 8], r15d
mov rdi, rbx
mov rbx, qword [rbx]
mov rax, qword [rbp - 0x20]
cmp byte [rbx + 0x19], sil
je 0x140037330
mov rsi, qword [rbp - 0x30]
mov r15, qword [rsp + 0x30]
cmp byte [rdi + 0x19], 0
jne 0x140037398
xor r9d, r9d
mov r8d, 0x400
mov rdx, qword [rdi + 0x20]
mov rcx, rax
call qword [sym.imp.OLEAUT32.dll_VarR8Pow]
test eax, eax
jne 0x140037409
mov rsi, qword [rbp - 0x30]
movabs rax, 0x3ffffffffffffff
cmp qword [rbp - 0x28], rax
je 0x140037983
lea rax, [rbp - 0x30]
mov qword [rbp + 0x48], rax
xor ebx, ebx
mov qword [rbp + 0x50], rbx
lea ecx, [rbx + 0x40]
call fcn.1400a5718
mov r8, rax
mov rax, qword [rbp - 0x20]
mov qword [r8 + 0x20], rax
mov qword [rbp - 0x20], rbx
mov qword [r8 + 0x28], rbx
mov qword [r8 + 0x30], rbx
mov qword [r8 + 0x38], rbx
mov qword [r8], rsi
mov qword [r8 + 8], rsi
mov qword [r8 + 0x10], rsi
mov word [r8 + 0x18], bx
mov qword [rbp + 0x50], rbx
movups xmm0, xmmword [rbp - 0x10]
movaps xmmword [rbp - 0x10], xmm0
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x30]
call fcn.1400340a0
mov rdi, rax
lea rcx, [rdi + 0x28]
mov rdx, qword [rdi + 0x30]
cmp rdx, qword [rdi + 0x38]
je 0x140037438
movups xmm0, xmmword [rbp + 0x20]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rbp + 0x30]
movups xmmword [rdx + 0x10], xmm1
mov ebx, 7
xor edi, edi
mov word [rbp + 0x20], di
add qword [rcx + 8], 0x20
jmp 0x140037447
lea r8, [rbp + 0x20]
call fcn.140019710
mov rbx, qword [rbp + 0x38]
xor edi, edi
mov rcx, qword [rbp - 0x20]
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
nop
cmp rbx, 8
jb 0x140037496
lea rdx, [rbx*2 + 2]
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140037489
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003797d
call fcn.1400a59a4
jmp 0x140037496
mov r13d, 0x80041001
lea rcx, [rbp - 0x60]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
nop
lea rcx, [rbp - 0x48]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
mov rcx, qword [rbp + 0x10]
test rcx, rcx
je 0x1400374c2
mov qword [rbp + 0x10], rdi
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rbp + 0x10]
test r14d, r14d
jne 0x1400374d5
test r13d, r13d
js 0x1400374d5
lea r8d, [r14 + 1]
jmp 0x140037020
test rcx, rcx
je 0x1400374e0
mov rax, qword [rcx]
call qword [rax + 0x10]
lea rax, [0x140105ed0]
mov qword [rsp + 0x40], rax
lea rax, str.ISAPNP
mov qword [rsp + 0x48], rax
lea rax, str.EISA
mov qword [rsp + 0x50], rax
lea rax, str.SERIAL
mov qword [rsp + 0x58], rax
lea rax, str.PCMCIA
mov qword [rsp + 0x60], rax
lea rax, str.SBP2
mov qword [rsp + 0x68], rax
lea rax, str.1394
mov qword [rsp + 0x70], rax
lea rax, [0x140105f18]
mov qword [rsp + 0x78], rax
lea rax, str.NVNET
mov qword [rbp - 0x80], rax
lea rax, str.B06BDRV
mov qword [rbp - 0x78], rax
lea rax, [0x140105f88]
mov qword [rbp - 0x70], rax
lea r8, [0x1400ff490]
mov edx, 8
mov rcx, r15
call fcn.1400b81fc
xor edx, edx
mov r14d, edx
nop word [rax + rax]
mov rsi, qword [rsp + r14*8 + 0x40]
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x10], xmm1
mov qword [rbp], rdx
cmp qword [rbp - 0x28], 0
jbe 0x140037694
mov rax, qword [rbp - 0x30]
mov rbx, qword [rax]
cmp rbx, rax
je 0x140037694
nop dword [rax]
mov rcx, qword [rbx + 0x20]
test rcx, rcx
jne 0x1400375c2
mov rdi, rdx
mov qword [rbp - 0x20], rdx
jmp 0x1400375eb
call qword [sym.imp.OLEAUT32.dll_SysAllocStringByteLen]
mov edx, eax
mov rcx, qword [rbx + 0x20]
call qword [sym.imp.OLEAUT32.dll_DllRegisterServer]
mov qword [rbp - 0x20], rax
mov rdi, rax
cmp qword [rbx + 0x20], 0
je 0x1400375eb
test rax, rax
je 0x140037994
mov rdx, rsi
mov rcx, rdi
call fcn.1400bc088
test eax, eax
je 0x140037660
mov rcx, rdi
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
je 0x14003762f
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x14003762a
cmp rbx, qword [rax + 0x10]
jne 0x14003762a
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x140037617
mov rbx, rax
jmp 0x14003764f
mov rbx, rax
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x14003764f
nop dword [rax + rax]
mov rbx, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x140037640
cmp rbx, qword [rbp - 0x30]
mov edx, 0
jne 0x1400375b0
jmp 0x140037687
lea rdx, [rbx + 0x28]
lea rax, [rbp - 0x10]
cmp rax, rdx
je 0x14003767e
mov r8, qword [rdx + 8]
mov rdx, qword [rdx]
lea rcx, [rbp - 0x10]
call fcn.140038220
nop
mov rcx, rdi
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov rcx, qword [rbp - 0x10]
mov rdx, qword [rbp - 8]
cmp rcx, rdx
jne 0x1400376ad
lea rcx, [rbp - 0x10]
call fcn.140037dc0
inc r14
cmp r14, 0xb
jge 0x1400376e9
xor edx, edx
jmp 0x140037580
mov r8, rdx
sub r8, rcx
sar r8, 5
xor r9d, r9d
call fcn.1400384a0
mov rdx, qword [rbp - 0x10]
mov r8, rdx
cmp qword [rdx + 0x18], 8
jb 0x1400376d0
mov r8, qword [rdx]
mov rdx, qword [rdx + 0x10]
add rdx, rdx
mov rcx, r15
call fcn.1400b81fc
nop
lea rcx, [rbp - 0x10]
call fcn.140037dc0
mov rax, r12
nop dword [rax]
inc rax
cmp word [r15 + rax*2], 0
jne 0x1400376f0
test rax, rax
jne 0x140037898
cmp qword [rbp - 0x28], rax
jbe 0x140037898
mov rax, qword [rbp - 0x30]
mov rbx, qword [rax]
cmp rbx, rax
je 0x1400378a0
movabs rcx, 0x7ffffffffffffff
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x10], xmm0
xor eax, eax
mov qword [rbp], rax
mov rsi, qword [rbx + 0x28]
mov r15, qword [rbx + 0x30]
cmp rsi, r15
je 0x14003782b
mov r14, r15
sub r14, rsi
sar r14, 5
cmp r14, rcx
ja 0x140037955
shl r14, 5
cmp r14, 0x1000
jb 0x140037790
lea rcx, [r14 + 0x27]
cmp rcx, r14
jbe 0x140037955
call fcn.1400a5718
test rax, rax
je 0x14003799f
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x1400377a0
test r14, r14
je 0x14003779d
mov rcx, r14
call fcn.1400a5718
mov rdi, rax
mov qword [rbp - 0x10], rdi
mov qword [rbp - 8], rdi
lea rax, [rdi + r14]
mov qword [rbp], rax
lea rax, [rbp - 0x10]
mov qword [rbp - 0x20], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x48], xmm0
mov qword [rbp + 0x48], rdi
mov qword [rbp + 0x50], rdi
lea rax, [rbp - 0x10]
mov qword [rbp + 0x58], rax
nop
mov rdx, rsi
mov rcx, rdi
call fcn.140012240
add rdi, 0x20
mov qword [rbp + 0x50], rdi
add rsi, 0x20
cmp rsi, r15
jne 0x1400377d0
mov qword [rbp + 0x48], rdi
mov rdx, rdi
mov rcx, rdi
call fcn.14001e530
mov qword [rbp - 8], rdi
mov rdx, qword [rbp - 0x10]
cmp rdx, rdi
je 0x14003782b
mov r8, rdx
cmp qword [rdx + 0x18], 8
jb 0x140037815
mov r8, qword [rdx]
mov rdx, qword [rdx + 0x10]
add rdx, rdx
mov r15, qword [rsp + 0x30]
mov rcx, r15
call fcn.1400b81fc
jmp 0x140037830
mov r15, qword [rsp + 0x30]
lea rcx, [rbp - 0x10]
call fcn.140037dc0
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
je 0x14003786f
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x140037863
nop dword [rax]
cmp rbx, qword [rax + 0x10]
jne 0x140037863
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x140037850
mov rbx, rax
mov rax, qword [rbp - 0x30]
jmp 0x140037715
mov rbx, rax
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x14003788f
nop dword [rax + rax]
mov rbx, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x140037880
mov rax, qword [rbp - 0x30]
jmp 0x140037715
mov rax, qword [rbp - 0x30]
nop dword [rax]
inc r12
cmp word [r15 + r12*2], 0
jne 0x1400378a0
test r12, r12
mov ecx, 1
cmove r13d, ecx
mov rcx, qword [rbp + 0x40]
test rcx, rcx
je 0x1400378ca
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rax, qword [rbp - 0x30]
mov rdi, qword [rax + 8]
cmp byte [rdi + 0x19], 0
jne 0x140037915
mov r8, qword [rdi + 0x10]
lea rdx, [rbp - 0x30]
lea rcx, [rbp - 0x30]
call fcn.1400381b0
mov rbx, rdi
mov rdi, qword [rdi]
lea rcx, [rbx + 0x28]
call fcn.140037dc0
mov rcx, qword [rbx + 0x20]
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov edx, 0x40
mov rcx, rbx
call fcn.1400a59a4
cmp byte [rdi + 0x19], 0
je 0x1400378d4
mov rax, qword [rbp - 0x30]
mov edx, 0x40
mov rcx, rax
call fcn.1400a59a4
mov eax, r13d
mov rcx, qword [rbp + 0x10a0]
xor rcx, rsp
call fcn.1400a5460
lea r11, [rsp + 0x11b0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140003e70
nop
call fcn.1400a5ae0
nop
call fcn.1400b4704
nop
mov ecx, 0x8007000e
call fcn.140003f50
nop
mov ecx, 0x8007000e
call fcn.140003f50
nop
call fcn.1400b4704
nop
call fcn.14001e9d0
nop
mov ecx, 0x8007000e
call fcn.140003f50
nop
mov ecx, 0x8007000e
call fcn.140003f50
nop
call fcn.1400b4704
int3