Function at 0x45a8a0
Capabilities:
Reference wmi statements

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x45ab70
push rbp
mov rbp, rsp
sub rsp, 0x68
mov rcx, qword [rax + 0x20]
mov rdx, qword [rax + 8]
nop word [rax + rax]
test rcx, rcx
je 0x45aad0
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x50], rdx
mov rdx, qword [rax + 0x48]
mov rbx, qword [rax]
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x60], rdx
mov rax, rcx
call sym.runtime.findfunc
test rax, rax
je 0x45a98b
mov rdx, qword [rsp + 0x78]
mov rsi, qword [rdx + 0x10]
nop
cmp qword [rdx + 0x20], rsi
jne 0x45a914
mov rdi, qword [rdx + 0x28]
cmp qword [rdx + 0x30], rdi
je 0x45aaec
mov rsi, qword [rsp + 0x48]
movzx edi, byte [rsi + 0x28]
nop dword [rax]
cmp dil, 0x13
je 0x45a932
cmp dil, 3
je 0x45a932
cmp dil, 6
jne 0x45a93f
movzx edi, byte [rdx + 0x59]
or edi, 4
mov byte [rdx + 0x59], dil
jmp 0x45a94a
movzx edi, byte [rdx + 0x59]
and edi, 0xfffffffb
mov byte [rdx + 0x59], dil
movzx esi, byte [rsi + 0x28]
mov byte [rdx + 0x58], sil
mov qword [rdx], rax
mov qword [rdx + 8], rbx
mov rsi, qword [rdx + 0x20]
mov qword [rdx + 0x10], rsi
mov qword [rdx + 0x20], 0
mov rsi, qword [rdx + 0x30]
mov qword [rdx + 0x28], rsi
mov qword [rdx + 0x30], 0
mov rax, rdx
xor ebx, ebx
mov ecx, ebx
call sym.runtime._unwinder_.resolveInternal
add rsp, 0x68
pop rbp
ret
mov rax, qword [rsp + 0x78]
movzx ecx, byte [rax + 0x59]
test cl, 2
sete dl
jne 0x45a9c4
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsi + 0x30]
cmp byte [rdi + 0xe8], 0
je 0x45a9bd
mov rdi, qword [rsp + 0x48]
cmp byte [rdi + 0x28], 0x13
jne 0x45a9ce
xor edx, edx
jmp 0x45a9ce
mov rdi, qword [rsp + 0x48]
jmp 0x45a9ce
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x48]
test cl, 3
je 0x45a9db
test dl, dl
je 0x45aab8
mov byte [rsp + 0x27], cl
nop
test rdi, rdi
jne 0x45a9eb
xor ebx, ebx
xor edx, edx
jmp 0x45aa05
mov ebx, dword [rdi + 4]
mov rax, qword [rsp + 0x50]
call sym.runtime._moduledata_.funcName
mov rsi, qword [rsp + 0x60]
mov rdx, rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x58], rdx
mov rcx, qword [rsi + 0x98]
mov qword [rsp + 0x40], rcx
mov rdi, qword [rax + 0x20]
mov qword [rsp + 0x38], rdi
call sym.runtime.printlock
lea rax, [0x00511703]
mov ebx, 0xb
call sym.runtime.printstring
mov rax, qword [rsp + 0x40]
nop
call sym.runtime.printuint
lea rax, [0x0051762f]
mov ebx, 0x1b
call sym.runtime.printstring
mov rax, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x28]
call sym.runtime.printstring
lea rax, [0x0051205b]
mov ebx, 0xd
call sym.runtime.printstring
mov rax, qword [rsp + 0x38]
nop dword [rax + rax]
call sym.runtime.printhex
call sym.runtime.printnl
call sym.runtime.printunlock
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax]
mov rbx, qword [rax + 8]
mov rax, rcx
mov rcx, qword [rsp + 0x78]
xor edi, edi
call sym.runtime.tracebackHexdump
movzx eax, byte [rsp + 0x27]
test al, 3
mov rax, qword [rsp + 0x78]
jmp 0x45aabb
test cl, 3
je 0x45aadb
mov qword [rax + 0x20], 0
call sym.runtime._unwinder_.finishInternal
add rsp, 0x68
pop rbp
ret
call sym.runtime._unwinder_.finishInternal
add rsp, 0x68
pop rbp
ret
lea rax, [0x005133e3]
mov ebx, 0x11
call sym.runtime.throw
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rdi
call sym.runtime.printlock
lea rax, [0x005180cd]
mov ebx, 0x1d
call sym.runtime.printstring
mov rax, qword [rsp + 0x38]
call sym.runtime.printhex
lea rax, [0x00510574]
mov ebx, 4
call sym.runtime.printstring
mov rax, qword [rsp + 0x30]
call sym.runtime.printhex
call sym.runtime.printnl
call sym.runtime.printunlock
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax]
mov rbx, qword [rax + 8]
mov rax, qword [rsp + 0x78]
mov rdi, qword [rax + 0x28]
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call sym.runtime.tracebackHexdump
lea rax, [0x005129a5]
mov ebx, 0xf
call sym.runtime.throw
nop
mov qword [rsp + 8], rax
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
nop
jmp sym.runtime._unwinder_.next