Function at 0x1400d8e40
Capabilities:
Connect socket
Resolve dns
Set socket configuration

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rdi
mov eax, 0x32a8
call fcn.1401d5c30
sub rsp, rax
lea rbp, [rsp + 0x50]
mov qword [rbp + 0x31b0], 0xfffffffffffffffe
mov rax, qword [0x1402a25c0]
xor rax, rbp
mov qword [rbp + 0x3240], rax
call fcn.1400028f0
mov dword [rbp + 0x1080], eax
lea rcx, [rbp + 0x50]
call fcn.140002d50
nop
lea rcx, [rbp + 0x1070]
call fcn.140002d50
nop
lea rcx, [rbp + 0x10b0]
call fcn.140002d50
nop
lea rcx, [rbp + 0x10a8]
call fcn.140002d50
nop
mov dword [rbp + 0x18], 0
cmp qword [rbp + 0x3290], 0
je 0x1400d8f57
mov rax, qword [rbp + 0x3290]
mov eax, dword [rax]
mov dword [rbp + 0x18], eax
mov rdx, qword [rbp + 0x3290]
add rdx, 8
lea rcx, [rbp + 0x50]
call fcn.140002d20
mov rdx, qword [rbp + 0x3290]
mov eax, dword [rdx + 0x10]
mov dword [rbp + 4], eax
mov rdx, qword [rbp + 0x3290]
add rdx, 0x18
lea rcx, [rbp + 0x1070]
call fcn.140002d20
mov rdx, qword [rbp + 0x3290]
mov eax, dword [rdx + 0x20]
mov dword [rbp + 0x107c], eax
mov rdx, qword [rbp + 0x3290]
add rdx, 0x30
lea rcx, [rbp + 0x10b0]
call fcn.140002d20
mov rdx, qword [rbp + 0x3290]
add rdx, 0x38
lea rcx, [rbp + 0x10a8]
call fcn.140002d20
cmp dword [rbp + 0x18], 0
jne 0x1400d9411
mov r8d, reloc.OLEAUT32.dll_SafeArrayGetDim
xor edx, edx
lea rcx, [rbp + 0x10f8]
call fcn.1400a8070
mov edx, 2
mov word [rbp + 0x10f8], dx
xor ecx, ecx
call qword [sym.imp.WS2_32.dll_htons]
mov word [rbp + 0x10fa], ax
mov eax, dword [rbp + 0x3298]
mov dword [rbp + 0x10fc], eax
mov r8d, reloc.OLEAUT32.dll_SafeArrayGetDim
lea rdx, [rbp + 0x10f8]
mov rcx, qword [rbp + 0x3278]
call qword [sym.imp.WS2_32.dll_bind]
mov dword [rbp + 0x10d0], eax
cmp dword [rbp + 0x3298], 0
je 0x1400d9020
cmp dword [rbp + 0x10d0], 0xffffffff
jne 0x1400d9020
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2741
jne 0x1400d9020
mov dword [rbp + 0x3144], 0
lea rcx, [rbp + 0x10a8]
call fcn.140001470
nop
lea rcx, [rbp + 0x10b0]
call fcn.140001470
nop
lea rcx, [rbp + 0x1070]
call fcn.140001470
nop
lea rcx, [rbp + 0x50]
call fcn.140001470
mov eax, dword [rbp + 0x3144]
jmp 0x1400da1cc
mov r8d, reloc.OLEAUT32.dll_SafeArrayGetDim
xor edx, edx
lea rcx, [rbp + 0x10f8]
call fcn.1400a8070
mov edx, 2
mov word [rbp + 0x10f8], dx
mov rax, qword [rbp + 0x3280]
mov qword [rbp + 0x30], rax
cmp qword [rbp + 0x30], 0
jne 0x1400d9062
mov qword [rbp + 0x31b8], 0
jmp 0x1400d90e5
mov rcx, qword [rbp + 0x30]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
add eax, 1
mov dword [rbp + 0x1c], eax
cmp dword [rbp + 0x1c], 0x3fffffff
jle 0x1400d9088
mov qword [rbp + 0x31c0], 0
jmp 0x1400d90d7
movsxd rdx, dword [rbp + 0x1c]
shl rdx, 1
movsxd rcx, dword [rbp + 0x1c]
shl rcx, 1
mov rax, rcx
add rax, 0xf
cmp rax, rcx
ja 0x1400d90ac
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.1401d5c30
sub rsp, rax
lea rcx, [rsp + 0x50]
mov r9d, dword [rbp + 0x1080]
mov r8d, edx
mov rdx, qword [rbp + 0x30]
call fcn.140050100
mov qword [rbp + 0x31c0], rax
mov rax, qword [rbp + 0x31c0]
mov qword [rbp + 0x31b8], rax
mov rcx, qword [rbp + 0x31b8]
call qword [sym.imp.WS2_32.dll_inet_addr]
mov dword [rbp + 0x10fc], eax
movzx ecx, word [rbp + 0x3288]
call qword [sym.imp.WS2_32.dll_htons]
mov word [rbp + 0x10fa], ax
cmp dword [rbp + 0x10fc], 0xffffffff
jne 0x1400d9237
mov rax, qword [rbp + 0x3280]
mov qword [rbp + 0x30], rax
cmp qword [rbp + 0x30], 0
jne 0x1400d913b
mov qword [rbp + 0x31c8], 0
jmp 0x1400d91be
mov rcx, qword [rbp + 0x30]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
add eax, 1
mov dword [rbp + 0x1c], eax
cmp dword [rbp + 0x1c], 0x3fffffff
jle 0x1400d9161
mov qword [rbp + 0x31d0], 0
jmp 0x1400d91b0
movsxd rdx, dword [rbp + 0x1c]
shl rdx, 1
movsxd rcx, dword [rbp + 0x1c]
shl rcx, 1
mov rax, rcx
add rax, 0xf
cmp rax, rcx
ja 0x1400d9185
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.1401d5c30
sub rsp, rax
lea rcx, [rsp + 0x50]
mov r9d, dword [rbp + 0x1080]
mov r8d, edx
mov rdx, qword [rbp + 0x30]
call fcn.140050100
mov qword [rbp + 0x31d0], rax
mov rax, qword [rbp + 0x31d0]
mov qword [rbp + 0x31c8], rax
mov rcx, qword [rbp + 0x31c8]
call qword [sym.imp.WS2_32.dll_gethostbyname]
mov qword [rbp + 0x1108], rax
cmp qword [rbp + 0x1108], 0
jne 0x1400d9221
mov dword [rbp + 0x3148], 0
lea rcx, [rbp + 0x10a8]
call fcn.140001470
nop
lea rcx, [rbp + 0x10b0]
call fcn.140001470
nop
lea rcx, [rbp + 0x1070]
call fcn.140001470
nop
lea rcx, [rbp + 0x50]
call fcn.140001470
mov eax, dword [rbp + 0x3148]
jmp 0x1400da1cc
mov rax, qword [rbp + 0x1108]
mov rax, qword [rax + 0x18]
mov rax, qword [rax]
mov eax, dword [rax]
mov dword [rbp + 0x10fc], eax
mov r8d, reloc.OLEAUT32.dll_SafeArrayGetDim
lea rdx, [rbp + 0x10f8]
mov rcx, qword [rbp + 0x3278]
call qword [sym.imp.WS2_32.dll_connect]
test eax, eax
je 0x1400d929a
mov dword [rbp + 0x314c], 0
lea rcx, [rbp + 0x10a8]
call fcn.140001470
nop
lea rcx, [rbp + 0x10b0]
call fcn.140001470
nop
lea rcx, [rbp + 0x1070]
call fcn.140001470
nop
lea rcx, [rbp + 0x50]
call fcn.140001470
mov eax, dword [rbp + 0x314c]
jmp 0x1400da1cc
mov dword [rbp + 0x10f0], 1
mov dword [rsp + 0x20], 4
lea r9, [rbp + 0x10f0]
mov r8d, 1
mov edx, 6
mov rcx, qword [rbp + 0x3278]
call qword [sym.imp.WS2_32.dll_setsockopt]
mov dword [rbp + 0x10d0], eax
mov dword [rbp + 0x10d4], 1
mov dword [rsp + 0x20], 4
lea r9, [rbp + 0x10d4]
mov r8d, 8
mov edx, 0xffff
mov rcx, qword [rbp + 0x3278]
call qword [sym.imp.WS2_32.dll_setsockopt]
mov dword [rbp + 0x10d0], eax
mov dword [rbp + 0x10c0], 0
lea rdi, [rbp + 0x10c4]
xor eax, eax
mov ecx, 8
rep stosb byte [rdi], al
mov dword [rbp + 0x10ec], reloc.OLEAUT32.dll_VariantTimeToDosDateTime
mov dword [rbp + 0x10d8], 0
lea rdi, [rbp + 0x10dc]
xor eax, eax
mov ecx, 8
rep stosb byte [rdi], al
mov dword [rbp + 0x10b8], reloc.OLEAUT32.dll_VariantTimeToDosDateTime
mov dword [rbp + 0x10e8], 0
mov dword [rbp + 0x10c0], 1
mov dword [rbp + 0x10c8], 0x1388
mov dword [rbp + 0x10c4], 0x1388
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x38], 0
lea rax, [rbp + 0x10e8]
mov qword [rsp + 0x30], rax
mov eax, dword [rbp + 0x10b8]
mov dword [rsp + 0x28], eax
lea rax, [rbp + 0x10d8]
mov qword [rsp + 0x20], rax
mov r9d, dword [rbp + 0x10ec]
lea r8, [rbp + 0x10c0]
mov edx, 0x98000004
mov rcx, qword [rbp + 0x3278]
call qword [sym.imp.WS2_32.dll_WSAIoctl]
mov dword [rbp + 0x3150], 1
lea rcx, [rbp + 0x10a8]
call fcn.140001470
nop
lea rcx, [rbp + 0x10b0]
call fcn.140001470
nop
lea rcx, [rbp + 0x1070]
call fcn.140001470
nop
lea rcx, [rbp + 0x50]
call fcn.140001470
mov eax, dword [rbp + 0x3150]
jmp 0x1400da1cc
movzx eax, byte [0x14020f88f]
mov byte [rbp + 0x60], al
lea rdi, [rbp + 0x61]
xor eax, eax
mov ecx, 0x1000
rep stosb byte [rdi], al
mov qword [rbp + 0x28], 0
lea rcx, [rbp + 0x50]
call fcn.1400012c0
mov qword [rbp + 0x30], rax
cmp qword [rbp + 0x30], 0
jne 0x1400d9454
mov qword [rbp + 0x31d8], 0
jmp 0x1400d94d7
mov rcx, qword [rbp + 0x30]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
add eax, 1
mov dword [rbp + 0x1c], eax
cmp dword [rbp + 0x1c], 0x3fffffff
jle 0x1400d947a
mov qword [rbp + 0x31e0], 0
jmp 0x1400d94c9
movsxd rdx, dword [rbp + 0x1c]
shl rdx, 1
movsxd rcx, dword [rbp + 0x1c]
shl rcx, 1
mov rax, rcx
add rax, 0xf
cmp rax, rcx
ja 0x1400d949e
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.1401d5c30
sub rsp, rax
lea rcx, [rsp + 0x50]
mov r9d, dword [rbp + 0x1080]
mov r8d, edx
mov rdx, qword [rbp + 0x30]
call fcn.140050100
mov qword [rbp + 0x31e0], rax
mov rax, qword [rbp + 0x31e0]
mov qword [rbp + 0x31d8], rax
mov rax, qword [rbp + 0x31d8]
mov qword [rbp + 0x1098], rax
mov eax, 2
mov word [rbp + 0x1088], ax
movzx ecx, word [rbp + 4]
call qword [sym.imp.WS2_32.dll_htons]
mov word [rbp + 0x108a], ax
mov rcx, qword [rbp + 0x1098]
call qword [sym.imp.WS2_32.dll_inet_addr]
mov dword [rbp + 0x108c], eax
cmp dword [rbp + 0x108c], 0xffffffff
jne 0x1400d9599
mov rcx, qword [rbp + 0x1098]
call qword [sym.imp.WS2_32.dll_gethostbyname]
mov qword [rbp + 0x1110], rax
cmp qword [rbp + 0x1110], 0
je 0x1400d9554
mov rax, qword [rbp + 0x1110]
mov rax, qword [rax + 0x18]
mov rax, qword [rax]
mov eax, dword [rax]
mov dword [rbp + 0x108c], eax
jmp 0x1400d9599
mov dword [rbp + 0x3154], 0
lea rcx, [rbp + 0x10a8]
call fcn.140001470
nop
lea rcx, [rbp + 0x10b0]
call fcn.140001470
nop
lea rcx, [rbp + 0x1070]
call fcn.140001470
nop
lea rcx, [rbp + 0x50]
call fcn.140001470
mov eax, dword [rbp + 0x3154]
jmp 0x1400da1cc
mov r8d, reloc.OLEAUT32.dll_SafeArrayGetDim
lea rdx, [rbp + 0x1088]
mov rcx, qword [rbp + 0x3278]
call qword [sym.imp.WS2_32.dll_connect]
test eax, eax
je 0x1400d95fc
mov dword [rbp + 0x3158], 0
lea rcx, [rbp + 0x10a8]
call fcn.140001470
nop
lea rcx, [rbp + 0x10b0]
call fcn.140001470
nop
lea rcx, [rbp + 0x1070]
call fcn.140001470
nop
lea rcx, [rbp + 0x50]
call fcn.140001470
mov eax, dword [rbp + 0x3158]
jmp 0x1400da1cc
mov dword [rbp + 0x1078], 1
mov dword [rsp + 0x20], 4
lea r9, [rbp + 0x1078]
mov r8d, 1
mov edx, 6
mov rcx, qword [rbp + 0x3278]
call qword [sym.imp.WS2_32.dll_setsockopt]
mov dword [rbp + 0x20], eax
mov dword [rbp + 0x24], 1
mov dword [rsp + 0x20], 4
lea r9, [rbp + 0x24]
mov r8d, 8
mov edx, 0xffff
mov rcx, qword [rbp + 0x3278]
call qword [sym.imp.WS2_32.dll_setsockopt]
mov dword [rbp + 0x20], eax
mov dword [rbp + 8], 0
lea rdi, [rbp + 0xc]
xor eax, eax
mov ecx, 8
rep stosb byte [rdi], al
mov dword [rbp + 0x4c], reloc.OLEAUT32.dll_VariantTimeToDosDateTime
mov dword [rbp + 0x38], 0
lea rdi, [rbp + 0x3c]
xor eax, eax
mov ecx, 8
rep stosb byte [rdi], al
mov dword [rbp], reloc.OLEAUT32.dll_VariantTimeToDosDateTime
mov dword [rbp + 0x48], 0
mov dword [rbp + 8], 1
mov dword [rbp + 0x10], 0x1388
mov dword [rbp + 0xc], 0x1388
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x38], 0
lea rax, [rbp + 0x48]
mov qword [rsp + 0x30], rax
mov eax, dword [rbp]
mov dword [rsp + 0x28], eax
lea rax, [rbp + 0x38]
mov qword [rsp + 0x20], rax
mov r9d, dword [rbp + 0x4c]
lea r8, [rbp + 8]
mov edx, 0x98000004
mov rcx, qword [rbp + 0x3278]
call qword [sym.imp.WS2_32.dll_WSAIoctl]
mov rax, qword [rbp + 0x3290]
cmp dword [rax + 0x48], 0
je 0x1400d9747
mov dword [rbp + 0x315c], 1
lea rcx, [rbp + 0x10a8]
call fcn.140001470
nop
lea rcx, [rbp + 0x10b0]
call fcn.140001470
nop
lea rcx, [rbp + 0x1070]
call fcn.140001470
nop
lea rcx, [rbp + 0x50]
call fcn.140001470
mov eax, dword [rbp + 0x315c]
jmp 0x1400da1cc
lea rcx, [rbp + 0x1070]
call fcn.1400012c0
lea rdx, str.HTTPS
mov rcx, rax
call fcn.1400aa17c
test eax, eax
je 0x1400d9789
lea rcx, [rbp + 0x1070]
call fcn.1400012c0
lea rdx, [0x1402139c0]
mov rcx, rax
call fcn.1400aa17c
test eax, eax
jne 0x1400d9b16
mov rdx, qword [rbp + 0x3280]
lea rcx, [rbp + 0x3160]
call fcn.1400d8910
mov qword [rbp + 0x31e8], rax
mov r9d, dword [rbp + 0x3288]
mov r8, qword [rbp + 0x31e8]
mov r8, qword [r8]
lea rdx, str.CONNECT__s:_d_HTTP_1.0_r_n_r_n
lea rcx, [rbp + 0x60]
call fcn.1400acc54
lea rcx, [rbp + 0x3160]
call fcn.140001470
cmp dword [rbp + 0x107c], 0
je 0x1400d992e
movzx eax, byte [0x14021015a]
mov byte [rbp + 0x2130], al
lea rdi, [rbp + 0x2131]
xor eax, eax
mov ecx, 0x1000
rep stosb byte [rdi], al
movzx eax, byte [0x14021015b]
mov byte [rbp + 0x1120], al
lea rdi, [rbp + 0x1121]
xor eax, eax
mov ecx, 0x1000
rep stosb byte [rdi], al
lea rcx, [rbp + 0x10a8]
call fcn.1400012c0
mov rdx, rax
lea rcx, [rbp + 0x3168]
call fcn.1400d8910
mov qword [rbp + 0x31f0], rax
mov rax, qword [rbp + 0x31f0]
mov qword [rbp + 0x31f8], rax
lea rcx, [rbp + 0x10b0]
call fcn.1400012c0
mov rdx, rax
lea rcx, [rbp + 0x3170]
call fcn.1400d8910
mov qword [rbp + 0x3200], rax
mov r9, qword [rbp + 0x31f8]
mov r9, qword [r9]
mov r8, qword [rbp + 0x3200]
mov r8, qword [r8]
lea rdx, [0x1402139ec]
lea rcx, [rbp + 0x1120]
call fcn.1400acc54
lea rcx, [rbp + 0x3170]
call fcn.140001470
nop
lea rcx, [rbp + 0x3168]
call fcn.140001470
lea rcx, [rbp + 0x1120]
call fcn.1400a9170
mov qword [rsp + 0x20], 0x1001
lea r9, [rbp + 0x2130]
mov r8, rax
lea rdx, [rbp + 0x1120]
mov rcx, qword [rbp + 0x3270]
call fcn.1400d76f0
mov rdx, qword [rbp + 0x3280]
lea rcx, [rbp + 0x3178]
call fcn.1400d8910
mov qword [rbp + 0x3208], rax
lea rax, [rbp + 0x2130]
mov qword [rsp + 0x20], rax
mov r9d, dword [rbp + 0x3288]
mov r8, qword [rbp + 0x3208]
mov r8, qword [r8]
lea rdx, str.CONNECT__s:_d_HTTP_1.0_r_nProxy_Authorization:_Basic__s_r_n_r_n
lea rcx, [rbp + 0x60]
call fcn.1400acc54
lea rcx, [rbp + 0x3178]
call fcn.140001470
lea r8, [rbp + 0x60]
mov rdx, qword [rbp + 0x3278]
mov rcx, qword [rbp + 0x3270]
call fcn.1400d8c00
mov qword [rbp + 0x28], 0x1000
mov r9, qword [rbp + 0x28]
lea r8, [rbp + 0x60]
mov rdx, qword [rbp + 0x3278]
mov rcx, qword [rbp + 0x3270]
call fcn.1400d82e0
lea rcx, [0x140213a38]
call fcn.1400a9170
mov r8, rax
lea rdx, str.HTTP_1.0_200
lea rcx, [rbp + 0x60]
call fcn.1400ccd78
test eax, eax
je 0x1400d99f3
lea rcx, [0x140213a58]
call fcn.1400a9170
mov r8, rax
lea rdx, str.HTTP_1.1_200
lea rcx, [rbp + 0x60]
call fcn.1400ccd78
test eax, eax
je 0x1400d99f3
mov dword [rbp + 0x3180], 1
lea rcx, [rbp + 0x10a8]
call fcn.140001470
nop
lea rcx, [rbp + 0x10b0]
call fcn.140001470
nop
lea rcx, [rbp + 0x1070]
call fcn.140001470
nop
lea rcx, [rbp + 0x50]
call fcn.140001470
mov eax, dword [rbp + 0x3180]
jmp 0x1400da1cc
mov rax, qword [rbp + 0x3270]
cmp dword [rax + 0x220], 0
je 0x1400d9ad1
mov qword [rbp + 0x28], 0x1000
mov r9, qword [rbp + 0x28]
lea r8, [rbp + 0x60]
mov rdx, qword [rbp + 0x3278]
mov rcx, qword [rbp + 0x3270]
call fcn.1400d82e0
test eax, eax
jg 0x1400d9a73
mov dword [rbp + 0x3184], 0
lea rcx, [rbp + 0x10a8]
call fcn.140001470
nop
lea rcx, [rbp + 0x10b0]
call fcn.140001470
nop
lea rcx, [rbp + 0x1070]
call fcn.140001470
nop
lea rcx, [rbp + 0x50]
call fcn.140001470
mov eax, dword [rbp + 0x3184]
jmp 0x1400da1cc
lea rdx, [0x1402139bc]
lea rcx, [rbp + 0x60]
call fcn.1400ad8e0
test eax, eax
jne 0x1400d9acc
mov dword [rbp + 0x3188], 1
lea rcx, [rbp + 0x10a8]
call fcn.140001470
nop
lea rcx, [rbp + 0x10b0]
call fcn.140001470
nop
lea rcx, [rbp + 0x1070]
call fcn.140001470
nop
lea rcx, [rbp + 0x50]
call fcn.140001470
mov eax, dword [rbp + 0x3188]
jmp 0x1400da1cc
jmp 0x1400d99f3
mov dword [rbp + 0x318c], 0
lea rcx, [rbp + 0x10a8]
call fcn.140001470
nop
lea rcx, [rbp + 0x10b0]
call fcn.140001470
nop
lea rcx, [rbp + 0x1070]
call fcn.140001470
nop
lea rcx, [rbp + 0x50]
call fcn.140001470
mov eax, dword [rbp + 0x318c]
jmp 0x1400da1cc
lea rcx, [rbp + 0x1070]
call fcn.1400012c0
lea rdx, str.SOCKS5
mov rcx, rax
call fcn.1400aa17c
test eax, eax
jne 0x1400da18c
mov qword [rbp + 0x28], 0
cmp dword [rbp + 0x107c], 0
je 0x1400d9edf
mov byte [rbp + 0x60], 5
mov byte [rbp + 0x61], 2
mov byte [rbp + 0x62], 0
mov byte [rbp + 0x63], 2
mov qword [rbp + 0x28], 4
mov r9, qword [rbp + 0x28]
lea r8, [rbp + 0x60]
mov rdx, qword [rbp + 0x3278]
mov rcx, qword [rbp + 0x3270]
call fcn.1400d8990
mov qword [rbp + 0x28], 2
mov dword [rsp + 0x20], 8
lea r9, [rbp + 0x28]
lea r8, [rbp + 0x60]
mov rdx, qword [rbp + 0x3278]
mov rcx, qword [rbp + 0x3270]
call fcn.1400d80b0
movsx eax, byte [rbp + 0x60]
cmp eax, 5
jne 0x1400d9e95
movsx eax, byte [rbp + 0x61]
cmp eax, 2
jne 0x1400d9e46
mov byte [rbp + 0x60], 1
lea rcx, [rbp + 0x10b0]
call fcn.1400012c0
mov rcx, rax
call fcn.1400a81f4
mov qword [rbp + 0x28], rax
movzx eax, byte [rbp + 0x28]
mov byte [rbp + 0x61], al
lea rcx, [rbp + 0x10b0]
call fcn.1400012c0
mov qword [rbp + 0x30], rax
cmp qword [rbp + 0x30], 0
jne 0x1400d9c10
mov qword [rbp + 0x3210], 0
jmp 0x1400d9c93
mov rcx, qword [rbp + 0x30]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
add eax, 1
mov dword [rbp + 0x1c], eax
cmp dword [rbp + 0x1c], 0x3fffffff
jle 0x1400d9c36
mov qword [rbp + 0x3218], 0
jmp 0x1400d9c85
movsxd rdx, dword [rbp + 0x1c]
shl rdx, 1
movsxd rcx, dword [rbp + 0x1c]
shl rcx, 1
mov rax, rcx
add rax, 0xf
cmp rax, rcx
ja 0x1400d9c5a
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.1401d5c30
sub rsp, rax
lea rcx, [rsp + 0x50]
mov r9d, dword [rbp + 0x1080]
mov r8d, edx
mov rdx, qword [rbp + 0x30]
call fcn.140050100
mov qword [rbp + 0x3218], rax
mov rax, qword [rbp + 0x3218]
mov qword [rbp + 0x3210], rax
lea rcx, [rbp + 0x62]
mov rdx, qword [rbp + 0x3210]
call fcn.1400acdd0
mov rax, qword [rbp + 0x28]
add rax, 2
mov qword [rbp + 0x28], rax
lea rcx, [rbp + 0x10a8]
call fcn.1400012c0
mov rcx, rax
call fcn.1400a81f4
mov rdx, rax
mov rax, qword [rbp + 0x28]
mov byte [rbp + rax + 0x60], dl
lea rcx, [rbp + 0x10a8]
call fcn.1400012c0
mov qword [rbp + 0x30], rax
cmp qword [rbp + 0x30], 0
jne 0x1400d9cf5
mov qword [rbp + 0x3220], 0
jmp 0x1400d9d78
mov rcx, qword [rbp + 0x30]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
add eax, 1
mov dword [rbp + 0x1c], eax
cmp dword [rbp + 0x1c], 0x3fffffff
jle 0x1400d9d1b
mov qword [rbp + 0x3228], 0
jmp 0x1400d9d6a
movsxd rdx, dword [rbp + 0x1c]
shl rdx, 1
movsxd rcx, dword [rbp + 0x1c]
shl rcx, 1
mov rax, rcx
add rax, 0xf
cmp rax, rcx
ja 0x1400d9d3f
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.1401d5c30
sub rsp, rax
lea rcx, [rsp + 0x50]
mov r9d, dword [rbp + 0x1080]
mov r8d, edx
mov rdx, qword [rbp + 0x30]
call fcn.140050100
mov qword [rbp + 0x3228], rax
mov rax, qword [rbp + 0x3228]
mov qword [rbp + 0x3220], rax
mov rax, qword [rbp + 0x28]
lea rcx, [rbp + rax + 0x61]
mov rdx, qword [rbp + 0x3220]
call fcn.1400acdd0
lea rcx, [rbp + 0x10a8]
call fcn.1400012c0
mov rcx, rax
call fcn.1400a81f4
mov rdx, rax
mov rax, qword [rbp + 0x28]
lea rax, [rax + rdx + 1]
mov qword [rbp + 0x28], rax
mov r9, qword [rbp + 0x28]
lea r8, [rbp + 0x60]
mov rdx, qword [rbp + 0x3278]
mov rcx, qword [rbp + 0x3270]
call fcn.1400d8990
mov qword [rbp + 0x28], 2
mov dword [rsp + 0x20], 8
lea r9, [rbp + 0x28]
lea r8, [rbp + 0x60]
mov rdx, qword [rbp + 0x3278]
mov rcx, qword [rbp + 0x3270]
call fcn.1400d80b0
movsx eax, byte [rbp + 0x61]
test eax, eax
je 0x1400d9e44
mov dword [rbp + 0x3190], 0
lea rcx, [rbp + 0x10a8]
call fcn.140001470
nop
lea rcx, [rbp + 0x10b0]
call fcn.140001470
nop
lea rcx, [rbp + 0x1070]
call fcn.140001470
nop
lea rcx, [rbp + 0x50]
call fcn.140001470
mov eax, dword [rbp + 0x3190]
jmp 0x1400da1cc
jmp 0x1400d9e93
movsx eax, byte [rbp + 0x61]
test eax, eax
je 0x1400d9e93
mov dword [rbp + 0x3194], 0
lea rcx, [rbp + 0x10a8]
call fcn.140001470
nop
lea rcx, [rbp + 0x10b0]
call fcn.140001470
nop
lea rcx, [rbp + 0x1070]
call fcn.140001470
nop
lea rcx, [rbp + 0x50]
call fcn.140001470
mov eax, dword [rbp + 0x3194]
jmp 0x1400da1cc
jmp 0x1400d9eda
mov dword [rbp + 0x3198], 0
lea rcx, [rbp + 0x10a8]
call fcn.140001470
nop
lea rcx, [rbp + 0x10b0]
call fcn.140001470
nop
lea rcx, [rbp + 0x1070]
call fcn.140001470
nop
lea rcx, [rbp + 0x50]
call fcn.140001470
mov eax, dword [rbp + 0x3198]
jmp 0x1400da1cc
jmp 0x1400d9f8f
mov byte [rbp + 0x60], 5
mov byte [rbp + 0x61], 1
mov byte [rbp + 0x62], 0
mov qword [rbp + 0x28], 3
mov r9, qword [rbp + 0x28]
lea r8, [rbp + 0x60]
mov rdx, qword [rbp + 0x3278]
mov rcx, qword [rbp + 0x3270]
call fcn.1400d8990
mov qword [rbp + 0x28], 2
mov dword [rsp + 0x20], 8
lea r9, [rbp + 0x28]
lea r8, [rbp + 0x60]
mov rdx, qword [rbp + 0x3278]
mov rcx, qword [rbp + 0x3270]
call fcn.1400d80b0
movsx eax, byte [rbp + 0x60]
cmp eax, 5
jne 0x1400d9f4a
movsx eax, byte [rbp + 0x61]
test eax, eax
je 0x1400d9f8f
mov dword [rbp + 0x319c], 0
lea rcx, [rbp + 0x10a8]
call fcn.140001470
nop
lea rcx, [rbp + 0x10b0]
call fcn.140001470
nop
lea rcx, [rbp + 0x1070]
call fcn.140001470
nop
lea rcx, [rbp + 0x50]
call fcn.140001470
mov eax, dword [rbp + 0x319c]
jmp 0x1400da1cc
mov byte [rbp + 0x60], 5
mov byte [rbp + 0x61], 1
mov byte [rbp + 0x62], 0
mov byte [rbp + 0x63], 3
mov rcx, qword [rbp + 0x3280]
call fcn.1400a81f4
mov byte [rbp + 0x64], al
mov rax, qword [rbp + 0x3280]
mov qword [rbp + 0x30], rax
cmp qword [rbp + 0x30], 0
jne 0x1400d9fd0
mov qword [rbp + 0x3230], 0
jmp 0x1400da053
mov rcx, qword [rbp + 0x30]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
add eax, 1
mov dword [rbp + 0x1c], eax
cmp dword [rbp + 0x1c], 0x3fffffff
jle 0x1400d9ff6
mov qword [rbp + 0x3238], 0
jmp 0x1400da045
movsxd rdx, dword [rbp + 0x1c]
shl rdx, 1
movsxd rcx, dword [rbp + 0x1c]
shl rcx, 1
mov rax, rcx
add rax, 0xf
cmp rax, rcx
ja 0x1400da01a
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.1401d5c30
sub rsp, rax
lea rcx, [rsp + 0x50]
mov r9d, dword [rbp + 0x1080]
mov r8d, edx
mov rdx, qword [rbp + 0x30]
call fcn.140050100
mov qword [rbp + 0x3238], rax
mov rax, qword [rbp + 0x3238]
mov qword [rbp + 0x3230], rax
lea rcx, [rbp + 0x65]
mov rdx, qword [rbp + 0x3230]
call fcn.1400acdd0
movzx ecx, word [rbp + 0x3288]
call qword [sym.imp.WS2_32.dll_htons]
mov word [rbp + 0x3140], ax
mov rcx, qword [rbp + 0x3280]
call fcn.1400a81f4
lea rcx, [rbp + rax + 0x65]
mov r8d, 2
lea rdx, [rbp + 0x3140]
call fcn.1400a8d20
mov rcx, qword [rbp + 0x3280]
call fcn.1400a81f4
add rax, 7
mov qword [rbp + 0x28], rax
mov r9, qword [rbp + 0x28]
lea r8, [rbp + 0x60]
mov rdx, qword [rbp + 0x3278]
mov rcx, qword [rbp + 0x3270]
call fcn.1400d8990
mov qword [rbp + 0x28], 0xa
mov dword [rsp + 0x20], 8
lea r9, [rbp + 0x28]
lea r8, [rbp + 0x60]
mov rdx, qword [rbp + 0x3278]
mov rcx, qword [rbp + 0x3270]
call fcn.1400d80b0
movsx eax, byte [rbp + 0x60]
cmp eax, 5
jne 0x1400da105
movsx eax, byte [rbp + 0x61]
test eax, eax
je 0x1400da14a
mov dword [rbp + 0x31a0], 0
lea rcx, [rbp + 0x10a8]
call fcn.140001470
nop
lea rcx, [rbp + 0x10b0]
call fcn.140001470
nop
lea rcx, [rbp + 0x1070]
call fcn.140001470
nop
lea rcx, [rbp + 0x50]
call fcn.140001470
mov eax, dword [rbp + 0x31a0]
jmp 0x1400da1cc
mov dword [rbp + 0x31a4], 1
lea rcx, [rbp + 0x10a8]
call fcn.140001470
nop
lea rcx, [rbp + 0x10b0]
call fcn.140001470
nop
lea rcx, [rbp + 0x1070]
call fcn.140001470
nop
lea rcx, [rbp + 0x50]
call fcn.140001470
mov eax, dword [rbp + 0x31a4]
jmp 0x1400da1cc
mov dword [rbp + 0x31a8], 0
lea rcx, [rbp + 0x10a8]
call fcn.140001470
nop
lea rcx, [rbp + 0x10b0]
call fcn.140001470
nop
lea rcx, [rbp + 0x1070]
call fcn.140001470
nop
lea rcx, [rbp + 0x50]
call fcn.140001470
mov eax, dword [rbp + 0x31a8]
mov rcx, qword [rbp + 0x3240]
xor rcx, rbp
call fcn.1400a8040
lea rsp, [rbp + 0x3258]
pop rdi
pop rbp
ret