Function at 0x180011a40
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
push rbp
push rdi
push r14
lea rbp, [rax - 0xf8]
sub rsp, 0x1e0
mov qword [rsp + 0x70], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov rax, qword [0x180067008]
xor rax, rsp
mov qword [rbp + 0xd0], rax
mov r14, rcx
mov rbx, qword [rcx + 0x10]
mov rbx, qword [rbx]
xor esi, esi
cmp rbx, qword [rcx + 0x10]
je 0x18001242f
mov qword [rbp + 0x38], reloc.WS2_32.dll_ntohs
mov qword [rbp + 0x30], rsi
mov byte [rbp + 0x20], 0
lea rdi, [rbx + 0x40]
cmp qword [rdi + 0x18], 0x10
jb 0x180011aad
mov rcx, qword [rdi]
jmp 0x180011ab0
mov rcx, rdi
mov r8d, 4
lea rdx, str.http
call fcn.18003bcfc
test eax, eax
jne 0x180011b56
lea rdx, [rbp + 0x20]
mov rcx, rdi
call fcn.180013cb0
test eax, eax
jne 0x180011b2d
mov rax, qword [rbp + 0x38]
cmp rax, 0x10
jb 0x1800122d3
mov rcx, qword [rbp + 0x20]
inc rax
cmp rax, 0x1000
jb 0x1800122ce
test cl, 0x1f
jne 0x180012339
mov rax, qword [rcx - 8]
cmp rax, rcx
jae 0x180012333
sub rcx, rax
cmp rcx, 8
jb 0x18001232d
cmp rcx, 0x27
ja 0x180012327
jmp 0x1800122cb
lea rcx, [r14 + 0x20]
mov r8, rdi
lea rdx, [rsp + 0x78]
call fcn.180014e40
mov rcx, qword [rsp + 0x78]
add rcx, 0x40
lea rax, [rbp + 0x20]
cmp rcx, rax
je 0x180011b72
lea rdx, [rbp + 0x20]
jmp 0x180011b66
lea rax, [rbp + 0x20]
cmp rax, rdi
je 0x180011b72
mov rdx, rdi
lea rcx, [rbp + 0x20]
or r9, 0xffffffffffffffff
xor r8d, r8d
call fcn.1800021e0
mov qword [rbp + 0x58], reloc.WS2_32.dll_ntohs
mov qword [rbp + 0x50], rsi
mov byte [rbp + 0x40], 0
mov qword [rbp + 0x78], reloc.WS2_32.dll_ntohs
mov qword [rbp + 0x70], rsi
mov byte [rbp + 0x60], 0
mov qword [rbp + 0x98], reloc.WS2_32.dll_ntohs
mov qword [rbp + 0x90], rsi
mov byte [rbp + 0x80], 0
movsd xmm0, qword [0x180058b38]
movsd qword [rbp + 0xa0], xmm0
movzx eax, byte [0x180058b40]
mov byte [rbp + 0xa8], al
movzx eax, byte [rbp + 0xa6]
xor byte [rbp + 0xa7], al
movzx ecx, byte [rbp + 0xa5]
xor al, cl
mov byte [rbp + 0xa6], al
movzx eax, byte [rbp + 0xa4]
xor cl, al
mov byte [rbp + 0xa5], cl
movzx ecx, byte [rbp + 0xa3]
xor al, cl
mov byte [rbp + 0xa4], al
movzx eax, byte [rbp + 0xa2]
xor cl, al
mov byte [rbp + 0xa3], cl
movzx ecx, byte [rbp + 0xa1]
xor al, cl
mov byte [rbp + 0xa2], al
movzx eax, byte [rbp + 0xa0]
xor cl, al
mov byte [rbp + 0xa1], cl
xor al, 0xdb
mov byte [rbp + 0xa0], al
mov qword [rsp + 0x48], reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x40], rsi
mov byte [rsp + 0x30], 0
jne 0x180011c51
mov r8, rsi
jmp 0x180011c6a
lea rax, [rbp + 0xa0]
or r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180011c60
lea rdx, [rbp + 0xa0]
lea rcx, [rsp + 0x30]
call fcn.1800020b0
nop
lea r8, [rsp + 0x30]
lea rdx, [rbp + 0x20]
lea rcx, [rsp + 0x50]
call fcn.18001d2b0
mov rdi, rax
lea rax, [rbp + 0x40]
cmp rax, rdi
je 0x180011d0a
mov rcx, qword [rbp + 0x58]
cmp rcx, 0x10
jb 0x180011ced
inc rcx
mov rdx, qword [rbp + 0x40]
cmp rcx, 0x1000
jb 0x180011ce5
test dl, 0x1f
jne 0x180012351
mov rax, qword [rdx - 8]
cmp rax, rdx
jae 0x18001234b
sub rdx, rax
cmp rdx, 8
jb 0x180012345
cmp rdx, 0x27
ja 0x18001233f
mov rdx, rax
mov rcx, rdx
call fcn.180033ed0
mov qword [rbp + 0x58], reloc.WS2_32.dll_ntohs
mov qword [rbp + 0x50], rsi
mov byte [rbp + 0x40], 0
mov rdx, rdi
lea rcx, [rbp + 0x40]
call fcn.1800063c0
nop
mov rax, qword [rsp + 0x68]
cmp rax, 0x10
jb 0x180011d5a
inc rax
mov rcx, qword [rsp + 0x50]
cmp rax, 0x1000
jb 0x180011d55
test cl, 0x1f
jne 0x180012369
mov rax, qword [rcx - 8]
cmp rax, rcx
jae 0x180012363
sub rcx, rax
cmp rcx, 8
jb 0x18001235d
cmp rcx, 0x27
ja 0x180012357
mov rcx, rax
call fcn.180033ed0
mov qword [rsp + 0x68], reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x60], rsi
mov byte [rsp + 0x50], 0
mov rax, qword [rsp + 0x48]
cmp rax, 0x10
jb 0x180011dbd
inc rax
mov rcx, qword [rsp + 0x30]
cmp rax, 0x1000
jb 0x180011db8
test cl, 0x1f
jne 0x180012381
mov rax, qword [rcx - 8]
cmp rax, rcx
jae 0x18001237b
sub rcx, rax
cmp rcx, 8
jb 0x180012375
cmp rcx, 0x27
ja 0x18001236f
mov rcx, rax
call fcn.180033ed0
movsd xmm0, qword [0x180058b48]
movsd qword [rbp + 0xb0], xmm0
mov eax, dword [0x180058b50]
mov dword [rbp + 0xb8], eax
movzx eax, word [0x180058b54]
mov word [rbp + 0xbc], ax
lea r8, [rbp + 0xbb]
mov r9d, 2
nop dword [rax]
nop dword [rax + rax]
movzx ecx, byte [r8]
xor byte [r8 + 1], cl
movzx eax, byte [r8 - 1]
xor al, cl
mov byte [r8], al
movzx eax, byte [r8 - 2]
xor byte [r8 - 1], al
movzx eax, byte [r8 - 3]
xor byte [r8 - 2], al
movzx eax, byte [r8 - 4]
xor byte [r8 - 3], al
movzx eax, byte [r8 - 5]
xor byte [r8 - 4], al
lea r8, [r8 - 6]
sub r9, 1
jne 0x180011e00
xor byte [rbp + 0xb0], 0xc
mov qword [rsp + 0x48], reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x40], rsi
mov byte [rsp + 0x30], r9b
jne 0x180011e61
mov r8, rsi
jmp 0x180011e7a
lea rax, [rbp + 0xb0]
or r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180011e70
lea rdx, [rbp + 0xb0]
lea rcx, [rsp + 0x30]
call fcn.1800020b0
nop
lea r8, [rsp + 0x30]
lea rdx, [rbp + 0x20]
lea rcx, [rsp + 0x50]
call fcn.18001d2b0
mov rdi, rax
lea rax, [rbp + 0x60]
cmp rax, rdi
je 0x180011f1a
mov rcx, qword [rbp + 0x78]
cmp rcx, 0x10
jb 0x180011efd
inc rcx
mov rdx, qword [rbp + 0x60]
cmp rcx, 0x1000
jb 0x180011ef5
test dl, 0x1f
jne 0x180012399
mov rax, qword [rdx - 8]
cmp rax, rdx
jae 0x180012393
sub rdx, rax
cmp rdx, 8
jb 0x18001238d
cmp rdx, 0x27
ja 0x180012387
mov rdx, rax
mov rcx, rdx
call fcn.180033ed0
mov qword [rbp + 0x78], reloc.WS2_32.dll_ntohs
mov qword [rbp + 0x70], rsi
mov byte [rbp + 0x60], 0
mov rdx, rdi
lea rcx, [rbp + 0x60]
call fcn.1800063c0
nop
mov rax, qword [rsp + 0x68]
cmp rax, 0x10
jb 0x180011f6a
inc rax
mov rcx, qword [rsp + 0x50]
cmp rax, 0x1000
jb 0x180011f65
test cl, 0x1f
jne 0x1800123b1
mov rax, qword [rcx - 8]
cmp rax, rcx
jae 0x1800123ab
sub rcx, rax
cmp rcx, 8
jb 0x1800123a5
cmp rcx, 0x27
ja 0x18001239f
mov rcx, rax
call fcn.180033ed0
mov qword [rsp + 0x68], reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x60], rsi
mov byte [rsp + 0x50], 0
mov rax, qword [rsp + 0x48]
cmp rax, 0x10
jb 0x180011fcd
inc rax
mov rcx, qword [rsp + 0x30]
cmp rax, 0x1000
jb 0x180011fc8
test cl, 0x1f
jne 0x1800123c9
mov rax, qword [rcx - 8]
cmp rax, rcx
jae 0x1800123c3
sub rcx, rax
cmp rcx, 8
jb 0x1800123bd
cmp rcx, 0x27
ja 0x1800123b7
mov rcx, rax
call fcn.180033ed0
movsd xmm0, qword [str.V3UB1Y]
movsd qword [rbp + 0xc0], xmm0
mov eax, dword [0x180058b60]
mov dword [rbp + 0xc8], eax
movzx eax, word [0x180058b64]
mov word [rbp + 0xcc], ax
lea r9, [rbp + 0xcb]
mov r10d, 2
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [r9]
xor byte [r9 + 1], al
xor al, byte [r9 - 1]
mov byte [r9], al
movzx eax, byte [r9 - 2]
xor byte [r9 - 1], al
movzx eax, byte [r9 - 3]
xor byte [r9 - 2], al
movzx eax, byte [r9 - 4]
xor byte [r9 - 3], al
movzx eax, byte [r9 - 5]
xor byte [r9 - 4], al
lea r9, [r9 - 6]
sub r10, 1
jne 0x180012010
xor byte [rbp + 0xc0], 0x24
mov qword [rsp + 0x48], reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x40], rsi
mov byte [rsp + 0x30], r10b
jne 0x18001206e
mov r8, rsi
jmp 0x18001208a
lea rax, [rbp + 0xc0]
or r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180012080
lea rdx, [rbp + 0xc0]
lea rcx, [rsp + 0x30]
call fcn.1800020b0
nop
lea r8, [rsp + 0x30]
lea rdx, [rbp + 0x20]
lea rcx, [rsp + 0x50]
call fcn.18001d2b0
mov rdi, rax
lea rax, [rbp + 0x80]
cmp rax, rdi
je 0x180012143
mov rcx, qword [rbp + 0x98]
cmp rcx, 0x10
jb 0x18001211a
inc rcx
mov rdx, qword [rbp + 0x80]
cmp rcx, 0x1000
jb 0x180012112
test dl, 0x1f
jne 0x1800123e1
mov rax, qword [rdx - 8]
cmp rax, rdx
jae 0x1800123db
sub rdx, rax
cmp rdx, 8
jb 0x1800123d5
cmp rdx, 0x27
ja 0x1800123cf
mov rdx, rax
mov rcx, rdx
call fcn.180033ed0
mov qword [rbp + 0x98], reloc.WS2_32.dll_ntohs
mov qword [rbp + 0x90], rsi
mov byte [rbp + 0x80], 0
mov rdx, rdi
lea rcx, [rbp + 0x80]
call fcn.1800063c0
nop
mov rax, qword [rsp + 0x68]
cmp rax, 0x10
jb 0x180012193
inc rax
mov rcx, qword [rsp + 0x50]
cmp rax, 0x1000
jb 0x18001218e
test cl, 0x1f
jne 0x1800123f9
mov rax, qword [rcx - 8]
cmp rax, rcx
jae 0x1800123f3
sub rcx, rax
cmp rcx, 8
jb 0x1800123ed
cmp rcx, 0x27
ja 0x1800123e7
mov rcx, rax
call fcn.180033ed0
mov qword [rsp + 0x68], reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x60], rsi
mov byte [rsp + 0x50], 0
mov rax, qword [rsp + 0x48]
cmp rax, 0x10
jb 0x1800121f6
inc rax
mov rcx, qword [rsp + 0x30]
cmp rax, 0x1000
jb 0x1800121f1
test cl, 0x1f
jne 0x180012411
mov rax, qword [rcx - 8]
cmp rax, rcx
jae 0x18001240b
sub rcx, rax
cmp rcx, 8
jb 0x180012405
cmp rcx, 0x27
ja 0x1800123ff
mov rcx, rax
call fcn.180033ed0
cmp qword [rbp + 0x50], 0
je 0x180012266
cmp qword [rbp + 0x70], 0
je 0x180012266
cmp qword [rbp + 0x90], 0
je 0x180012266
lea rdx, [rbx + 0x20]
lea r8, [rbp + 0x40]
lea rcx, [rbp - 0x60]
call fcn.180014c40
nop
mov rdx, rax
mov rcx, r14
call fcn.180015120
lea r9, [rax + 0x20]
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 0x78]
mov rcx, r14
call fcn.180015160
nop
lea rcx, [rbp]
call fcn.180001e50
lea rcx, [rbp - 0x20]
call fcn.180001e50
lea rcx, [rbp - 0x40]
call fcn.180001e50
lea rcx, [rbp - 0x60]
call fcn.180001e50
nop
lea rcx, [rbp + 0x80]
call fcn.180001e50
lea rcx, [rbp + 0x60]
call fcn.180001e50
lea rcx, [rbp + 0x40]
call fcn.180001e50
nop
mov rax, qword [rbp + 0x38]
cmp rax, 0x10
jb 0x1800122d3
mov rcx, qword [rbp + 0x20]
inc rax
cmp rax, 0x1000
jb 0x1800122ce
test cl, 0x1f
jne 0x180012429
mov rax, qword [rcx - 8]
cmp rax, rcx
jae 0x180012423
sub rcx, rax
cmp rcx, 8
jb 0x18001241d
cmp rcx, 0x27
ja 0x180012417
mov rcx, rax
call fcn.180033ed0
cmp byte [rbx + 0x19], 0
jne 0x18001231e
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
jne 0x1800122fe
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x18001231e
nop
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1800122f0
jmp 0x18001231e
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x18001231b
cmp rbx, qword [rax + 0x10]
jne 0x18001231b
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x180012308
mov rbx, rax
cmp rbx, qword [r14 + 0x10]
jmp 0x180011a87
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
nop
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
nop
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
nop
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
nop
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
nop
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
nop
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
nop
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
nop
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
nop
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
nop
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
int3
cmp qword [r14 + 8], 0
sete sil
mov eax, esi
mov rcx, qword [rbp + 0xd0]
xor rcx, rsp
call fcn.180033e70
lea r11, [rsp + 0x1e0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret