Function at 0x14006e5e0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r14
push rsi
push rdi
push rbx
sub rsp, 0xc0
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x28], r8
mov qword [rbp + 0x30], rdx
mov dword [rbp + 0x3c], ecx
mov eax, dword [0x1401064a8]
sub eax, dword [0x1401064ac]
mov ecx, 0x6889976c
xor edx, edx
div ecx
or eax, 0xb97d866f
imul eax, eax, 0xd291be55
cmp eax, 0xcb473a6d
jb 0x14006ef6b
mov rsi, qword [rbp + 0x28]
mov rdi, qword [rbp + 0x30]
mov r14d, dword [rbp + 0x3c]
mov eax, dword [0x1401064b0]
mov ecx, dword [0x1401064b4]
xor edx, edx
div ecx
imul eax, eax, 0x55f32a0b
or eax, 0xb20b3044
and eax, 0xb22b34c4
mov dword [rbp + 0x14], eax
mov eax, 0x10
mov qword [rbp], rax
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp]
mov rcx, rsp
mov qword [rbp - 0x30], rcx
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp]
mov rbx, rsp
mov qword [rbp - 0x28], rbx
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp]
mov rcx, rsp
mov qword [rbp - 0x20], rcx
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp]
mov r11, rsp
mov qword [rbp - 0x18], r11
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp]
mov r10, rsp
mov qword [rbp - 0x10], r10
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp]
mov r9, rsp
mov qword [rbp - 8], r9
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp]
mov r8, rsp
mov qword [rbp + 8], r8
call fcn.1400ec140
sub rsp, rax
mov eax, dword [rbp + 0x14]
mov rdx, rsp
mov qword [rbp + 0x18], rdx
mov dword [rbx], r14d
mov qword [rcx], rdi
mov qword [r11], rsi
mov qword [r10], 0
mov qword [r9], 0
mov word [r8], 0
mov dword [rdx], 0
cmp qword [rcx], 0
setne cl
mov byte [rbp + 0x27], cl
cmp eax, 0x86ba8fab
jb 0x14006ef6b
mov al, byte [rbp + 0x27]
test al, 1
jne 0x14006e7a1
jmp 0x14006e742
mov eax, dword [0x1401064b8]
sub eax, dword [0x1401064bc]
and eax, 0xff76f54b
imul eax, eax, 0xb249bd4a
imul eax, eax, 0x39d9c2b4
cmp eax, 0x99588547
je 0x14006f016
mov rcx, qword [rbp - 0x30]
mov eax, dword [0x1401064c0]
imul eax, dword [0x1401064c4]
imul eax, eax, 0xaa8e7eba
xor eax, 0xfd61846c
or eax, 0x7e5f4608
mov dword [rcx], 2
cmp eax, 0x319dedee
jb 0x14006f016
jmp 0x14006ef03
mov eax, dword [0x1401064c8]
xor eax, dword [0x1401064cc]
sub eax, 0x2bd2892f
or eax, 0x83e44e96
add eax, 0xef8b545f
cmp eax, 0x3068e6f
je 0x14006f025
mov rcx, qword [rbp - 0x20]
mov eax, dword [0x1401064d0]
xor eax, dword [0x1401064d4]
mov r8d, 0x59d18ea6
xor edx, edx
div r8d
add eax, 0x8b484aa6
mov r8d, 0x7de7c7fb
xor edx, edx
div r8d
mov rcx, qword [rcx]
movzx ecx, byte [rcx]
cmp ecx, 0x5b
sete cl
mov byte [rbp - 0x31], cl
cmp eax, 0xf0ce1994
ja 0x14006f025
mov al, byte [rbp - 0x31]
test al, 1
jne 0x14006e81c
jmp 0x14006e899
mov eax, dword [0x1401064d8]
and eax, dword [0x1401064dc]
or eax, 0x8ab7cff5
and eax, 0xeb5fb030
or eax, 0xcfd03585
cmp eax, 0xe41926ff
je 0x14006f02a
mov rax, qword [rbp - 0x20]
mov ecx, dword [0x1401064e0]
and ecx, dword [0x1401064e4]
and ecx, 0xa2eac96f
or ecx, 0x7e9cc787
xor ecx, 0xbff9ed0
mov dword [rbp - 0x38], ecx
mov rcx, qword [rax]
mov edx, 0x5d
sub rsp, 0x20
call sub.msvcrt.dll_strchr
mov rcx, qword [rbp - 8]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x38]
mov qword [rcx], rdx
cmp eax, 0x38bbcce9
jb 0x14006e842
jmp 0x14006e899
mov eax, dword [0x1401064e8]
sub eax, dword [0x1401064ec]
imul eax, eax, 0x4c7d0cbc
xor eax, 0xe75f168b
imul eax, eax, 0xa972426
cmp eax, 0x2cdc75b5
je 0x14006f052
mov rcx, qword [rbp - 8]
mov eax, dword [0x1401064f0]
xor edx, edx
div dword [0x1401064f4]
mov r8d, 0xf23c739b
xor edx, edx
div r8d
sub eax, 0xc999119a
mov r8d, 0xe23c2ddf
xor edx, edx
div r8d
cmp qword [rcx], 0
setne cl
mov byte [rbp - 0x39], cl
cmp eax, 0x8431bd05
ja 0x14006e8c1
mov al, byte [rbp - 0x39]
test al, 1
jne 0x14006e913
jmp 0x14006e97b
mov eax, dword [0x1401064f8]
and eax, dword [0x1401064fc]
sub eax, 0xa69d1ed9
mov ecx, 0x56c718b3
xor edx, edx
div ecx
and eax, 0x818a3779
cmp eax, 0x5f02ca67
ja 0x14006f057
mov rcx, qword [rbp - 8]
mov eax, dword [0x140106500]
and eax, dword [0x140106504]
xor eax, 0xec83c7f8
and eax, 0x15f99291
sub eax, 0xfcf8fd54
mov rcx, qword [rcx]
mov qword [rbp - 0x48], rcx
cmp eax, 0x4e58c2f9
je 0x14006e93d
mov rax, qword [rbp - 0x48]
mov qword [rbp - 0x50], rax
jmp 0x14006e9e2
mov eax, dword [0x140106508]
or eax, dword [0x14010650c]
add eax, 0x19af15b7
add eax, 0xf86a3a34
imul eax, eax, 0x86edcea
cmp eax, 0x7e1e04db
jb 0x14006f05c
mov rcx, qword [rbp - 0x20]
mov eax, dword [0x140106510]
sub eax, dword [0x140106514]
imul eax, eax, 0xfa373dc1
xor eax, 0xbdc584b1
imul eax, eax, 0x2e8486cd
mov rcx, qword [rcx]
mov qword [rbp - 0x58], rcx
cmp eax, 0x20d812b3
jb 0x14006f05c
mov rax, qword [rbp - 0x58]
mov qword [rbp - 0x50], rax
jmp 0x14006e9e2
mov rcx, qword [rbp - 0x50]
mov edx, 0x3a
sub rsp, 0x20
call sub.msvcrt.dll_strchr
mov rcx, qword [rbp - 0x10]
add rsp, 0x20
mov qword [rcx], rax
cmp rax, 0
je 0x14006eb01
mov eax, dword [0x140106518]
xor edx, edx
div dword [0x14010651c]
sub eax, 0x3a9ce075
mov ecx, 0x7173f7cc
xor edx, edx
div ecx
sub eax, 0x1eccd77a
cmp eax, 0x773940b1
je 0x14006f061
mov eax, dword [0x140106520]
xor edx, edx
div dword [0x140106524]
mov ecx, eax
mov rax, qword [rbp - 0x10]
sub ecx, 0xa50dd3f2
or ecx, 0x845fe547
add ecx, 0x23b832f0
mov dword [rbp - 0x60], ecx
mov rcx, qword [rax]
add rcx, 1
mov edx, 0x3a
sub rsp, 0x20
call sub.msvcrt.dll_strchr
add rsp, 0x20
mov rcx, rax
mov eax, dword [rbp - 0x60]
cmp rcx, 0
setne cl
mov byte [rbp - 0x59], cl
cmp eax, 0xe78ea5c2
ja 0x14006f061
mov al, byte [rbp - 0x59]
test al, 1
jne 0x14006eb01
jmp 0x14006eaa2
mov eax, dword [0x140106528]
imul eax, dword [0x14010652c]
imul eax, eax, 0x8404d4c7
and eax, 0xc9bd7fd1
imul eax, eax, 0xf1b0c0c7
cmp eax, 0xb5dbe30e
ja 0x14006f083
mov rcx, qword [rbp - 0x10]
mov eax, dword [0x140106530]
imul eax, dword [0x140106534]
and eax, 0xbd9e470b
or eax, 0x743f13d1
and eax, 0x11577540
mov rcx, qword [rcx]
mov byte [rcx], 0
cmp eax, 0x486fc4cb
je 0x14006f083
jmp 0x14006eb01
mov eax, dword [0x140106538]
sub eax, dword [0x14010653c]
mov ecx, 0x73d73366
xor edx, edx
div ecx
add eax, 0x1b62e007
or eax, 0xc058c77c
cmp eax, 0xfa37dc7f
jae 0x14006f092
mov rcx, qword [rbp - 8]
mov eax, dword [0x140106540]
sub eax, dword [0x140106544]
imul eax, eax, 0x77925e6c
xor eax, 0x771b7cac
xor eax, 0xd83442c0
cmp qword [rcx], 0
setne cl
mov byte [rbp - 0x61], cl
cmp eax, 0x11c2536f
jbe 0x14006f092
mov al, byte [rbp - 0x61]
test al, 1
jne 0x14006eb70
jmp 0x14006ebd3
mov eax, dword [0x140106548]
xor edx, edx
div dword [0x14010654c]
sub eax, 0xb2d107c1
and eax, 0x62cd9205
add eax, 0xdb19eba8
cmp eax, 0x9f1b2722
je 0x14006f097
mov rcx, qword [rbp - 8]
mov eax, dword [0x140106550]
sub eax, dword [0x140106554]
or eax, 0x30a28535
add eax, 0x9a000d41
mov r8d, 0xafa0988a
xor edx, edx
div r8d
mov rcx, qword [rcx]
mov byte [rcx], 0
cmp eax, 0x68cb30bb
ja 0x14006eb98
jmp 0x14006ebd3
mov eax, dword [0x140106558]
add eax, dword [0x14010655c]
sub eax, 0xf1e1378c
xor eax, 0xb17c2767
and eax, 0xc55f47e3
cmp eax, 0xaf0c5853
jae 0x14006f0a6
mov rcx, qword [rbp - 0x10]
mov eax, dword [0x140106560]
xor edx, edx
div dword [0x140106564]
or eax, 0x1d7e3ab8
or eax, 0xb2d6ec4
xor eax, 0x8e2d465a
cmp qword [rcx], 0
setne cl
mov byte [rbp - 0x62], cl
cmp eax, 0xe74acb41
jae 0x14006ebf9
mov al, byte [rbp - 0x62]
test al, 1
jne 0x14006ec3f
jmp 0x14006ecba
mov eax, dword [0x140106568]
and eax, dword [0x14010656c]
sub eax, 0x602cdca2
or eax, 0x22cfedca
sub eax, 0x4ae380e4
cmp eax, 0x90063dc5
jae 0x14006f0ab
mov rax, qword [rbp - 0x10]
mov ecx, dword [0x140106570]
and ecx, dword [0x140106574]
or ecx, 0x3db70f36
imul ecx, ecx, 0x5ce35ccd
and ecx, 0x872762bf
mov dword [rbp - 0x68], ecx
mov rcx, qword [rax]
add rcx, 1
sub rsp, 0x20
call sub.msvcrt.dll_atoi
mov rcx, qword [rbp + 8]
add rsp, 0x20
mov edx, eax
mov eax, dword [rbp - 0x68]
mov word [rcx], dx
cmp eax, 0x89f8ac59
ja 0x14006ec65
jmp 0x14006ecba
mov eax, dword [0x140106578]
xor eax, dword [0x14010657c]
or eax, 0xcba6dcfe
xor eax, 0xca22b38b
sub eax, 0x3bfafed6
cmp eax, 0x3544c23f
jbe 0x14006f0d1
mov r8, qword [rbp - 8]
mov rcx, qword [rbp - 0x28]
mov eax, dword [0x140106580]
xor eax, dword [0x140106584]
and eax, 0xfd5f3234
imul eax, eax, 0x3bef062a
mov r9d, 0x98200fba
xor edx, edx
div r9d
mov rdx, qword [rbp - 0x20]
mov r9d, eax
mov rax, qword [rbp - 0x18]
mov dword [rbp - 0x70], r9d
mov ecx, dword [rcx]
mov rdx, qword [rdx]
cmp qword [r8], 0
setne r8b
and r8b, 1
movzx r8d, r8b
movsxd r8, r8d
add rdx, r8
mov r8, qword [rax]
sub rsp, 0x20
call fcn.14006f150
mov rdx, qword [rbp + 0x18]
mov rcx, qword [rbp - 8]
add rsp, 0x20
mov r8d, eax
mov eax, dword [rbp - 0x70]
cmp r8d, 0
setne r8b
xor r8b, 0xff
and r8b, 1
movzx r8d, r8b
mov dword [rdx], r8d
cmp qword [rcx], 0
setne cl
mov byte [rbp - 0x69], cl
cmp eax, 0xd62cd6b4
ja 0x14006ece0
mov al, byte [rbp - 0x69]
test al, 1
jne 0x14006ed8e
jmp 0x14006eded
mov eax, dword [0x140106588]
xor eax, dword [0x14010658c]
add eax, 0x276400b7
mov ecx, 0xf895b680
xor edx, edx
div ecx
add eax, 0x57f0f7d8
cmp eax, 0xc5f18681
jae 0x14006f128
mov rcx, qword [rbp - 8]
mov eax, dword [0x140106590]
and eax, dword [0x140106594]
sub eax, 0xf04781a1
xor eax, 0x54e50862
add eax, 0x51a3d5f3
mov rcx, qword [rcx]
mov byte [rcx], 0x5d
cmp eax, 0xc16c03ff
jae 0x14006f128
jmp 0x14006eded
mov eax, dword [0x140106598]
xor eax, dword [0x14010659c]
sub eax, 0xd11ccdd9
sub eax, 0xf8030bf2
and eax, 0x7771e873
cmp eax, 0x7fb0248f
ja 0x14006f137
mov rcx, qword [rbp - 0x10]
mov eax, dword [str.3sn0]
and eax, dword [0x1401065a4]
sub eax, 0x62eaa4cc
or eax, 0x79b22d6f
sub eax, 0x6689bcd8
cmp qword [rcx], 0
setne cl
mov byte [rbp - 0x71], cl
cmp eax, 0x1a408e53
jb 0x14006ee13
mov al, byte [rbp - 0x71]
test al, 1
jne 0x14006ee57
jmp 0x14006ee61
mov rax, qword [rbp - 0x10]
mov rax, qword [rax]
mov byte [rax], 0x3a
mov eax, dword [0x1401065a8]
or eax, dword [0x1401065ac]
mov ecx, 0xe90716be
xor edx, edx
div ecx
imul eax, eax, 0xcb67a6bc
mov ecx, 0x2ad31394
xor edx, edx
div ecx
cmp eax, 0xaef5770b
je 0x14006f13c
mov rcx, qword [rbp + 8]
mov eax, dword [0x1401065b0]
sub eax, dword [0x1401065b4]
xor eax, 0xf77601bf
sub eax, 0x724401ea
xor eax, 0xe9d878de
cmp word [rcx], 0
setne cl
mov byte [rbp - 0x72], cl
cmp eax, 0x71de4c18
ja 0x14006f13c
mov al, byte [rbp - 0x72]
test al, 1
jne 0x14006eed4
jmp 0x14006eef7
mov rax, qword [rbp + 8]
mov cx, word [rax]
sub rsp, 0x20
call qword [sym.imp.WS2_32.dll_htons]
add rsp, 0x20
mov cx, ax
mov rax, qword [rbp - 0x18]
mov rax, qword [rax]
mov word [rax + 2], cx
mov rax, qword [rbp - 0x30]
mov rcx, qword [rbp + 0x18]
mov ecx, dword [rcx]
mov dword [rax], ecx
mov eax, dword [0x1401065b8]
xor edx, edx
div dword [0x1401065bc]
imul eax, eax, 0xdc391260
xor eax, 0x7edd31f2
and eax, 0xe11d57d
cmp eax, 0x9fbdd7c3
je 0x14006f141
mov rcx, qword [rbp - 0x30]
mov eax, dword [0x1401065c0]
imul eax, dword [0x1401065c4]
imul eax, eax, 0x59f12fa5
add eax, 0xf75e0bae
or eax, 0xf984ee58
mov ecx, dword [rcx]
mov dword [rbp - 0x78], ecx
cmp eax, 0x80a98534
jb 0x14006ef2c
mov eax, dword [rbp - 0x78]
lea rsp, [rbp + 0x40]
pop rbx
pop rdi
pop rsi
pop r14
pop rbp
ret
mov r10, qword [rbp + 0x28]
mov rsi, qword [rbp + 0x30]
mov ebx, dword [rbp + 0x3c]
mov eax, 0x10
mov qword [rbp - 0x80], rax
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp - 0x80]
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp - 0x80]
mov rdi, rsp
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp - 0x80]
mov r11, rsp
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp - 0x80]
mov r9, rsp
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp - 0x80]
mov r8, rsp
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp - 0x80]
mov rdx, rsp
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp - 0x80]
mov rcx, rsp
call fcn.1400ec140
sub rsp, rax
mov rax, rsp
mov dword [rdi], ebx
mov qword [r11], rsi
mov qword [r9], r10
mov qword [r8], 0
mov qword [rdx], 0
mov word [rcx], 0
mov dword [rax], 0
jmp 0x14006e62b
mov rax, qword [rbp - 0x30]
mov dword [rax], 2
jmp 0x14006e76a
jmp 0x14006e7c7
mov rax, qword [rbp - 0x20]
mov rcx, qword [rax]
mov edx, 0x5d
sub rsp, 0x20
call sub.msvcrt.dll_strchr
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 8]
mov qword [rax], rcx
jmp 0x14006e842
jmp 0x14006e8c1
jmp 0x14006e93d
jmp 0x14006e9a2
mov rax, qword [rbp - 0x10]
mov rcx, qword [rax]
add rcx, 1
mov edx, 0x3a
sub rsp, 0x20
call sub.msvcrt.dll_strchr
add rsp, 0x20
jmp 0x14006ea35
mov rax, qword [rbp - 0x10]
mov rax, qword [rax]
mov byte [rax], 0
jmp 0x14006eacb
jmp 0x14006eb2b
mov rax, qword [rbp - 8]
mov rax, qword [rax]
mov byte [rax], 0
jmp 0x14006eb98
jmp 0x14006ebf9
mov rax, qword [rbp - 0x10]
mov rcx, qword [rax]
add rcx, 1
sub rsp, 0x20
call sub.msvcrt.dll_atoi
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 8]
mov word [rax], cx
jmp 0x14006ec65
mov rax, qword [rbp - 0x18]
mov r8, qword [rbp - 8]
mov rdx, qword [rbp - 0x20]
mov rcx, qword [rbp - 0x28]
mov ecx, dword [rcx]
mov rdx, qword [rdx]
cmp qword [r8], 0
setne r8b
and r8b, 1
movzx r8d, r8b
movsxd r8, r8d
add rdx, r8
mov r8, qword [rax]
sub rsp, 0x20
call fcn.14006f150
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0x18]
cmp ecx, 0
setne cl
xor cl, 0xff
and cl, 1
movzx ecx, cl
mov dword [rax], ecx
jmp 0x14006ece0
mov rax, qword [rbp - 8]
mov rax, qword [rax]
mov byte [rax], 0x5d
jmp 0x14006edb8
jmp 0x14006ee13
jmp 0x14006ee90
jmp 0x14006ef2c