Function at 0x1400ed0f0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
mov qword [rsp + 8], rcx
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x60]
sub rsp, 0x160
xor ebx, ebx
lea rcx, [rbp + 0x90]
call fcn.140005a00
movabs rcx, 0x7fffffffc46535ff
movabs rdx, 0x7fffffffffffffff
mov rax, qword [rbp + 0x90]
cmp rax, rcx
jge 0x1400ed156
add rax, 0x3b9aca00
mov qword [rbp + 0x90], rax
jmp 0x1400ed15d
mov qword [rbp + 0x90], rdx
lea rcx, [rbp + 0x90]
call fcn.14002dce0
movzx r13d, byte [0x140166963]
test r13b, r13b
je 0x1400ede96
movzx r12d, byte [0x140166921]
test r12b, r12b
je 0x1400ede96
mov rsi, qword [0x140167a98]
cmp byte [rsi + 0x1d0], bl
je 0x1400ede96
mov dword [rbp + 0x90], 0x8c9e8e90
mov word [rbp + 0x94], 0x100
mov rcx, rbx
nop dword [rax]
nop dword [rax + rax]
lea eax, [rcx - 0x2b]
xor byte [rbp + rcx + 0x90], al
inc rcx
cmp rcx, 4
jb 0x1400ed1c0
mov byte [rbp + 0x95], bl
lea r14, [rsi + 0x140]
lea rcx, [rbp + 0x90]
mov rdi, 0xffffffffffffffff
mov rax, rdi
inc rax
cmp byte [rcx + rax], bl
jne 0x1400ed1f1
mov rcx, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x1400ed206
mov rcx, qword [r14]
mov r15, qword [r14 + 0x10]
cmp r15, rax
jne 0x1400ed226
mov r8, r15
lea rdx, [rbp + 0x90]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400ede96
xor eax, eax
mov word [rbp + 0x90], ax
lea rcx, [rbp + 0x90]
mov rax, rdi
nop dword [rax]
inc rax
cmp byte [rcx + rax], bl
jne 0x1400ed240
lea rcx, [0x140167560]
cmp qword [0x140167578], 0xf
cmova rcx, qword [0x140167560]
mov r8, qword [0x140167570]
cmp r8, rax
jne 0x1400ed27f
lea rdx, [rbp + 0x90]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400ed542
mov dword [rbp + 0x90], 0x8c9e8e90
mov word [rbp + 0x94], 0x100
mov rcx, rbx
nop word [rax + rax]
lea eax, [rcx - 0x2b]
xor byte [rbp + rcx + 0x90], al
inc rcx
cmp rcx, 4
jb 0x1400ed2a0
mov byte [rbp + 0x95], bl
lea rcx, [rbp + 0x90]
mov rax, rdi
inc rax
cmp byte [rcx + rax], bl
jne 0x1400ed2c3
cmp qword [r14 + 0x18], 0xf
jbe 0x1400ed2d5
mov r14, qword [r14]
cmp r15, rax
jne 0x1400ed2f4
mov r8, r15
lea rdx, [rbp + 0x90]
mov rcx, r14
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400ed42b
call fcn.1400ec6e0
movdqa xmm0, xmmword [0x140134a20]
movdqu xmmword [rsp + 0x40], xmm0
mov dword [rsp + 0x50], 0x9b929d
mov byte [rsp + 0x54], 1
mov rcx, rbx
nop word [rax + rax]
lea eax, [rcx - 0x2b]
xor byte [rsp + rcx + 0x40], al
inc rcx
cmp rcx, 0x13
jb 0x1400ed320
mov byte [rsp + 0x54], bl
lea rax, [rsp + 0x40]
mov rcx, rdi
nop dword [rax]
inc rcx
cmp byte [rax + rcx], bl
jne 0x1400ed340
mov rdx, qword [0x140167a88]
movabs r15, 0x7fffffffffffffff
mov rax, r15
sub rax, rdx
cmp rax, rcx
jb 0x1400edec4
lea rax, [0x140167a78]
cmp qword [0x140167a90], 0xf
cmova rax, qword [0x140167a78]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x40]
lea rcx, [rbp - 0x28]
call fcn.14002d380
nop
cmp qword [0x140167578], 0xf
lea rdx, [0x140167560]
cmova rdx, qword [0x140167560]
mov r8, qword [0x140167570]
lea rcx, [rbp - 0x28]
call fcn.14002b230
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x70], rbx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x58], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x68], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov r9d, 2
lea r8, [rsp + 0x58]
xor edx, edx
call fcn.140108b90
nop
lea rcx, [rbp - 0x28]
call fcn.14002b140
movzx r13d, byte [0x140166963]
movzx r12d, byte [0x140166921]
mov rsi, qword [0x140167a98]
jmp 0x1400ed435
movabs r15, 0x7fffffffffffffff
test r13b, r13b
je 0x1400ed54c
test r12b, r12b
je 0x1400ed54c
cmp byte [rsi + 0x1d0], 0
je 0x1400ed54c
mov dword [rbp + 0x90], 0x8c9e8e90
mov word [rbp + 0x94], 0x100
mov rcx, rbx
nop word [rax + rax]
lea eax, [rcx - 0x2b]
xor byte [rbp + rcx + 0x90], al
inc rcx
cmp rcx, 4
jb 0x1400ed470
mov byte [rbp + 0x95], 0
lea rcx, [rbp + 0x90]
mov rax, rdi
inc rax
cmp byte [rcx + rax], 0
jne 0x1400ed494
lea rcx, [rsi + 0x140]
cmp qword [rsi + 0x158], 0xf
jbe 0x1400ed4b5
mov rcx, qword [rsi + 0x140]
mov r8, qword [rsi + 0x150]
cmp r8, rax
jne 0x1400ed4d1
lea rdx, [rbp + 0x90]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400ed54c
movsxd rsi, dword [0x14015d0d4]
lea rcx, [rbp + 0x90]
call fcn.140005a00
mov rcx, qword [rbp + 0x90]
mov qword [rbp + 0x90], rcx
test rsi, rsi
jle 0x1400ed51d
imul rdx, rsi, 0xf4240
mov rax, r15
sub rax, rdx
cmp rcx, rax
jge 0x1400ed516
lea rax, [rdx + rcx]
mov qword [rbp + 0x90], rax
jmp 0x1400ed51d
mov qword [rbp + 0x90], r15
lea rcx, [rbp + 0x90]
call fcn.14002dce0
movzx r13d, byte [0x140166963]
movzx r12d, byte [0x140166921]
mov rsi, qword [0x140167a98]
jmp 0x1400ed54c
movabs r15, 0x7fffffffffffffff
xor eax, eax
mov word [rbp + 0x90], ax
lea rcx, [rbp + 0x90]
mov rax, rdi
nop
inc rax
cmp byte [rcx + rax], 0
jne 0x1400ed560
lea r14, [0x140167330]
mov rcx, r14
cmp qword [0x140167348], 0xf
cmova rcx, qword [0x140167330]
mov r8, qword [0x140167340]
cmp r8, rax
jne 0x1400ed5a3
lea rdx, [rbp + 0x90]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400ed870
test r13b, r13b
je 0x1400ed870
test r12b, r12b
je 0x1400ed769
cmp byte [rsi + 0x1d0], 0
je 0x1400ed769
mov dword [rbp + 0x90], 0x8c9e8e90
mov word [rbp + 0x94], 0x100
mov rcx, rbx
nop dword [rax + rax]
lea eax, [rcx - 0x2b]
xor byte [rbp + rcx + 0x90], al
inc rcx
cmp rcx, 4
jb 0x1400ed5e0
mov byte [rbp + 0x95], 0
lea rcx, [rbp + 0x90]
mov rax, rdi
inc rax
cmp byte [rcx + rax], 0
jne 0x1400ed604
lea rcx, [rsi + 0x140]
cmp qword [rsi + 0x158], 0xf
jbe 0x1400ed625
mov rcx, qword [rsi + 0x140]
mov r8, qword [rsi + 0x150]
cmp r8, rax
jne 0x1400ed645
lea rdx, [rbp + 0x90]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400ed769
call fcn.1400ec6e0
movdqa xmm0, xmmword [0x140134a20]
movdqu xmmword [rsp + 0x40], xmm0
mov dword [rsp + 0x50], 0x9b929d
mov byte [rsp + 0x54], 1
mov rcx, rbx
nop dword [rax + rax]
lea eax, [rcx - 0x2b]
xor byte [rsp + rcx + 0x40], al
inc rcx
cmp rcx, 0x13
jb 0x1400ed670
mov byte [rsp + 0x54], 0
lea rax, [rsp + 0x40]
mov rcx, rdi
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x1400ed690
mov rdx, qword [0x140167a88]
mov rax, r15
sub rax, rdx
cmp rax, rcx
jb 0x1400edeca
lea rax, [0x140167a78]
cmp qword [0x140167a90], 0xf
cmova rax, qword [0x140167a78]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x40]
lea rcx, [rbp - 8]
call fcn.14002d380
nop
cmp qword [0x140167348], 0xf
cmova r14, qword [0x140167330]
mov r8, qword [0x140167340]
mov rdx, r14
lea rcx, [rbp - 8]
call fcn.14002b230
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
mov qword [rbp - 0x78], rbx
mov qword [rbp - 0x70], rbx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x78], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x78], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov r9d, 2
lea r8, [rsp + 0x78]
xor edx, edx
call fcn.140108b90
nop
lea rcx, [rbp - 8]
call fcn.14002b140
movzx r13d, byte [0x140166963]
movzx r12d, byte [0x140166921]
mov rsi, qword [0x140167a98]
test r13b, r13b
je 0x1400ed870
test r12b, r12b
je 0x1400ed870
cmp byte [rsi + 0x1d0], 0
je 0x1400ed870
mov dword [rbp + 0x90], 0x8c9e8e90
mov word [rbp + 0x94], 0x100
mov rcx, rbx
nop
lea eax, [rcx - 0x2b]
xor byte [rbp + rcx + 0x90], al
inc rcx
cmp rcx, 4
jb 0x1400ed7a0
mov byte [rbp + 0x95], 0
lea rcx, [rbp + 0x90]
mov rax, rdi
inc rax
cmp byte [rcx + rax], 0
jne 0x1400ed7c4
lea rcx, [rsi + 0x140]
cmp qword [rsi + 0x158], 0xf
jbe 0x1400ed7e5
mov rcx, qword [rsi + 0x140]
mov r8, qword [rsi + 0x150]
cmp r8, rax
jne 0x1400ed801
lea rdx, [rbp + 0x90]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400ed870
movsxd rsi, dword [0x14015d0d4]
lea rcx, [rbp + 0x90]
call fcn.140005a00
mov rcx, qword [rbp + 0x90]
mov qword [rbp + 0x90], rcx
test rsi, rsi
jle 0x1400ed84d
imul rdx, rsi, 0xf4240
mov rax, r15
sub rax, rdx
cmp rcx, rax
jge 0x1400ed846
lea rax, [rdx + rcx]
mov qword [rbp + 0x90], rax
jmp 0x1400ed84d
mov qword [rbp + 0x90], r15
lea rcx, [rbp + 0x90]
call fcn.14002dce0
movzx r13d, byte [0x140166963]
movzx r12d, byte [0x140166921]
mov rsi, qword [0x140167a98]
xor eax, eax
mov word [rbp + 0x90], ax
lea rcx, [rbp + 0x90]
mov rax, rdi
inc rax
cmp byte [rcx + rax], 0
jne 0x1400ed883
lea r14, [0x1401675a0]
mov rcx, r14
cmp qword [0x1401675b8], 0xf
cmova rcx, qword [0x1401675a0]
mov r8, qword [0x1401675b0]
cmp r8, rax
jne 0x1400ed8c6
lea rdx, [rbp + 0x90]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400edb90
test r13b, r13b
je 0x1400edb90
test r12b, r12b
je 0x1400eda86
cmp byte [rsi + 0x1d0], 0
je 0x1400eda86
mov dword [rbp + 0x90], 0x8c9e8e90
mov word [rbp + 0x94], 0x100
mov rcx, rbx
nop dword [rax + rax]
lea eax, [rcx - 0x2b]
xor byte [rbp + rcx + 0x90], al
inc rcx
cmp rcx, 4
jb 0x1400ed900
mov byte [rbp + 0x95], 0
lea rcx, [rbp + 0x90]
mov rax, rdi
inc rax
cmp byte [rcx + rax], 0
jne 0x1400ed924
lea rcx, [rsi + 0x140]
cmp qword [rsi + 0x158], 0xf
jbe 0x1400ed945
mov rcx, qword [rsi + 0x140]
mov r8, qword [rsi + 0x150]
cmp r8, rax
jne 0x1400ed965
lea rdx, [rbp + 0x90]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400eda86
call fcn.1400ec6e0
movdqa xmm0, xmmword [0x140134a20]
movdqu xmmword [rsp + 0x40], xmm0
mov dword [rsp + 0x50], 0x9b929d
mov byte [rsp + 0x54], 1
mov rcx, rbx
nop dword [rax + rax]
lea eax, [rcx - 0x2b]
xor byte [rsp + rcx + 0x40], al
inc rcx
cmp rcx, 0x13
jb 0x1400ed990
mov byte [rsp + 0x54], 0
lea rax, [rsp + 0x40]
mov rcx, rdi
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x1400ed9b0
mov rdx, qword [0x140167a88]
mov rax, r15
sub rax, rdx
cmp rax, rcx
jb 0x1400eded0
lea rax, [0x140167a78]
cmp qword [0x140167a90], 0xf
cmova rax, qword [0x140167a78]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x40]
lea rcx, [rbp + 0x18]
call fcn.14002d380
nop
cmp qword [0x1401675b8], 0xf
cmova r14, qword [0x1401675a0]
mov r8, qword [0x1401675b0]
mov rdx, r14
lea rcx, [rbp + 0x18]
call fcn.14002b230
xorps xmm0, xmm0
movups xmmword [rbp - 0x68], xmm0
mov qword [rbp - 0x58], rbx
mov qword [rbp - 0x50], rbx
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x68], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x58], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov r9d, 2
lea r8, [rbp - 0x68]
xor edx, edx
call fcn.140108b90
nop
lea rcx, [rbp + 0x18]
call fcn.14002b140
movzx r13d, byte [0x140166963]
movzx r12d, byte [0x140166921]
mov rsi, qword [0x140167a98]
test r13b, r13b
je 0x1400edb90
test r12b, r12b
je 0x1400edb90
cmp byte [rsi + 0x1d0], 0
je 0x1400edb90
mov dword [rbp + 0x90], 0x8c9e8e90
mov word [rbp + 0x94], 0x100
mov rcx, rbx
nop dword [rax + rax]
lea eax, [rcx - 0x2b]
xor byte [rbp + rcx + 0x90], al
inc rcx
cmp rcx, 4
jb 0x1400edac0
mov byte [rbp + 0x95], 0
lea rcx, [rbp + 0x90]
mov rax, rdi
inc rax
cmp byte [rcx + rax], 0
jne 0x1400edae4
lea rcx, [rsi + 0x140]
cmp qword [rsi + 0x158], 0xf
jbe 0x1400edb05
mov rcx, qword [rsi + 0x140]
mov r8, qword [rsi + 0x150]
cmp r8, rax
jne 0x1400edb21
lea rdx, [rbp + 0x90]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400edb90
movsxd rsi, dword [0x14015d0d4]
lea rcx, [rbp + 0x90]
call fcn.140005a00
mov rcx, qword [rbp + 0x90]
mov qword [rbp + 0x90], rcx
test rsi, rsi
jle 0x1400edb6d
imul rdx, rsi, 0xf4240
mov rax, r15
sub rax, rdx
cmp rcx, rax
jge 0x1400edb66
lea rax, [rdx + rcx]
mov qword [rbp + 0x90], rax
jmp 0x1400edb6d
mov qword [rbp + 0x90], r15
lea rcx, [rbp + 0x90]
call fcn.14002dce0
movzx r13d, byte [0x140166963]
movzx r12d, byte [0x140166921]
mov rsi, qword [0x140167a98]
xor eax, eax
mov word [rbp + 0x90], ax
lea rcx, [rbp + 0x90]
mov rax, rdi
inc rax
cmp byte [rcx + rax], 0
jne 0x1400edba3
lea r14, [0x1401672d0]
mov rcx, r14
cmp qword [0x1401672e8], 0xf
cmova rcx, qword [0x1401672d0]
mov r8, qword [0x1401672e0]
cmp r8, rax
jne 0x1400edbe6
lea rdx, [rbp + 0x90]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400ede96
test r13b, r13b
je 0x1400ede96
test r12b, r12b
je 0x1400edda6
cmp byte [rsi + 0x1d0], 0
je 0x1400edda6
mov dword [rbp + 0x90], 0x8c9e8e90
mov word [rbp + 0x94], 0x100
mov rcx, rbx
nop dword [rax + rax]
lea eax, [rcx - 0x2b]
xor byte [rbp + rcx + 0x90], al
inc rcx
cmp rcx, 4
jb 0x1400edc20
mov byte [rbp + 0x95], 0
lea rcx, [rbp + 0x90]
mov rax, rdi
inc rax
cmp byte [rcx + rax], 0
jne 0x1400edc44
lea rcx, [rsi + 0x140]
cmp qword [rsi + 0x158], 0xf
jbe 0x1400edc65
mov rcx, qword [rsi + 0x140]
mov r8, qword [rsi + 0x150]
cmp r8, rax
jne 0x1400edc85
lea rdx, [rbp + 0x90]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400edda6
call fcn.1400ec6e0
movdqa xmm0, xmmword [0x140134a20]
movdqu xmmword [rsp + 0x40], xmm0
mov dword [rsp + 0x50], 0x9b929d
mov byte [rsp + 0x54], 1
mov rcx, rbx
nop dword [rax + rax]
lea eax, [rcx - 0x2b]
xor byte [rsp + rcx + 0x40], al
inc rcx
cmp rcx, 0x13
jb 0x1400edcb0
mov byte [rsp + 0x54], 0
lea rax, [rsp + 0x40]
mov rcx, rdi
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x1400edcd0
mov rdx, qword [0x140167a88]
mov rax, r15
sub rax, rdx
cmp rax, rcx
jb 0x1400edebe
cmp qword [0x140167a90], 0xf
lea rax, [0x140167a78]
cmova rax, qword [0x140167a78]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x40]
lea rcx, [rbp + 0x38]
call fcn.14002d380
nop
cmp qword [0x1401672e8], 0xf
cmova r14, qword [0x1401672d0]
mov r8, qword [0x1401672e0]
mov rdx, r14
lea rcx, [rbp + 0x38]
call fcn.14002b230
xorps xmm0, xmm0
movups xmmword [rbp - 0x48], xmm0
mov qword [rbp - 0x38], rbx
mov qword [rbp - 0x30], rbx
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x48], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x38], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov r9d, 2
lea r8, [rbp - 0x48]
xor edx, edx
call fcn.140108b90
nop
lea rcx, [rbp + 0x38]
call fcn.14002b140
movzx r13d, byte [0x140166963]
movzx r12d, byte [0x140166921]
mov rsi, qword [0x140167a98]
test r13b, r13b
je 0x1400ede96
test r12b, r12b
je 0x1400ede96
cmp byte [rsi + 0x1d0], 0
je 0x1400ede96
mov dword [rbp + 0x90], 0x8c9e8e90
mov word [rbp + 0x94], 0x100
nop dword [rax + rax]
lea eax, [rbx - 0x2b]
xor byte [rbp + rbx + 0x90], al
inc rbx
cmp rbx, 4
jb 0x1400edde0
mov byte [rbp + 0x95], 0
lea rax, [rbp + 0x90]
inc rdi
cmp byte [rax + rdi], 0
jne 0x1400ede01
lea rcx, [rsi + 0x140]
cmp qword [rsi + 0x158], 0xf
jbe 0x1400ede22
mov rcx, qword [rsi + 0x140]
mov r8, qword [rsi + 0x150]
cmp r8, rdi
jne 0x1400ede3e
lea rdx, [rbp + 0x90]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400ede96
movsxd rbx, dword [0x14015d0d4]
lea rcx, [rbp + 0x90]
call fcn.140005a00
mov rcx, qword [rbp + 0x90]
mov qword [rbp + 0x90], rcx
test rbx, rbx
jle 0x1400ede8a
imul rdx, rbx, 0xf4240
mov rax, r15
sub rax, rdx
cmp rcx, rax
jge 0x1400ede83
lea rax, [rcx + rdx]
mov qword [rbp + 0x90], rax
jmp 0x1400ede8a
mov qword [rbp + 0x90], r15
lea rcx, [rbp + 0x90]
call fcn.14002dce0
mov byte [0x140166a75], 0
lea r11, [rsp + 0x160]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140004f60
int3
call fcn.140004f60
int3
call fcn.140004f60
int3
call fcn.140004f60
int3