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

Disassembly:
mov rcx, qword [rbx + 0x488]
test rcx, rcx
je 0x180003c57
call qword [sym.imp.api_ms_win_core_handle_l1_1_0.dll_CloseHandle]
mov qword [rbx + 0x488], 0
cmp dword [rbx + 0x274], 0
je 0x180003c8f
lea rcx, [0x18008ac20]
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_EnterCriticalSection]
mov rax, qword [rbx + 0x38]
mov rdx, qword [rbx + 0x30]
dec dword [0x18008a114]
mov qword [rax], rdx
lea rcx, [0x18008ac20]
mov qword [rdx + 8], rax
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_LeaveCriticalSection]
mov rcx, qword [rbx + 0x288]
test rcx, rcx
jne 0x18003d72f
mov rcx, qword [rbx + 0x290]
test rcx, rcx
jne 0x18003d739
mov rcx, qword [rbx + 0x2b0]
test rcx, rcx
jne 0x18003d743
mov rcx, qword [rbx + 0x2b8]
test rcx, rcx
jne 0x18003d74d
cmp dword [rbx + 0x16c], 0
je 0x180003ce5
cmp dword [rbx + 0x188], 0
jne 0x180052109
mov rcx, qword [rbx + 0x180]
test rcx, rcx
je 0x180003cf6
call fcn.1800079a8
cmp dword [rbx + 0x58], 0
je 0x180003d06
lea rcx, [rbx + 0x60]
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_DeleteCriticalSection]
mov rcx, qword [rbx + 0xe0]
test rcx, rcx
jne 0x18005213f
mov rdi, qword [0x18008a178]
test rdi, rdi
je 0x180052169
lea rax, [fcn.180008ab0]
cmp rdi, rax
jne 0x180052155
mov rcx, rbx
call fcn.180008ab0
jmp 0x180005237
mov eax, dword [rbx + 0x224]
xor r8d, r8d
mov dword [rsp + 0x80], r8d
test eax, eax
je 0x180004f92
cmp eax, 0x251d
jne 0x1800050a5
jmp 0x180004f92
mov r11, rsp
push rbx
push r12
sub rsp, 0x68
xor r12d, r12d
mov rbx, rcx
cmp dword [rcx + 0x16c], r12d
je 0x180051cf0
mov qword [r11 + 0x20], rbp
mov rbp, qword [rcx + 0x180]
mov qword [r11 - 0x18], rsi
or esi, 0xffffffff
test dword [rcx + 0x268], 0x100
mov qword [r11 - 0x20], rdi
mov qword [r11 - 0x30], r14
lea rax, [0x18001fd10]
je 0x18001579b
mov qword [r11 - 0x28], r13
mov qword [r11 - 0x38], r15
call fcn.180007a70
test byte [rbp + 0x10], 0x20
lea r14, [0x18008a130]
je 0x180003d51
mov r8d, 1
mov dword [rsp + 0x80], r8d
cmp dword [rbx + 0x16c], r12d
je 0x180004f92
mov rdi, qword [rbx + 0x180]
lea rcx, [rdi + 0x18]
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_EnterCriticalSection]
mov eax, dword [rdi + 0x10]
lea r8, [rbx + 0x40]
mov rdx, r8
test al, 2
je 0x180004f80
test al, 0x40
jne 0x180004f7a
test dword [rdx + 0x228], 0x100
je 0x180004f80
mov rdx, qword [rdx]
cmp rdx, r8
jne 0x180004f66
or eax, 0x40
mov dword [rdi + 0x10], eax
lea rcx, [rdi + 0x18]
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_LeaveCriticalSection]
mov r8d, dword [rsp + 0x80]
mov rcx, qword [0x18008a130]
cmp rcx, r14
je 0x180004fbd
test dword [rcx + 0x1c], 0x400
jne 0x180051d17
cmp rcx, r14
je 0x180004fbd
test dword [rcx + 0x1c], 0x400
jne 0x180051d47
cmp dword [rbx + 0x16c], r12d
je 0x180051fe4
cmp qword [rbx + 0x180], r12
je 0x180051fe4
mov r8d, 1
lock xadd dword [rbx], r8d
inc r8d
cmp r8d, 1
je 0x180051d74
inc byte [rbx + 0xf]
mov rcx, qword [0x18008a130]
lea rax, [0x18001fe80]
cmp rcx, r14
je 0x180005012
test dword [rcx + 0x1c], 0x400
jne 0x180051d84
mov r15, qword [rbx + 0x180]
lea rcx, [r15 + 0x18]
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_EnterCriticalSection]
movsxd rdx, dword [rsp + 0x80]
lea r13, [rbx + 0x40]
mov qword [rsp + 0x90], rdx
mov rax, r13
test byte [r15 + 0x10], 0x40
jne 0x18000506a
lea rcx, [rax - 0x40]
mov rax, qword [rax]
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x80], rcx
cmp rcx, rbx
jne 0x180051db6
cmp rax, r13
jne 0x18003d723
lea rcx, [r15 + 0x18]
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_LeaveCriticalSection]
cmp dword [rbx], r12d
je 0x1800050a5
inc byte [rbx + 0x23]
mov edi, esi
lock xadd dword [rbx], edi
dec edi
mov rcx, qword [0x18008a130]
cmp rcx, r14
je 0x18000509d
test dword [rcx + 0x1c], 0x400
jne 0x180051e94
test edi, edi
je 0x180051ecc
lea rcx, [rbp + 0x18]
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_EnterCriticalSection]
mov eax, dword [rbp + 0x10]
mov rdi, qword [rbp + 0x58]
mov r13, qword [rbp + 0x78]
test al, 0x40
je 0x1800051b0
bt eax, 9
jb 0x1800051b0
mov rcx, qword [rbp + 0x70]
test rcx, rcx
je 0x1800050ed
mov rax, rcx
test dword [rax + 0x3c], 0x1000000
jne 0x1800182f2
mov rax, qword [rax]
cmp rax, rcx
jne 0x1800050d8
mov eax, dword [rbp + 0x40]
bt rax, 0xa
jb 0x180005104
mov edx, 1
mov rcx, rbp
call fcn.180007d08
mov eax, dword [rbp + 0x40]
bt rax, 0xb
jb 0x180005118
xor edx, edx
mov rcx, rbp
call fcn.180007d08
cmp qword [rdi + 0x310], r12
jne 0x180005152
mov rcx, qword [rdi + 0x288]
test rcx, rcx
je 0x18000a062
mov rdx, qword [rdi + 0x290]
call fcn.180003980
mov qword [rdi + 0x288], r12
mov qword [rdi + 0x290], r12
mov qword [rdi + 0x310], rax
mov rcx, rdi
call fcn.180007e14
cmp rdi, r13
jne 0x180051ff2
mov rcx, qword [0x18008a130]
cmp rcx, r14
je 0x18000517c
test dword [rcx + 0x1c], 0x400
jne 0x180052059
lea rdi, [r13 + 0x40]
cmp qword [rdi], rdi
jne 0x1800333d4
cmp rcx, r14
je 0x18000519b
test dword [rcx + 0x1c], 0x400
jne 0x1800520b9
or dword [rbp + 0x10], 0x200
mov qword [rbp + 0x78], 0
mov r12d, 1
lea rcx, [rbp + 0x18]
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_LeaveCriticalSection]
mov r15, qword [rsp + 0x40]
test r12d, r12d
je 0x1800051f4
lock or dword [rbx + 0x268], 0x200
mov rdi, qword [r13 + 0x378]
lea rax, [fcn.1800261b0]
cmp rdi, rax
je 0x18003178e
mov rcx, rdi
call qword [sym.DNSAPI.dll_DnsNotifyResolverClusterIp]
mov rcx, r13
call rdi
mov r13, qword [rsp + 0x50]
lea rax, [0x18001fd10]
cmp dword [rbx], 0
mov rbp, qword [rsp + 0x98]
je 0x180005237
inc byte [rbx + 0x24]
lock xadd dword [rbx], esi
dec esi
mov rcx, qword [0x18008a130]
cmp rcx, r14
je 0x18000522f
test dword [rcx + 0x1c], 0x400
jne 0x1800520d8
test esi, esi
je 0x180003c3a
mov r14, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
mov eax, r12d
add rsp, 0x68
pop r12
pop rbx
ret
cmp qword [rdi + 0x290], r12
jne 0x180005131
mov rcx, qword [rdi + 0x2b0]
test rcx, rcx
jne 0x18000a088
cmp qword [rdi + 0x2b8], r12
je 0x180005152
mov rdx, qword [rdi + 0x2b8]
call fcn.180003980
mov qword [rdi + 0x2b0], r12
mov qword [rdi + 0x2b8], r12
jmp 0x18000514b
mov rcx, qword [0x18008a130]
lea r14, [0x18008a130]
cmp rcx, r14
je 0x180005200
test dword [rcx + 0x1c], 0x400
je 0x180005200
jmp 0x18003d729
mov dword [rbp + 0x68], 1
jmp 0x1800050ed
mov rcx, r13
call fcn.1800261b0
jmp 0x1800051f4
mov rdx, qword [rdi]
mov rax, qword [rdx + 8]
mov rcx, qword [rdx]
lea r12, [rdx - 0x40]
mov qword [rax], rcx
mov qword [rcx + 8], rax
mov qword [rdx + 8], rdx
mov qword [rdx], rdx
mov rcx, qword [0x18008a130]
cmp rcx, r14
je 0x180033409
test dword [rcx + 0x1c], 0x400
jne 0x18005207d
lea rdx, [0x18001fd10]
mov r9d, reloc.WS2_32.dll_ntohl
mov r8d, 0x1786
mov rcx, r12
call sym.DNSAPI.dll_DeRefQueryBlobEx
cmp qword [rdi], rdi
jne 0x1800333d4
mov rcx, qword [0x18008a130]
jmp 0x180005189
jmp 0x18000503a
jmp 0x180051cf8
call fcn.180008da0
jmp 0x180003c9f
call fcn.180008da0
jmp 0x180003caf
call fcn.180008da0
jmp 0x180003cbf
call fcn.180008da0
jmp 0x180003ccf
xor eax, eax
jmp 0x180005249
mov rcx, qword [rcx + 0x10]
lea r8, [0x18001fc20]
mov edx, reloc.WS2_32.dll_WSAStartup
mov r9, rbx
call fcn.18005b42c
nop
jmp 0x1800051f9
mov r9d, dword [rbx + 0x188]
mov rcx, qword [rcx + 0x10]
lea r8, [0x18001fc20]
mov edx, reloc.WS2_32.dll_WSACleanup
call fcn.180058fb0
mov rcx, qword [0x18008a130]
mov r8d, dword [rsp + 0x80]
jmp 0x180004fab
mov eax, dword [rbx + 0x188]
mov rcx, qword [rcx + 0x10]
mov dword [rsp + 0x28], r8d
lea r8, [0x18001fc20]
mov edx, 0xc9
mov r9, rbx
mov dword [rsp + 0x20], eax
call fcn.18005c408
nop
jmp 0x180004fbd
lea rax, [rbx + 0x30]
mov qword [rbx + 0x38], rax
mov qword [rax], rax
jmp 0x180004fef
mov r9, qword [0x180082198]
mov rcx, qword [rcx + 0x10]
mov dword [rsp + 0x38], r8d
mov qword [rsp + 0x30], rbx
mov edx, send
mov dword [rsp + 0x28], 0x2747
mov qword [rsp + 0x20], rax
call fcn.18005e904
nop
jmp 0x180005012
test rdx, rdx
jne 0x180051dd5
mov eax, dword [rbx + 0x188]
cmp dword [rcx + 0x188], eax
jb 0x18000506a
mov rax, qword [rsp + 0x88]
test dword [rcx + 0x268], 0x1300
jne 0x180005061
lea rdx, [0x18001fe80]
mov r9d, reloc.WS2_32.dll_inet_addr
mov r8d, 0x2773
call sym.DNSAPI.dll_AddRefQueryBlobEx
lea rcx, [r15 + 0x18]
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_LeaveCriticalSection]
mov rcx, qword [rsp + 0x80]
call fcn.18003cbb4
test eax, eax
je 0x180051e55
mov rcx, qword [0x18008a130]
cmp rcx, r14
je 0x180051e55
test dword [rcx + 0x1c], 0x400
je 0x180051e55
mov rcx, qword [rcx + 0x10]
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x80]
mov r9d, dword [rax + 0x188]
lea r8, [0x18001fc20]
mov edx, 0xca
call fcn.18005b9d0
mov rcx, qword [rsp + 0x80]
lea rdx, [0x18001fe80]
mov r9d, reloc.WS2_32.dll_inet_addr
mov r8d, 0x2780
call sym.DNSAPI.dll_DeRefQueryBlobEx
lea rcx, [r15 + 0x18]
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_EnterCriticalSection]
mov rax, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x90]
jmp 0x180005061
mov r9, qword [0x180082198]
mov rcx, qword [rcx + 0x10]
mov dword [rsp + 0x38], edi
lea rax, [0x18001fe80]
mov qword [rsp + 0x30], rbx
mov edx, send
mov dword [rsp + 0x28], 0x278b
mov qword [rsp + 0x20], rax
call fcn.18005e904
nop
jmp 0x18000509d
mov rcx, qword [rbx + 0x488]
test rcx, rcx
je 0x180051ee5
call qword [sym.imp.api_ms_win_core_handle_l1_1_0.dll_CloseHandle]
mov qword [rbx + 0x488], r12
cmp dword [rbx + 0x274], r12d
je 0x180051f1d
lea rcx, [0x18008ac20]
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_EnterCriticalSection]
mov rcx, qword [rbx + 0x30]
mov rax, qword [rbx + 0x38]
dec dword [0x18008a114]
mov qword [rax], rcx
mov qword [rcx + 8], rax
lea rcx, [0x18008ac20]
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_LeaveCriticalSection]
mov rcx, qword [rbx + 0x288]
test rcx, rcx
je 0x180051f2e
call fcn.180008da0
mov rcx, qword [rbx + 0x290]
test rcx, rcx
je 0x180051f3f
call fcn.180008da0
mov rcx, qword [rbx + 0x2b0]
test rcx, rcx
je 0x180051f50
call fcn.180008da0
mov rcx, qword [rbx + 0x2b8]
test rcx, rcx
je 0x180051f61
call fcn.180008da0
cmp dword [rbx + 0x16c], r12d
je 0x180051f9c
cmp dword [rbx + 0x188], r12d
je 0x180051f9c
mov rcx, qword [rbx + 0x310]
test rcx, rcx
je 0x180051f84
call fcn.180008da0
mov rcx, qword [rbx + 0x390]
test rcx, rcx
je 0x180051f9c
call sym.DNSAPI.dll_Dns_FreeMsgBuf
mov qword [rbx + 0x390], r12
mov rcx, qword [rbx + 0x180]
test rcx, rcx
je 0x180051fad
call fcn.1800079a8
cmp dword [rbx + 0x58], r12d
je 0x180051fbd
lea rcx, [rbx + 0x60]
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_DeleteCriticalSection]
mov rcx, qword [rbx + 0xe0]
test rcx, rcx
je 0x180051fd6
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_FreeLibrary]
mov qword [rbx + 0xe0], r12
mov rcx, rbx
call fcn.180008b84
nop
jmp 0x1800050a5
mov rcx, rbx
call fcn.18003cbb4
nop
jmp 0x1800050a5
mov eax, dword [rdi + 0x18c]
mov rcx, qword [r13 + 0x310]
mov dword [r13 + 0x18c], eax
mov rax, qword [rdi + 0xb0]
mov qword [r13 + 0xb0], rax
call fcn.180008da0
mov rax, qword [rdi + 0x310]
mov qword [r13 + 0x310], rax
mov qword [rdi + 0x310], r12
mov rcx, qword [rbx + 0x390]
test rcx, rcx
je 0x18005203f
call sym.DNSAPI.dll_Dns_FreeMsgBuf
mov rax, qword [rdi + 0x390]
mov qword [rbx + 0x390], rax
mov qword [rdi + 0x390], r12
jmp 0x180005163
mov rcx, qword [rcx + 0x10]
lea r8, [0x18001fc20]
mov edx, 0x75
mov r9, r13
call fcn.18005b42c
mov rcx, qword [0x18008a130]
jmp 0x18000517c
mov r8, qword [r13 + 0x48]
mov rax, qword [rdi]
mov rcx, qword [rcx + 0x10]
sub r8, 0x40
sub rax, 0x40
mov edx, 0x76
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x28], rax
lea r8, [0x18001fc20]
xor r9d, r9d
mov qword [rsp + 0x20], r12
call fcn.18005ed2c
nop
jmp 0x180033409
mov rcx, qword [rcx + 0x10]
lea r8, [0x18001fc20]
mov edx, 0x77
mov r9, r13
call fcn.18005b42c
nop
jmp 0x18000519b
mov r9, qword [0x1800821a0]
mov rcx, qword [rcx + 0x10]
mov dword [rsp + 0x38], esi
mov qword [rsp + 0x30], rbx
mov edx, send
mov dword [rsp + 0x28], 0x17a4
mov qword [rsp + 0x20], rax
call fcn.18005e904
nop
jmp 0x18000522f
mov rcx, qword [rbx + 0x310]
test rcx, rcx
je 0x18005211a
call fcn.180008da0
mov rcx, qword [rbx + 0x390]
test rcx, rcx
je 0x180003ce5
call sym.DNSAPI.dll_Dns_FreeMsgBuf
mov qword [rbx + 0x390], 0
jmp 0x180003ce5
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_FreeLibrary]
mov qword [rbx + 0xe0], 0
jmp 0x180003d16
mov rcx, rdi
call qword [sym.DNSAPI.dll_DnsNotifyResolverClusterIp]
mov rcx, rbx
call rdi
nop
jmp 0x180005237
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_heap_obsolete_l1_1_0.dll_LocalFree]
nop
jmp 0x180005237