Function at 0x1400048c0
Capabilities:
Print debug messages

Disassembly:
mov rax, rsp
push rdi
push r12
push r13
sub rsp, 0x340
mov qword [rsp + 0x58], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
mov rax, qword [0x1400781a0]
xor rax, rsp
mov qword [rsp + 0x330], rax
mov rsi, rdx
mov rbp, rcx
xor r13d, r13d
mov rbx, qword [0x1400803d0]
test rbx, rbx
jne 0x1400049c1
mov ecx, 0x310
call fcn.14001f560
mov rbx, rax
mov qword [rsp + 0x30], rax
test rax, rax
je 0x1400049b7
call fcn.14002b6f8
mov rcx, rax
mov eax, r13d
test rcx, rcx
setne al
test eax, eax
jne 0x14000494a
mov ecx, 0x80004005
call fcn.140002210
int3
mov rax, qword [rcx]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbx], rax
mov word [rbx + 0x64], 0
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, [0x1400660dc]
repne scasw ax, word [rdi]
not rcx
lea r8d, [rcx - 1]
lea rdx, [0x1400660dc]
mov rcx, rbx
call fcn.140005c50
lea rcx, [rbx + 8]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
lea rcx, [rbx + 0x30]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
lea rcx, [rbx + 0x26c]
mov word [rcx], 0
lea r8, [0x1400660e0]
mov edx, 0x50
call fcn.140036860
nop
jmp 0x1400049ba
mov rbx, r13
mov qword [0x1400803d0], rbx
mov r8, rsi
lea rdx, str.DiscoveryTryExists__s_
mov rcx, rbx
call fcn.14000f840
lea rcx, [rsp + 0x60]
call fcn.1400028a0
nop
mov r8, rsi
lea rdx, [rsp + 0x60]
mov rcx, rbp
call fcn.140003150
test eax, eax
jne 0x140004a23
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x140004a0b
mov rdx, qword [rsp + 0x98]
test rdx, rdx
je 0x140004a0b
call rdx
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x140004a1b
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
or eax, 0xffffffff
jmp 0x140004eef
mov qword [rsp + 0x270], reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x268], r13
mov byte [rsp + 0x258], 0
mov qword [rsp + 0x298], reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x290], r13
mov byte [rsp + 0x280], 0
xor r8d, r8d
lea edx, [r8 + 0x1a]
lea rcx, [rsp + 0x278]
call fcn.140005a20
lea rcx, [rsp + 0x280]
mov rdx, qword [rsp + 0x298]
cmp rdx, 0x10
cmovae rcx, qword [rsp + 0x280]
mov r9d, 0x1a
lea r8, str._DevMgmt_DiscoveryTree.xml
call fcn.140034f40
mov qword [rsp + 0x290], 0x1a
lea rax, [rsp + 0x280]
cmp qword [rsp + 0x298], 0x10
cmovae rax, qword [rsp + 0x280]
mov byte [rax + 0x1a], 0
lea rsi, [rsp + 0x280]
cmp qword [rsp + 0x298], 0x10
cmovae rsi, qword [rsp + 0x280]
mov rbp, qword [rsp + 0x68]
mov r12, qword [rsp + 0x70]
test r12, r12
je 0x140004d02
mov rdi, qword [rsp + 0xe0]
test rdi, rdi
jne 0x140004b4b
test rbp, rbp
je 0x140004b39
lea rdx, str.GetPage
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, rax
mov qword [rsp + 0xe0], rax
test rax, rax
jne 0x140004b4b
lea rcx, str.EWSIntf::get_page:_Function_not_found_in_DLL:_GetPage_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
jmp 0x140004d02
lea rcx, str.EWSIntf::get_page:_Attempting_to_lookup_GetPage_with_no_DLL_handle_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
jmp 0x140004d02
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x48], r13
mov qword [rsp + 0x50], 0x800
mov edx, 0x10000
lea rcx, [rsp + 0x38]
call fcn.1400027e0
mov rbx, qword [rsp + 0x38]
cmp al, 1
jne 0x140004cf5
mov dword [rsp + 0x30], r13d
lea rax, [rsp + 0x30]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x20], eax
mov r9, rbx
lea r8, [rsp + 0x2a0]
mov rdx, rsi
mov rcx, r12
call rdi
test eax, eax
je 0x140004cf5
mov eax, dword [rsp + 0x30]
mov qword [rsp + 0x40], rax
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
not rcx
lea rdi, [rcx - 1]
lea rax, [rsp + 0x258]
mov r8, qword [rsp + 0x258]
mov r10, qword [rsp + 0x270]
cmp r10, 0x10
cmovae rax, r8
cmp rbx, rax
jb 0x140004c44
lea rcx, [rsp + 0x258]
cmp r10, 0x10
cmovae rcx, r8
mov rax, qword [rsp + 0x268]
add rcx, rax
cmp rcx, rbx
jbe 0x140004c44
lea rax, [rsp + 0x258]
cmp r10, 0x10
cmovae rax, r8
mov r8, rbx
sub r8, rax
mov r9, rdi
lea rdx, [rsp + 0x250]
lea rcx, [rsp + 0x250]
call fcn.140005840
jmp 0x140004cf5
cmp rdi, 0xfffffffffffffffe
jbe 0x140004c4f
call fcn.140058730
cmp qword [rsp + 0x270], rdi
jae 0x140004c73
mov r8, qword [rsp + 0x268]
mov rdx, rdi
lea rcx, [rsp + 0x250]
call fcn.140005a20
jmp 0x140004c9f
test rdi, rdi
jne 0x140004c9f
mov qword [rsp + 0x268], r13
lea rax, [rsp + 0x258]
cmp qword [rsp + 0x270], 0x10
cmovae rax, qword [rsp + 0x258]
mov byte [rax], dil
jmp 0x140004cf5
test rdi, rdi
je 0x140004cf5
lea rcx, [rsp + 0x258]
mov r10, qword [rsp + 0x270]
cmp r10, 0x10
cmovae rcx, qword [rsp + 0x258]
mov r9, rdi
mov r8, rbx
mov rdx, r10
call fcn.140034f40
mov qword [rsp + 0x268], rdi
lea rax, [rsp + 0x258]
cmp qword [rsp + 0x270], 0x10
cmovae rax, qword [rsp + 0x258]
mov byte [rax + rdi], 0
test rbx, rbx
je 0x140004d02
mov rcx, rbx
call fcn.14001f5a4
mov rsi, qword [rsp + 0x268]
test rsi, rsi
je 0x140004e60
cmp rsi, 0x1a
jb 0x140004e60
add rsi, 0xffffffffffffffe7
lea rbx, [rsp + 0x258]
cmp qword [rsp + 0x270], 0x10
cmovae rbx, qword [rsp + 0x258]
mov r8, rsi
mov edx, gethostbyaddr
mov rcx, rbx
call fcn.1400358d0
mov rdi, rax
test rax, rax
je 0x140004e60
nop
nop
nop
mov r8d, 0x1a
lea rdx, str._ePrint_ePrintManifest.xml
mov rcx, rdi
call fcn.1400397e0
test eax, eax
je 0x140004da2
sub rbx, rdi
lea rsi, [rsi + rbx - 1]
lea rbx, [rdi + 1]
mov r8, rsi
mov edx, gethostbyaddr
mov rcx, rbx
call fcn.1400358d0
mov rdi, rax
test rax, rax
jne 0x140004d60
jmp 0x140004e60
lea rax, [rsp + 0x258]
cmp qword [rsp + 0x270], 0x10
cmovae rax, qword [rsp + 0x258]
sub rdi, rax
cmp rdi, 0xffffffffffffffff
je 0x140004e60
cmp qword [rsp + 0x298], 0x10
jb 0x140004de1
mov rcx, qword [rsp + 0x280]
call fcn.14001f5a4
mov qword [rsp + 0x298], reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x290], r13
mov byte [rsp + 0x280], 0
cmp qword [rsp + 0x270], 0x10
jb 0x140004e15
mov rcx, qword [rsp + 0x258]
call fcn.14001f5a4
mov qword [rsp + 0x270], reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x268], r13
mov byte [rsp + 0x258], 0
test r12, r12
je 0x140004e48
mov rax, qword [rsp + 0x98]
test rax, rax
je 0x140004e48
mov rcx, r12
call rax
test rbp, rbp
je 0x140004e56
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, 1
jmp 0x140004eef
cmp qword [rsp + 0x298], 0x10
jb 0x140004e78
mov rcx, qword [rsp + 0x280]
call fcn.14001f5a4
mov qword [rsp + 0x298], reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x290], r13
mov byte [rsp + 0x280], 0
cmp qword [rsp + 0x270], 0x10
jb 0x140004eac
mov rcx, qword [rsp + 0x258]
call fcn.14001f5a4
mov qword [rsp + 0x270], reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x268], r13
mov byte [rsp + 0x258], 0
test r12, r12
je 0x140004edf
mov rax, qword [rsp + 0x98]
test rax, rax
je 0x140004edf
mov rcx, r12
call rax
test rbp, rbp
je 0x140004eed
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
xor eax, eax
mov rcx, qword [rsp + 0x330]
xor rcx, rsp
call fcn.140034e40
lea r11, [rsp + 0x340]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r13
pop r12
pop rdi
ret