Function at 0x14008152e
Capabilities:
Resolve dns

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x38
lea rbp, [rsp + 0x30]
mov qword [rbp], 0xfffffffffffffffe
mov r15, r9
mov rsi, rdx
mov eax, dword [0x1402ad010]
mov ecx, dword [0x1402ad014]
shrd ecx, eax, 0x18
xor ecx, 0x4133e912
mov eax, ecx
lea rax, [rax + rax*2]
lea rax, [rax*8 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.1400fe1d0
sub rsp, rax
mov r12, rsp
imul eax, dword [0x1402ad018], 0x8858af6c
imul ecx, dword [0x1402ad01c], 0xf82c019
add eax, ecx
add eax, 0x1ed99255
lea rax, [rax*8 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.1400fe1d0
sub rsp, rax
mov r13, rsp
imul eax, dword [0x1402ad020], 0x923ceee0
imul ecx, dword [0x1402ad024], 0x7788cc87
add eax, ecx
add eax, 0x6fda3a40
shl rax, 5
call fcn.1400fe1d0
sub rsp, rax
mov rbx, rsp
imul eax, dword [0x1402ad028], 0xe6a44866
imul ecx, dword [0x1402ad02c], 0x5125d699
add eax, ecx
add eax, 0x26ae15a1
shl rax, 5
call fcn.1400fe1d0
sub rsp, rax
mov r14, rsp
imul eax, dword [0x1402ad030], 0x91ef8d3b
imul ecx, dword [0x1402ad034], 0x4c2ec09f
add eax, ecx
add eax, 0x52b3f8
shl rax, 5
call fcn.1400fe1d0
sub rsp, rax
mov qword [rbp - 0x10], rsp
imul eax, dword [0x1402ad038], 0x6a8166cd
imul ecx, dword [0x1402ad03c], 0xb8cb18e2
add eax, ecx
add eax, 0x59b06519
shl rax, 5
call fcn.1400fe1d0
sub rsp, rax
mov qword [rbp - 0x20], rsp
mov qword [r13], 0
sub rsp, 0x20
mov rcx, r9
mov rdx, rbx
call fcn.140082104
add rsp, 0x20
movabs rax, 0xa27486ec06c88de6
imul rax, qword [0x1402ad040]
movabs rcx, 0x1014054226004512
imul rcx, qword [0x1402ad048]
add rcx, rax
movabs rax, 0xd68c74ec25709303
add rax, rcx
mov rdi, rbx
cmp qword [rbx + 0x18], rax
jbe 0x1400816bb
mov rdi, qword [rbx]
nop
mov qword [rbp - 8], rbx
sub rsp, 0x20
mov rcx, r15
mov rdx, r14
call fcn.1400822a0
add rsp, 0x20
nop
mov rbx, r15
mov qword [rbp - 0x28], rsi
mov rsi, r14
movabs rax, 0x3437bb961552125a
imul rax, qword [0x1402ad050]
movabs rcx, 0x7ff13094b6c85176
imul rcx, qword [0x1402ad058]
add rcx, rax
movabs rdx, 0xaeece70deac54ead
add rdx, rcx
mov rax, r14
cmp qword [r14 + 0x18], rdx
jbe 0x14008172a
mov rcx, qword [rsi]
mov rax, rcx
test rcx, rcx
je 0x140081d9c
mov cl, byte [0x1402ad060]
mov dl, byte [0x1402ad061]
shr dl, 4
shl cl, 4
or cl, dl
xor cl, 0xf6
cmp byte [rax], cl
mov r15d, 0
cmovne r15, rax
mov r14, r12
test rdi, rdi
je 0x14008177c
movzx eax, byte [0x1402ad062]
movzx ecx, byte [0x1402ad063]
imul eax, eax, 0xffffff99
imul ecx, ecx, 0xffffffc7
add cl, al
add cl, 0xa0
cmp byte [rdi], cl
mov r12d, 0
cmovne r12, rdi
jmp 0x14008177f
xor r12d, r12d
mov eax, dword [0x1402ad064]
mov ecx, dword [0x1402ad068]
shrd ecx, eax, 0x16
xor ecx, 0x3718c794
sub rsp, 0x20
call qword [sym.imp.WS2_32.dll_WSASetLastError]
mov rcx, r15
mov rdx, r12
mov r15, rbx
mov r8, rbx
mov r9, r13
call qword [sym.imp.WS2_32.dll_getaddrinfo]
mov rcx, r14
mov edx, eax
call fcn.140083399
add rsp, 0x20
mov rax, qword [r14 + 0x10]
mov r12, qword [rbp + 0x70]
mov qword [r12 + 0x10], rax
movups xmm0, xmmword [r14]
movups xmmword [r12], xmm0
mov rax, qword [rsi + 0x18]
movabs rcx, 0x14c9b1d0f721ac0b
imul rcx, qword [0x1402ad070]
movabs rdx, 0x67fc0e39ddcf3091
imul rdx, qword [0x1402ad078]
add rdx, rcx
movabs rcx, 0x84d7724a8a0c6e37
add rcx, rdx
cmp rax, rcx
mov rdi, qword [rbp - 0x28]
jbe 0x140081922
mov rcx, qword [0x1402ad080]
mov r8, qword [0x1402ad088]
shrd r8, rcx, 0x3e
mov rdx, qword [rsi]
movabs rcx, 0x8554bb3f710da67a
xor rcx, r8
add rcx, rax
movabs r8, 0xb2b234b57c93f2c1
imul r8, qword [0x1402ad090]
movabs r9, 0xf15c13b0ee9604de
imul r9, qword [str.a_9D]
add r9, r8
movabs r8, 0xa229d02d63e5f557
add r8, r9
cmp rcx, r8
jbe 0x14008190c
mov rcx, qword [rdx - 8]
movabs r8, 0x78fab909c1999c1
imul r8, qword [0x1402ad0a0]
movabs r9, 0xe2f18856ca4c97d5
imul r9, qword [0x1402ad0a8]
add r9, r8
add r9, rdx
sub r9, rcx
movabs rdx, 0x1be86a38c7ca070a
add rdx, r9
mov r8, qword [0x1402ad0b0]
mov r9, qword [0x1402ad0b8]
shrd r9, r8, 0x3e
movabs r8, 0xde200a97b3e2d461
xor r8, r9
cmp rdx, r8
jae 0x14008200d
mov rdx, qword [0x1402ad0c0]
mov r8, qword [0x1402ad0c8]
shrd r8, rdx, 0x35
movabs rdx, 0x62a301f1c2c2309d
xor rdx, r8
add rax, rdx
jmp 0x140081912
mov rax, rcx
mov rcx, rdx
mov rdx, rax
sub rsp, 0x20
call fcn.1400d883c
add rsp, 0x20
mov rax, qword [0x1402ad0d0]
mov rcx, qword [0x1402ad0d8]
shrd rcx, rax, 0x39
movabs rax, 0xf94bcb9045a467b4
xor rax, rcx
mov qword [rsi + 0x10], rax
mov rax, qword [0x1402ad0e0]
mov rcx, qword [0x1402ad0e8]
shrd rcx, rax, 0x29
movabs rax, 0xc4240032649c418c
xor rax, rcx
mov qword [rsi + 0x18], rax
mov al, byte [0x1402ad0f0]
mov cl, byte [reloc.WS2_32.dll_WSASetLastError]
shr cl, 7
add al, al
or al, cl
add al, 0x80
mov byte [rsi], al
mov rsi, qword [rbp - 8]
mov rax, qword [rsi + 0x18]
mov rcx, qword [0x1402ad0f8]
mov rdx, qword [0x1402ad100]
shrd rdx, rcx, 0x2e
movabs rcx, 0x8a3c65ef2ce56816
xor rcx, rdx
cmp rax, rcx
jbe 0x140081ab7
mov rcx, qword [0x1402ad108]
mov r8, qword [0x1402ad110]
shrd r8, rcx, 0x1f
mov rdx, qword [rsi]
movabs rcx, 0x427aae420f70058
xor rcx, r8
add rcx, rax
movabs r8, 0x434acf0141b8925c
imul r8, qword [0x1402ad118]
movabs r9, 0xe8eef1a738cd0e5d
imul r9, qword [0x1402ad120]
add r9, r8
movabs r8, 0x731ba3b68cb26eb1
add r8, r9
cmp rcx, r8
jbe 0x140081aa1
mov rcx, qword [rdx - 8]
mov r8, qword [0x1402ad128]
mov r9, qword [0x1402ad130]
shrd r9, r8, 0x35
movabs r8, 0x66c7a0afd45f374c
xor r8, r9
add r8, rdx
sub r8, rcx
mov rdx, qword [0x1402ad138]
mov r9, qword [0x1402ad140]
shrd r9, rdx, 0x11
movabs rdx, 0x578e8dff686191f
xor rdx, r9
cmp r8, rdx
jae 0x14008200d
movabs rdx, 0x7ea7acc546d74ef9
imul rdx, qword [0x1402ad148]
movabs r8, 0xbbedd71026d203ca
imul r8, qword [0x1402ad150]
add r8, rdx
movabs rdx, 0xec6b90b6b2771ac1
add rax, rdx
add rax, r8
jmp 0x140081aa7
mov rax, rcx
mov rcx, rdx
mov rdx, rax
sub rsp, 0x20
call fcn.1400d883c
add rsp, 0x20
mov rax, qword [0x1402ad158]
mov rcx, qword [0x1402ad160]
shrd rcx, rax, 0x3b
movabs rax, 0x75df24beaba02582
xor rax, rcx
mov qword [rsi + 0x10], rax
movabs rax, 0x585c6e254339d3d8
imul rax, qword [0x1402ad168]
movabs rcx, 0xb1f56bc43b1745d3
imul rcx, qword [0x1402ad170]
add rcx, rax
movabs rax, 0xb4e6c26c75cbff3e
add rax, rcx
mov qword [rsi + 0x18], rax
movzx eax, byte [0x1402ad178]
movzx ecx, byte [0x1402ad179]
imul eax, eax, 0xffffffc5
imul ecx, ecx, 0xffffffa2
add cl, al
add cl, 0x22
mov byte [rsi], cl
mov rbx, qword [r13]
mov rax, qword [r12 + 0x10]
movabs rcx, 0xb591f279f558f3c9
imul rcx, qword [0x1402ad180]
movabs rdx, 0x434f07a8825a52fb
imul rdx, qword [0x1402ad188]
add rdx, rcx
movabs rcx, 0x3fac008b4e5d7c63
add rcx, rdx
and rcx, rax
movabs rdx, 0x69f92623ceed5424
imul rdx, qword [0x1402ad190]
movabs r8, 0xa7c06ecf69773c7b
imul r8, qword [0x1402ad198]
add r8, rdx
movabs rdx, 0x878e5a1a68ecfbde
add rdx, r8
cmp rcx, rdx
je 0x140081c09
movabs rcx, 0xfd8845ff92f15316
imul rcx, qword [0x1402ad1a0]
movabs rdx, 0x86c8866681e808d6
imul rdx, qword [0x1402ad1a8]
add rdx, rcx
movabs rcx, 0xd1481d5867e0d155
add rcx, rdx
cmp rax, rcx
jne 0x140081d89
imul eax, dword [0x1402ad1b0], 0x444a7aa3
imul ecx, dword [0x1402ad1b4], 0xebbd7a1c
add eax, ecx
add eax, 0x150251f
cmp dword [r12], eax
jne 0x140081d89
nop
mov qword [rbp - 0x18], rbx
mov rdx, qword [rbp - 0x10]
sub rsp, 0x20
mov rcx, r15
mov qword [rbp - 8], rdx
call fcn.140082104
add rsp, 0x20
nop
nop
mov rsi, qword [rbp - 0x20]
sub rsp, 0x20
mov rcx, r15
mov rdx, rsi
call fcn.1400822a0
add rsp, 0x20
nop
mov rdx, qword [r13]
nop
sub rsp, 0x20
mov rcx, rdi
mov r8, rsi
mov r9, qword [rbp - 8]
mov qword [rbp - 0x10], rsi
call fcn.140082414
add rsp, 0x20
nop
mov r14, qword [rbp - 0x10]
mov rax, qword [r14 + 0x18]
movabs rcx, 0x488d7680351fe3b4
imul rcx, qword [0x1402ad1b8]
movabs rdx, 0x1f05503dee9bd95a
imul rdx, qword [0x1402ad1c0]
add rdx, rcx
movabs rcx, 0xa1a2c809cf29499d
add rcx, rdx
cmp rax, rcx
mov rbx, qword [rbp - 0x18]
mov rsi, qword [rbp - 8]
jbe 0x140081dba
mov rcx, qword [0x1402ad1c8]
mov r8, qword [0x1402ad1d0]
shrd r8, rcx, 6
mov rdx, qword [r14]
movabs rcx, 0x6d1fdbc395dfd5d2
xor rcx, r8
add rcx, rax
movabs r8, 0x89ddb94289e89d6b
imul r8, qword [0x1402ad1d8]
movabs r9, 0xb7c019c5a9d51809
imul r9, qword [0x1402ad1e0]
add r9, r8
movabs r8, 0xd0adf668cb10181d
add r8, r9
cmp rcx, r8
jbe 0x140081da4
mov rcx, qword [rdx - 8]
mov r8, qword [0x1402ad1e8]
mov r9, qword [0x1402ad1f0]
shrd r9, r8, 9
movabs r8, 0x7547b62223abed87
xor r8, r9
add r8, rdx
sub r8, rcx
mov rdx, qword [0x1402ad1f8]
mov r9, qword [0x1402ad200]
shrd r9, rdx, 0x38
movabs rdx, 0xf320f1dcf3ea925b
xor rdx, r9
cmp r8, rdx
jae 0x14008200d
mov rdx, qword [0x1402ad208]
mov r8, qword [0x1402ad210]
shrd r8, rdx, 0x18
movabs rdx, 0x238aa75f030d29de
xor rdx, r8
add rax, rdx
jmp 0x140081daa
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], 0
jmp 0x140081fe3
xor r15d, r15d
jmp 0x14008174d
mov rax, rcx
mov rcx, rdx
mov rdx, rax
sub rsp, 0x20
call fcn.1400d883c
add rsp, 0x20
movabs rax, 0xc4bdebecd6d50081
imul rax, qword [0x1402ad218]
movabs rcx, 0x496183d0ee393d9c
imul rcx, qword [0x1402ad220]
add rcx, rax
movabs rax, 0xa00a6a8a0d198ff8
add rax, rcx
movabs rcx, 0xa6b32015df86dc8e
imul rcx, qword [0x1402ad228]
movabs rdx, 0x3ac172df0ff51d7
imul rdx, qword [0x1402ad230]
mov qword [r14 + 0x10], rax
add rdx, rcx
movabs rax, 0x6e58928d76257eeb
add rax, rdx
mov qword [r14 + 0x18], rax
mov al, byte [0x1402ad238]
mov cl, byte [0x1402ad239]
shr cl, 2
shl al, 6
or al, cl
xor al, 0x15
mov byte [r14], al
mov rax, qword [rsi + 0x18]
mov rcx, qword [0x1402ad240]
mov rdx, qword [0x1402ad248]
shrd rdx, rcx, 0x13
movabs rcx, 0x71ea87d1543f68b7
xor rcx, rdx
cmp rax, rcx
jbe 0x140081f70
mov rcx, qword [rsi]
movabs rdx, 0x4d95ca2b69922c26
imul rdx, qword [0x1402ad250]
movabs r8, 0xa564b13b61902c29
imul r8, qword [0x1402ad258]
add r8, rdx
movabs rdx, 0xd63826a80c0b64e8
add rdx, rax
add rdx, r8
mov r8, qword [0x1402ad260]
mov r9, qword [0x1402ad268]
shrd r9, r8, 7
movabs r8, 0xee1116e956501c1a
xor r8, r9
cmp rdx, r8
jbe 0x140081f63
mov rdx, qword [rcx - 8]
movabs r8, 0xe1c4a9d99fcf4f24
imul r8, qword [0x1402ad270]
movabs r9, 0x90aed6318df16837
imul r9, qword [0x1402ad278]
add r9, r8
add r9, rcx
sub r9, rdx
movabs rcx, 0xcceda4a924356024
add rcx, r9
mov r8, qword [0x1402ad280]
mov r9, qword [0x1402ad288]
shrd r9, r8, 0x1f
movabs r8, 0xdbae1388db1104cd
xor r8, r9
cmp rcx, r8
jae 0x14008200d
mov rcx, qword [0x1402ad290]
mov r8, qword [0x1402ad298]
shrd r8, rcx, 0x36
movabs rcx, 0x8cf49e335ce60c6d
xor rcx, r8
add rax, rcx
mov rcx, rdx
mov rdx, rax
sub rsp, 0x20
call fcn.1400d883c
add rsp, 0x20
mov rax, qword [0x1402ad2a0]
mov rcx, qword [0x1402ad2a8]
shrd rcx, rax, 0x39
movabs rax, 0xaf57498950af47fa
xor rax, rcx
mov qword [rsi + 0x10], rax
movabs rax, 0xdd518be9f718448f
imul rax, qword [0x1402ad2b0]
movabs rcx, 0x25bc61e4bc76ae0d
imul rcx, qword [0x1402ad2b8]
add rcx, rax
movabs rax, 0x79f59cba3b029a25
add rax, rcx
mov qword [rsi + 0x18], rax
mov al, byte [0x1402ad2c0]
mov cl, byte [0x1402ad2c1]
shr cl, 1
shl al, 7
or al, cl
xor al, 0xa5
mov byte [rsi], al
test rbx, rbx
je 0x140081ff9
sub rsp, 0x20
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_freeaddrinfo]
add rsp, 0x20
mov rax, rdi
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
sub rsp, 0x20
call fcn.1401aec6c
int3