Function at 0x180028140
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov dword [rax + 0x18], r8d
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x128]
sub rsp, 0x1e8
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
mov rsi, rdx
xor r13d, r13d
mov dword [rbp + 0x140], r13d
lea rdi, [rdx + 8]
mov qword [rbp + 0x130], rdi
cmp dword [rdx], 0x19
jbe 0x1800281a9
lea r8d, [r13 + 4]
lea rdx, str.GET
mov rcx, qword [rdi]
call fcn.1800b0a10
test eax, eax
je 0x180028202
mov rbx, rdi
cmp dword [rsi], 0x1a
jbe 0x1800285f5
mov qword [rbp + 0x130], rbx
mov r8d, 5
lea rdx, [0x1800eb220]
mov rcx, qword [rdi]
call fcn.1800b0a10
test eax, eax
je 0x180028202
cmp dword [rsi], 0x1a
jbe 0x1800285f5
mov qword [rbp + 0x130], rbx
mov r8d, 5
lea rdx, str.HEAD
mov rcx, qword [rdi]
call fcn.1800b0a10
test eax, eax
jne 0x1800285f5
mov ebx, dword [rsi]
mov r14, qword [rdi]
mov qword [rsp + 0x60], r13
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x78], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x60], r13b
mov eax, socket
cmp rbx, 0xf
ja 0x18002824b
mov qword [rsp + 0x70], rbx
mov r8d, ebx
mov rdx, r14
lea rcx, [rsp + 0x60]
call fcn.18009fc20
mov byte [rsp + rbx + 0x60], r13b
mov rdi, qword [rsp + 0x60]
jmp 0x1800282bb
mov rsi, rbx
or rsi, 0xf
cmp rsi, rax
cmovb rsi, rax
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x180028292
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180028f4a
mov rcx, rax
call fcn.18009d1b8
test rax, rax
je 0x180028f38
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x18002829a
call fcn.18009d1b8
mov rdi, rax
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], rsi
mov r8, rbx
mov rdx, r14
mov rcx, rdi
call fcn.18009fc20
mov byte [rdi + rbx], r13b
mov qword [rsp + 0x60], rdi
lea rsi, [rsp + 0x60]
mov r14, qword [rsp + 0x78]
cmp r14, 0x10
cmovae rsi, rdi
mov r15, qword [rsp + 0x70]
test r15, r15
je 0x1800285be
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp - 0x40]
call fcn.1800a02d0
lea rcx, [0x1800ea968]
lea r12, [0x1800ea96a]
nop word [rax + rax]
movzx eax, byte [rcx]
mov byte [rbp + rax - 0x40], 1
inc rcx
cmp rcx, r12
jne 0x180028300
lea rcx, [r15 + rsi]
mov rbx, rsi
cmp rsi, rcx
jae 0x1800285be
movzx eax, byte [rbx]
cmp byte [rbp + rax - 0x40], 0
jne 0x180028337
inc rbx
cmp rbx, rcx
jb 0x180028320
jmp 0x1800285be
sub rbx, rsi
cmp rbx, 0xffffffffffffffff
je 0x1800285be
lea rsi, [rsp + 0x60]
cmp r14, 0x10
cmovae rsi, rdi
cmp rbx, r15
jae 0x1800283a4
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp - 0x40]
call fcn.1800a02d0
lea rcx, [0x1800ea968]
nop
movzx eax, byte [rcx]
mov byte [rbp + rax - 0x40], 1
inc rcx
cmp rcx, r12
jne 0x180028370
lea rcx, [r15 + rsi]
lea r12, [rbx + rsi]
cmp r12, rcx
jae 0x1800283a4
nop dword [rax]
movzx eax, byte [r12]
cmp byte [rbp + rax - 0x40], 0
je 0x18002840d
inc r12
cmp r12, rcx
jb 0x180028390
mov r12, 0xffffffffffffffff
mov qword [rbp - 0x80], r13
mov qword [rbp - 0x70], r13
mov qword [rbp - 0x68], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x80], 0
mov rsi, r12
cmp r15, r12
cmovb rsi, r15
lea r15, [rsp + 0x60]
cmp r14, 0x10
cmovae r15, rdi
movabs rcx, 0x7fffffffffffffff
movabs rax, 0x8000000000000027
cmp rsi, 0xf
ja 0x180028412
mov qword [rbp - 0x70], rsi
mov r8, rsi
mov rdx, r15
lea rcx, [rbp - 0x80]
call fcn.18009fc20
mov byte [rbp + rsi - 0x80], 0
jmp 0x1800284a2
sub r12, rsi
jmp 0x1800283ab
cmp rsi, rcx
ja 0x180028f50
mov rbx, rsi
or rbx, 0xf
cmp rbx, rcx
jbe 0x180028449
mov rbx, rcx
mov rcx, rax
call fcn.18009d1b8
test rax, rax
je 0x180028f56
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x180028484
cmp rbx, 0x16
mov eax, socket
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x180028472
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180028f26
jmp 0x18002842a
test rcx, rcx
je 0x180028481
call fcn.18009d1b8
mov rdi, rax
jmp 0x180028484
mov rdi, r13
mov qword [rbp - 0x70], rsi
mov qword [rbp - 0x68], rbx
mov r8, rsi
mov rdx, r15
mov rcx, rdi
call fcn.18009fc20
mov byte [rdi + rsi], 0
mov qword [rbp - 0x80], rdi
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x30]
call fcn.18002a190
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x1800284ed
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800284e8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180028fdb
call fcn.18009d1f4
lea rsi, [rbp - 0x80]
mov rdi, qword [rbp - 0x80]
mov r13, qword [rbp - 0x68]
cmp r13, 0x10
cmovae rsi, rdi
mov r15, qword [rbp - 0x70]
cmp r15, 7
jb 0x18002856c
lea r14, [r15 + rsi]
lea r8, [r14 - 6]
sub r8, rsi
mov edx, 0x68
mov rcx, rsi
call fcn.1800a06d0
mov rbx, rax
test rax, rax
je 0x18002856c
nop dword [rax + rax]
mov r8d, 7
lea rdx, str.http:__
mov rcx, rbx
call fcn.18009fb20
test eax, eax
je 0x18002861b
inc rbx
lea r8, [r14 - 6]
sub r8, rbx
mov edx, 0x68
mov rcx, rbx
call fcn.1800a06d0
mov rbx, rax
test rax, rax
jne 0x180028530
cmp r13, 0x10
jb 0x1800285a3
lea rdx, [r13 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x18002859b
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180028f56
mov rcx, rdi
call fcn.18009d1f4
xor edx, edx
mov qword [rbp - 0x70], rdx
mov qword [rbp - 0x68], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x80], dl
mov r14, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x60]
cmp r14, 0x10
jb 0x1800285f5
lea rdx, [r14 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x1800285ed
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180028f38
mov rcx, rdi
call fcn.18009d1f4
xor al, al
movaps xmm6, xmmword [rsp + 0x1d0]
movaps xmm7, xmmword [rsp + 0x1c0]
add rsp, 0x1e8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
sub rbx, rsi
cmp rbx, 0xffffffffffffffff
je 0x18002856c
lea rsi, [rbx + 7]
cmp rsi, r15
ja 0x18002856c
lea r14, [rbp - 0x80]
cmp r13, 0x10
cmovae r14, rdi
cmp rsi, r15
jae 0x18002856c
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp - 0x40]
call fcn.1800a02d0
lea rcx, str.___r_n
lea rdx, [0x1800eb23c]
nop dword [rax]
movzx eax, byte [rcx]
mov byte [rbp + rax - 0x40], 1
inc rcx
cmp rcx, rdx
jne 0x180028670
lea rcx, [r14 + r15]
lea rbx, [r14 + rsi]
cmp rbx, rcx
jae 0x18002856c
movzx eax, byte [rbx]
cmp byte [rbp + rax - 0x40], 0
jne 0x1800286a8
inc rbx
cmp rbx, rcx
jb 0x180028691
jmp 0x18002856c
sub rbx, r14
cmp rbx, 0xffffffffffffffff
je 0x18002856c
xor edx, edx
mov qword [rbp - 0x60], rdx
mov qword [rbp - 0x50], rdx
mov qword [rbp - 0x48], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x60], dl
cmp r15, rsi
jb 0x180028f5c
sub rbx, rsi
sub r15, rsi
cmp r15, rbx
cmovb rbx, r15
lea r14, [rbp - 0x80]
cmp r13, 0x10
cmovae r14, rdi
add r14, rsi
cmp rbx, 0xf
ja 0x180028716
mov qword [rbp - 0x50], rbx
mov r8, rbx
mov rdx, r14
lea rcx, [rbp - 0x60]
call fcn.18009fc20
mov byte [rbp + rbx - 0x60], 0
mov rsi, qword [rbp - 0x60]
jmp 0x1800287ba
movabs rax, 0x7fffffffffffffff
cmp rbx, rax
ja 0x180028f62
mov rdi, rbx
or rdi, 0xf
cmp rdi, rax
jbe 0x180028761
mov rdi, rax
movabs rax, 0x8000000000000027
mov rcx, rax
call fcn.18009d1b8
test rax, rax
je 0x180028fdb
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x18002879c
cmp rdi, 0x16
mov eax, socket
cmovb rdi, rax
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x18002878a
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180028f2c
jmp 0x180028742
test rcx, rcx
je 0x180028799
call fcn.18009d1b8
mov rsi, rax
jmp 0x18002879c
mov rsi, rdx
mov qword [rbp - 0x50], rbx
mov qword [rbp - 0x48], rdi
mov r8, rbx
mov rdx, r14
mov rcx, rsi
call fcn.18009fc20
mov byte [rsi + rbx], 0
mov qword [rbp - 0x60], rsi
xor bl, bl
lea r14, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae r14, rsi
call fcn.180019bc4
xor r13d, r13d
test eax, eax
jne 0x18002888b
mov rdi, qword [0x18010cee8]
mov ebx, r13d
mov eax, dword [rdi + 0xc]
test eax, eax
je 0x18002881f
nop word [rax + rax]
mov esi, ebx
shl rsi, 7
lea rcx, [rdi + 0x2000]
add rcx, rsi
mov rdx, r14
call fcn.180004158
test al, al
je 0x180028816
cmp byte [rsi + rdi + 0x207f], 1
je 0x180028861
inc ebx
mov eax, dword [rdi + 0xc]
cmp ebx, eax
jb 0x1800287f0
mov ebx, r13d
test eax, eax
je 0x180028861
nop word [rax + rax]
mov esi, ebx
shl rsi, 7
lea rcx, [rdi + 0x2000]
add rcx, rsi
mov rdx, r14
call fcn.180004158
test al, al
je 0x18002885a
cmp byte [rsi + rdi + 0x207f], r13b
je 0x180028a24
inc ebx
cmp ebx, dword [rdi + 0xc]
jb 0x180028830
xor bl, bl
cmp byte [0x18010cef8], r13b
je 0x18002888b
mov byte [0x18010cef8], r13b
mov rcx, qword [0x18010ced8]
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp eax, 1
je 0x18002888b
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp byte [0x18010a364], 0
je 0x180028965
lea rdi, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rdi, qword [rbp - 0x60]
movdqa xmm6, xmmword [0x1800ebf40]
movdqa xmm7, xmmword [0x1800ec0b0]
mov dword [rsp + 0x50], 0x6bba9748
mov dword [rsp + 0x54], 0xf9f78ad5
mov word [rsp + 0x58], 0x9008
mov rcx, qword gs:[0x58]
mov eax, dword [0x18010bb98]
mov edx, 4
mov rcx, qword [rcx + rax*8]
mov eax, dword [rdx + rcx]
cmp dword [0x18010d140], eax
jg 0x180028f68
lea rdx, [0x180105cf0]
cmp byte [0x180105d1b], 0
je 0x180028944
mov r9, r13
movabs r8, 0xd993efbb19cfe32d
nop dword [rax]
nop word [rax + rax]
movzx ecx, r9b
and cl, 7
shl cl, 3
mov rax, r8
shr rax, cl
xor byte [r9 + rdx], al
inc r9
cmp r9, 0x2b
jb 0x180028920
mov byte [0x180105d1b], 0
lea rax, str.true
lea r9, str.false
test bl, bl
cmovne r9, rax
mov r8, rdi
mov ecx, 4
call fcn.18006a848
test bl, bl
je 0x180028c80
mov edx, 1
lea rcx, [rbp - 0x40]
call fcn.18000a474
nop
lea rdx, str.X_Proxy_Forward_To:
lea rcx, [rbp - 0x30]
call fcn.180003484
mov rcx, rax
mov rdx, qword [rbp + 0x148]
call fcn.180003484
mov rcx, rax
lea rdx, [0x1800eaa70]
call fcn.180003484
mov rcx, rax
mov edx, dword [rbp + 0x150]
call fcn.1800298a0
mov rcx, rax
lea rdx, [0x1800ea968]
call fcn.180003484
cmp r12, 0xffffffffffffffff
jne 0x180028d5b
mov qword [rsp + 0x30], r13
mov r14, r13
mov qword [rsp + 0x40], r13
mov edi, reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x48], rdi
mov byte [rsp + 0x30], 0
mov dword [rbp + 0x140], 2
mov rcx, qword [rbp + 0x48]
mov eax, ecx
and al, 0x22
cmp al, 2
je 0x180028a2b
mov rax, qword [rbp + 0x18]
mov rbx, qword [rax]
test rbx, rbx
je 0x180028a2b
mov rax, qword [rbp - 8]
mov r15, qword [rax]
cmp rbx, qword [rbp + 0x40]
cmovb rbx, qword [rbp + 0x40]
sub rbx, r15
jmp 0x180028a50
mov bl, 1
jmp 0x180028863
test cl, 4
jne 0x180028a85
mov rax, qword [rbp + 0x10]
mov rcx, qword [rax]
test rcx, rcx
je 0x180028a85
mov rax, qword [rbp - 0x10]
mov r15, qword [rax]
mov rax, qword [rbp + 0x28]
movsxd rbx, dword [rax]
sub rbx, r15
add rbx, rcx
mov rax, r15
test rax, rax
je 0x180028a85
cmp rbx, rdi
ja 0x180028ae3
mov qword [rsp + 0x40], rbx
mov r8, rbx
mov rdx, r15
lea rcx, [rsp + 0x30]
call fcn.18009fc20
mov byte [rsp + rbx + 0x30], 0
mov rdi, qword [rsp + 0x48]
mov r14, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x30]
lea r9, [rsp + 0x30]
cmp rdi, 0x10
cmovae r9, rsi
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x78]
mov rax, rdx
sub rax, rcx
cmp r14, rax
ja 0x180028b92
lea rax, [r14 + rcx]
mov qword [rsp + 0x70], rax
lea rbx, [rsp + 0x60]
cmp rdx, 0x10
cmovae rbx, qword [rsp + 0x60]
add rbx, rcx
mov r8, r14
mov rdx, r9
mov rcx, rbx
call fcn.18009fc20
mov byte [r14 + rbx], 0
jmp 0x180028bb1
movabs rax, 0x7fffffffffffffff
cmp rbx, rax
ja 0x180028fcf
mov rdi, rbx
or rdi, 0xf
cmp rdi, rax
jbe 0x180028b2e
mov rdi, rax
movabs rax, 0x8000000000000027
mov rcx, rax
call fcn.18009d1b8
test rax, rax
je 0x180028fd5
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x180028b69
cmp rdi, 0x16
mov eax, socket
cmovb rdi, rax
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x180028b57
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180028f32
jmp 0x180028b0f
test rcx, rcx
je 0x180028b66
call fcn.18009d1b8
mov rsi, rax
jmp 0x180028b69
mov rsi, r13
mov r14, rbx
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rdi
mov r8, rbx
mov rdx, r15
mov rcx, rsi
call fcn.18009fc20
mov byte [rsi + rbx], 0
mov qword [rsp + 0x30], rsi
jmp 0x180028a8a
mov qword [rsp + 0x20], r14
xor r8d, r8d
mov rdx, r14
lea rcx, [rsp + 0x60]
call fcn.1800037a0
mov rdi, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x30]
cmp rdi, 0x10
jb 0x180028be8
lea rdx, [rdi + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x180028be0
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180028f44
mov rcx, rsi
call fcn.18009d1f4
mov rdx, qword [rsp + 0x70]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov rbx, rax
test rax, rax
je 0x180028c32
lea rdx, [rsp + 0x60]
cmp qword [rsp + 0x78], 0x10
cmovae rdx, qword [rsp + 0x60]
mov r8, qword [rsp + 0x70]
mov rcx, rax
call fcn.18009fc20
mov ecx, dword [rsp + 0x70]
mov rax, qword [rbp + 0x138]
mov dword [rax], ecx
mov rax, qword [rbp + 0x130]
mov qword [rax], rbx
mov rax, qword [rbp - 0x40]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx - 0x40], rax
mov rax, qword [rbp - 0x40]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x98]
mov dword [rbp + rcx - 0x44], edx
lea rcx, [rbp - 0x28]
call fcn.18000a12c
lea rcx, [rbp - 0x20]
call fcn.18000a53c
nop
lea rax, vtable.std::ios_base.0
mov qword [rbp + 0x58], rax
lea rcx, [rbp + 0x58]
call fcn.18009c330
nop
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
jb 0x180028cbb
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180028cb6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180028fdb
call fcn.18009d1f4
mov qword [rbp - 0x50], r13
mov qword [rbp - 0x48], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x60], 0
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x180028d06
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180028d01
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180028f56
call fcn.18009d1f4
mov qword [rbp - 0x70], r13
mov qword [rbp - 0x68], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x80], 0
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x1800285f5
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800285f0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180028f38
jmp 0x1800285f0
mov qword [rsp + 0x30], r13
mov r14, r13
mov qword [rsp + 0x40], r13
mov ebx, reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x48], rbx
mov byte [rsp + 0x30], 0
mov dword [rbp + 0x140], 8
mov rcx, qword [rbp + 0x48]
mov eax, ecx
and al, 0x22
cmp al, 2
je 0x180028dae
mov rax, qword [rbp + 0x18]
mov rdi, qword [rax]
test rdi, rdi
je 0x180028dae
mov rax, qword [rbp - 8]
mov r15, qword [rax]
cmp rdi, qword [rbp + 0x40]
cmovb rdi, qword [rbp + 0x40]
sub rdi, r15
jmp 0x180028ddb
test cl, 4
jne 0x180028ebf
mov rax, qword [rbp + 0x10]
mov rcx, qword [rax]
test rcx, rcx
je 0x180028ebf
mov rax, qword [rbp - 0x10]
mov r15, qword [rax]
mov rax, qword [rbp + 0x28]
movsxd rdi, dword [rax]
sub rdi, r15
add rdi, rcx
mov rax, r15
test rax, rax
je 0x180028ebf
cmp rdi, rbx
ja 0x180028e15
mov qword [rsp + 0x40], rdi
mov r8, rdi
mov rdx, r15
lea rcx, [rsp + 0x30]
call fcn.18009fc20
mov byte [rsp + rdi + 0x30], 0
mov rbx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x40]
jmp 0x180028ebf
movabs rax, 0x7fffffffffffffff
cmp rdi, rax
ja 0x180028fe1
mov rbx, rdi
or rbx, 0xf
cmp rbx, rax
jbe 0x180028e60
mov rbx, rax
movabs rax, 0x8000000000000027
mov rcx, rax
call fcn.18009d1b8
test rax, rax
je 0x180028f20
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x180028e9b
cmp rbx, 0x16
mov eax, socket
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x180028e89
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180028f3e
jmp 0x180028e41
test rcx, rcx
je 0x180028e98
call fcn.18009d1b8
mov rsi, rax
jmp 0x180028e9b
mov rsi, r13
mov r14, rdi
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x48], rbx
mov r8, rdi
mov rdx, r15
mov rcx, rsi
call fcn.18009fc20
mov byte [rsi + rdi], 0
mov qword [rsp + 0x30], rsi
lea r8, [rsp + 0x30]
cmp rbx, 0x10
cmovae r8, qword [rsp + 0x30]
mov r9, r14
mov rdx, r12
lea rcx, [rsp + 0x60]
call fcn.180015c7c
nop
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x180028be8
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180028be3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180028f44
jmp 0x180028be3
call fcn.1800a45b8
nop
call fcn.180001df0
nop
call fcn.180001df0
nop
call fcn.180001df0
nop
call fcn.1800a45b8
nop
call fcn.180001df0
nop
call fcn.1800a45b8
nop
call fcn.180001df0
nop
call fcn.180001e88
int3
call fcn.1800a45b8
nop
call fcn.1800076d4
int3
call fcn.180001e88
nop
lea rcx, [0x18010d140]
call fcn.18009d704
cmp dword [0x18010d140], 0xffffffff
jne 0x1800288f4
mov word [0x180105d1a], 0x1cf
movaps xmmword [0x180105cf0], xmm6
movaps xmmword [0x180105d00], xmm7
movsd xmm0, qword [rsp + 0x50]
movsd qword [0x180105d10], xmm0
movzx eax, word [rsp + 0x58]
mov word [0x180105d18], ax
lea rcx, [0x1800cdd90]
call fcn.18009d564
lea rcx, [0x18010d140]
call fcn.18009d6a4
jmp 0x1800288f4
call fcn.180001e88
int3
call fcn.1800a45b8
nop
call fcn.1800a45b8
nop
call fcn.180001e88
int3