Function at 0x180054160
Capabilities:
Resolve dns

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x20], r9
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x150]
sub rsp, 0x250
mov r12, r8
mov rsi, rdx
mov r13, rcx
xor ebx, ebx
xorps xmm0, xmm0
movups xmmword [rbp + 0x100], xmm0
movups xmmword [rbp + 0x110], xmm0
movups xmmword [rbp + 0x120], xmm0
movzx eax, byte [rcx + 0x4d]
test al, al
jne 0x1800541b4
lea eax, [rbx + 2]
jmp 0x1800541c1
cmp al, 1
jne 0x180054b31
mov eax, reloc.WS2_32.dll_socket
mov dword [rbp + 0x104], eax
mov dword [rbp + 0x108], 1
lea rdx, [rcx + 0x90]
cmp qword [rdx + 0x18], 0xf
jbe 0x1800541e2
mov rdx, qword [rdx]
add rcx, 0x70
cmp qword [r13 + 0x88], 0xf
jbe 0x1800541f4
mov rcx, qword [r13 + 0x70]
lea r9, [rbp + 0x48]
lea r8, [rbp + 0x100]
call qword [sym.imp.WS2_32.dll_getaddrinfo]
test eax, eax
je 0x18005423e
mov dword [rsi], ebx
lea rcx, [rsi + 8]
call fcn.18005a8c0
mov qword [rsi + 0x20], rbx
mov qword [rsi + 0x28], rbx
mov qword [rsi + 0x30], rbx
mov rax, rsi
mov rbx, qword [rsp + 0x298]
add rsp, 0x250
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [sym.imp.WS2_32.dll_freeaddrinfo]
mov qword [rbp + 0x190], rax
lea r8, [rbp + 0x190]
mov rdx, qword [rbp + 0x48]
lea rcx, [rbp + 0xd0]
call fcn.18005dd20
nop
mov rcx, qword [r12 + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rcx
cmp rax, 1
jb 0x180054b4b
mov r9, r12
cmp qword [r12 + 0x18], 0xf
jbe 0x18005428f
mov r9, qword [r12]
mov qword [rsp + 0x30], 1
lea rax, [0x180184f08]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp + 0x70]
call fcn.180051720
nop
lea rdx, [r13 + 0xb0]
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x1800542c8
mov rdx, qword [rdx]
lea rcx, [rbp + 0x70]
call fcn.1800286d0
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x70], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x80], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x70], xmm1
mov qword [rax + 0x18], send
mov qword [rax + 0x10], rbx
mov byte [rax], 0
mov r8d, listen
lea rdx, str._HTTP_1.1_r_n
lea rcx, [rbp - 0x80]
call fcn.1800286d0
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x70], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x70], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], send
mov byte [rax], 0
mov rdx, qword [rbp - 0x68]
cmp rdx, 0xf
jbe 0x180054380
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005437b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180054b51
call fcn.1800d9c1c
movdqa xmm0, xmmword [0x1801872b0]
movdqu xmmword [rbp - 0x70], xmm0
mov byte [rbp - 0x80], 0
mov rdx, qword [rbp + 0x88]
cmp rdx, 0xf
jbe 0x1800543cf
inc rdx
mov rcx, qword [rbp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800543ca
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180054b57
call fcn.1800d9c1c
movdqa xmm0, xmmword [0x1801872b0]
movdqu xmmword [rbp + 0x80], xmm0
mov byte [rbp + 0x70], 0
mov r14, qword [rbp + 0x1b0]
mov rcx, r14
call fcn.180049e30
mov rbx, rax
mov rcx, r14
call fcn.18005a750
mov rdi, rax
lea rax, [0x180184ee4]
cmp rbx, rdi
je 0x1800544b4
mov rdx, qword [rbx + 0x10]
movabs rcx, 0x7fffffffffffffff
sub rcx, rdx
cmp rcx, 2
jb 0x180054b63
mov r9, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x180054438
mov r9, qword [rbx]
mov qword [rsp + 0x30], 2
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rbp + 0x20]
call fcn.180051720
nop
lea rdx, [rbp + 0x20]
lea rcx, [rsp + 0x60]
call fcn.18005aa20
nop
mov rdx, qword [rbp + 0x38]
cmp rdx, 0xf
jbe 0x18005449f
inc rdx
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005449a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180054b5d
call fcn.1800d9c1c
add rbx, 0x20
cmp rbx, rdi
je 0x1800544b4
lea rax, [0x180184ee4]
jmp 0x180054410
lea r8, [r13 + 0x70]
lea rdx, str.Host:
lea rcx, [rbp + 0x130]
call fcn.18005db60
nop
mov r8d, 2
lea rbx, [0x180184ee4]
mov rdx, rbx
mov rcx, rax
call fcn.1800286d0
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x50], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x50], xmm1
xor edi, edi
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], send
mov byte [rax], dil
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x60]
call fcn.18005aa20
nop
mov rdx, qword [rbp - 0x48]
cmp rdx, 0xf
jbe 0x18005455d
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180054558
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180054b69
call fcn.1800d9c1c
movdqa xmm0, xmmword [0x1801872b0]
movdqu xmmword [rbp - 0x50], xmm0
mov byte [rbp - 0x60], 0
mov rdx, qword [rbp + 0x148]
cmp rdx, 0xf
jbe 0x1800545af
inc rdx
mov rcx, qword [rbp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800545aa
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180054b6f
call fcn.1800d9c1c
mov rax, qword [rbp + 0x1a8]
mov rdx, qword [rax + 8]
sub rdx, qword [rax]
lea rcx, [rbp + 0x50]
call fcn.18005d920
nop
lea r8, [rbp + 0x50]
lea rdx, str.Content_Length:
lea rcx, [rbp + 0x90]
call fcn.180047c10
nop
mov r8d, 2
mov rdx, rbx
mov rcx, rax
call fcn.1800286d0
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x30], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x30], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], send
mov byte [rax], 0
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x60]
call fcn.18005aa20
nop
mov rdx, qword [rbp - 0x28]
cmp rdx, 0xf
jbe 0x180054667
inc rdx
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180054662
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180054b75
call fcn.1800d9c1c
movdqa xmm0, xmmword [0x1801872b0]
movdqu xmmword [rbp - 0x30], xmm0
mov byte [rbp - 0x40], 0
mov rdx, qword [rbp + 0xa8]
cmp rdx, 0xf
jbe 0x1800546b9
inc rdx
mov rcx, qword [rbp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800546b4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180054b7b
call fcn.1800d9c1c
movdqa xmm0, xmmword [0x1801872b0]
movdqu xmmword [rbp + 0xa0], xmm0
mov byte [rbp + 0x90], 0
mov rdx, qword [rbp + 0x68]
cmp rdx, 0xf
jbe 0x18005470b
inc rdx
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180054706
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180054b81
call fcn.1800d9c1c
mov rdx, rbx
lea rcx, [rsp + 0x60]
call fcn.18005a9f0
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
movdqa xmm1, xmmword [0x1801872b0]
movdqu xmmword [rsp + 0x50], xmm1
mov byte [rsp + 0x40], 0
mov rcx, r14
call fcn.180049e30
mov rbx, rax
mov rcx, r14
call fcn.18005a750
mov rdi, rax
lea r14, [0x180184ee4]
cmp rbx, rax
je 0x1800547fc
nop dword [rax]
mov rdx, qword [rbx + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, 2
jb 0x180054b93
mov r9, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x180054788
mov r9, qword [rbx]
mov qword [rsp + 0x30], 2
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], rdx
lea rcx, [rbp + 0x50]
call fcn.180051720
nop
lea rdx, [rbp + 0x50]
lea rcx, [rsp + 0x40]
call fcn.18005aa20
nop
mov rdx, qword [rbp + 0x68]
cmp rdx, 0xf
jbe 0x1800547ef
inc rdx
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800547ea
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180054b8d
call fcn.1800d9c1c
add rbx, 0x20
cmp rbx, rdi
jne 0x180054760
lea r8, [r13 + 0x70]
lea rdx, str.Host:
lea rcx, [rbp + 0xb0]
call fcn.18005db60
nop
mov r8d, 2
mov rdx, r14
mov rcx, rax
call fcn.1800286d0
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x10], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x10], xmm1
xor edi, edi
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], send
mov byte [rax], dil
lea rdx, [rbp - 0x20]
lea rcx, [rsp + 0x40]
call fcn.18005aa20
nop
mov rdx, qword [rbp - 8]
cmp rdx, 0xf
jbe 0x18005489e
inc rdx
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180054899
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180054b87
call fcn.1800d9c1c
movdqa xmm0, xmmword [0x1801872b0]
movdqu xmmword [rbp - 0x10], xmm0
mov byte [rbp - 0x20], 0
mov rdx, qword [rbp + 0xc8]
cmp rdx, 0xf
jbe 0x1800548f0
inc rdx
mov rcx, qword [rbp + 0xb0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800548eb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180054b99
call fcn.1800d9c1c
mov rbx, qword [rbp + 0x1a8]
mov rdx, qword [rbx + 8]
sub rdx, qword [rbx]
lea rcx, [rbp + 0xe0]
call fcn.18005d920
nop
lea r8, [rbp + 0xe0]
lea rdx, str.Content_Length:
lea rcx, [rbp + 0x20]
call fcn.180047c10
nop
mov r8d, 2
mov rdx, r14
mov rcx, rax
call fcn.1800286d0
xorps xmm0, xmm0
movups xmmword [rbp], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x10], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x10], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], send
mov byte [rax], 0
lea rdx, [rbp]
lea rcx, [rsp + 0x40]
call fcn.18005aa20
nop
mov rdx, qword [rbp + 0x18]
cmp rdx, 0xf
jbe 0x1800549ab
inc rdx
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800549a6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180054b9f
call fcn.1800d9c1c
movdqa xmm0, xmmword [0x1801872b0]
movdqu xmmword [rbp + 0x10], xmm0
mov byte [rbp], 0
mov rdx, qword [rbp + 0x38]
cmp rdx, 0xf
jbe 0x1800549f7
inc rdx
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800549f2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180054ba5
call fcn.1800d9c1c
movdqa xmm0, xmmword [0x1801872b0]
movdqu xmmword [rbp + 0x30], xmm0
mov byte [rbp + 0x20], 0
mov rdx, qword [rbp + 0xf8]
cmp rdx, 0xf
jbe 0x180054a49
inc rdx
mov rcx, qword [rbp + 0xe0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180054a44
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180054bab
call fcn.1800d9c1c
mov rdx, r14
lea rcx, [rsp + 0x40]
call fcn.18005a9f0
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0xb0]
call fcn.180007dc0
mov qword [rsp + 0x20], rbx
mov r9, rax
mov r8, r12
mov rdx, rsi
mov rcx, r13
call fcn.180053520
nop
mov rdx, qword [rsp + 0x58]
cmp rdx, 0xf
jbe 0x180054abb
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180054ab6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180054bb1
call fcn.1800d9c1c
movdqa xmm0, xmmword [0x1801872b0]
movdqu xmmword [rsp + 0x50], xmm0
mov byte [rsp + 0x40], 0
mov rdx, qword [rsp + 0x78]
cmp rdx, 0xf
jbe 0x180054b07
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180054b02
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180054b2b
call fcn.1800d9c1c
movdqa xmm0, xmmword [0x1801872b0]
movdqu xmmword [rsp + 0x70], xmm0
mov byte [rsp + 0x60], 0
lea rcx, [rbp + 0xd0]
call fcn.1800594e0
jmp 0x180054220
call fcn.1800e5f80
nop
lea rcx, [rbp - 0x80]
call fcn.180051ad0
lea rdx, [0x180199968]
lea rcx, [rbp - 0x80]
call fcn.1800dc120
nop
call fcn.180003590
nop
call fcn.1800e5f80
nop
call fcn.1800e5f80
int3
call fcn.1800e5f80
int3
call fcn.180003590
nop
call fcn.1800e5f80
nop
call fcn.1800e5f80
nop
call fcn.1800e5f80
nop
call fcn.1800e5f80
nop
call fcn.1800e5f80
nop
call fcn.1800e5f80
nop
call fcn.1800e5f80
int3
call fcn.180003590
int3
call fcn.1800e5f80
nop
call fcn.1800e5f80
nop
call fcn.1800e5f80
nop
call fcn.1800e5f80
nop
call fcn.1800e5f80
int3