Function at 0x1400d1750
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push rdi
push rbx
sub rsp, 0xd8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x38], r9
mov qword [rbp + 0x40], r8
mov qword [rbp + 0x48], rdx
mov qword [rbp + 0x50], rcx
mov eax, dword [0x1401118ec]
xor eax, dword [0x1401118f0]
add eax, 0xa7220e7a
xor eax, 0xeff4e2f0
add eax, 0x601e0fd0
cmp eax, 0xab8ef713
jbe 0x1400d2160
mov r9, qword [rbp + 0x38]
mov r11, qword [rbp + 0x40]
mov rsi, qword [rbp + 0x48]
mov rbx, qword [rbp + 0x50]
mov eax, dword [0x1401118f4]
mov ecx, dword [0x1401118f8]
xor edx, edx
div ecx
imul eax, eax, 0xc141b53b
xor eax, 0xac6a720a
add eax, 0x59b0f6de
mov dword [rbp + 0x30], eax
mov eax, 0x10
mov qword [rbp - 0x18], rax
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp - 0x18]
mov rcx, rsp
mov qword [rbp - 0x30], rcx
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp - 0x18]
mov rdi, rsp
mov qword [rbp + 8], rdi
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp - 0x18]
mov rcx, rsp
mov qword [rbp - 8], rcx
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp - 0x18]
mov r10, rsp
mov qword [rbp - 0x28], r10
call fcn.1400ec140
sub rsp, rax
mov r8, rsp
mov qword [rbp - 0x20], r8
mov eax, 0x400
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp - 0x18]
mov rcx, rsp
mov qword [rbp + 0x20], rcx
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp - 0x18]
mov rdx, rsp
mov qword [rbp - 0x10], rdx
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp - 8]
mov rdx, rsp
mov qword [rbp], rdx
mov qword [rdi], rbx
mov qword [rax], rsi
mov qword [r10], r11
mov qword [r8], r9
mov dword [rdx], 0
mov r8, qword [rax]
sub rsp, 0x20
lea rdx, [0x140111592]
call fcn.1400d15f0
mov rcx, qword [rbp + 0x20]
add rsp, 0x20
mov rax, qword [rbp + 8]
mov rdx, qword [rax]
mov qword [rbp + 0x10], rdx
mov rax, qword [rax]
mov rax, qword [rax + 0x80]
mov qword [rbp + 0x18], rax
sub rsp, 0x20
call sub.msvcrt.dll_strlen
mov rcx, qword [rbp + 0x10]
mov rdx, qword [rbp + 0x18]
mov r8, qword [rbp + 0x20]
add rsp, 0x20
mov r9d, eax
mov rax, qword [0x140117de0]
mov eax, dword [rax + 8]
sub rsp, 0x30
mov dword [rsp + 0x20], eax
call fcn.140065d80
mov rcx, qword [rbp + 0x20]
add rsp, 0x30
mov dword [rbp + 0x2c], eax
sub rsp, 0x20
call sub.msvcrt.dll_strlen
mov ecx, dword [rbp + 0x2c]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x30]
cmp ecx, edx
setne cl
mov byte [rbp + 0x37], cl
cmp eax, 0x140e194a
ja 0x1400d2160
mov al, byte [rbp + 0x37]
test al, 1
jne 0x1400d192b
jmp 0x1400d193a
mov rax, qword [rbp - 0x30]
mov dword [rax], 0x2c7
jmp 0x1400d2151
mov eax, dword [0x1401118fc]
and eax, dword [0x140111900]
and eax, 0x31a993b2
mov ecx, 0x2baffe37
xor edx, edx
div ecx
sub eax, 0x7e0702fc
cmp eax, 0x5e794154
je 0x1400d2287
mov rcx, qword [rbp + 0x20]
mov eax, dword [0x140111904]
and eax, dword [0x140111908]
imul eax, eax, 0x96cd5089
imul eax, eax, 0x88951c88
or eax, 0x720e560
mov dword [rbp - 0x34], eax
sub rsp, 0x20
call sub.msvcrt.dll_strlen
mov rcx, qword [rbp + 8]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x34]
movsxd r8, edx
mov rdx, qword [rcx]
add r8, qword [rdx + 0x1d0]
mov qword [rdx + 0x1d0], r8
mov rcx, qword [rcx]
mov edx, dword [rcx + 0x1e4]
add edx, 1
mov dword [rcx + 0x1e4], edx
cmp eax, 0x89a42e51
je 0x1400d2287
jmp 0x1400d19d5
mov eax, dword [0x14011190c]
imul eax, dword [0x140111910]
imul eax, eax, 0xed0002f4
or eax, 0xbc95c6f2
imul eax, eax, 0x5f3478d8
cmp eax, 0xb9e70b88
jae 0x1400d22cd
mov r8, qword [rbp + 0x20]
mov rax, qword [rbp + 8]
mov ecx, dword [0x140111914]
xor ecx, dword [0x140111918]
imul ecx, ecx, 0xfa3c1308
imul ecx, ecx, 0x34d399cd
add ecx, 0x805ef105
mov dword [rbp - 0x3c], ecx
mov rcx, qword [rax]
mov rax, qword [0x140117de0]
mov eax, dword [rax + 0xc]
mov edx, 1
mov r9d, 0x3ff
sub rsp, 0x30
mov dword [rsp + 0x20], 0xa
mov dword [rsp + 0x28], eax
call fcn.140069f30
mov rdx, qword [rbp - 0x10]
add rsp, 0x30
mov ecx, eax
mov eax, dword [rbp - 0x3c]
mov dword [rdx], ecx
cmp ecx, 0
setg cl
mov byte [rbp - 0x35], cl
cmp eax, 0x70c0c9f0
je 0x1400d19fe
mov cl, byte [rbp - 0x35]
xor eax, eax
test cl, 1
mov byte [rbp - 0x3d], al
jne 0x1400d1a8d
jmp 0x1400d1c62
mov eax, dword [0x14011191c]
or eax, dword [0x140111920]
mov ecx, 0x62fa3b33
xor edx, edx
div ecx
imul eax, eax, 0x1be9a191
and eax, 0xee474cfc
cmp eax, 0x6bf4a0a
jb 0x1400d2313
mov rcx, qword [rbp - 0x10]
mov eax, dword [0x140111924]
xor eax, dword [0x140111928]
sub eax, 0x60b23d43
and eax, 0x5c581e35
mov r8d, 0x851ec482
xor edx, edx
div r8d
cmp dword [rcx], 3
setl cl
mov byte [rbp - 0x3e], cl
cmp eax, 0x1aec46f0
je 0x1400d2313
mov cl, byte [rbp - 0x3e]
mov al, 1
test cl, 1
mov byte [rbp - 0x3f], al
jne 0x1400d1c00
jmp 0x1400d1b07
mov rax, qword [rbp + 0x20]
movsx ecx, byte [rax]
mov al, 1
cmp ecx, 0x30
mov byte [rbp - 0x3f], al
jl 0x1400d1c00
mov eax, dword [0x14011192c]
add eax, dword [0x140111930]
xor eax, 0x4ac6c3a1
sub eax, 0xc2cad120
sub eax, 0xff45ce6
cmp eax, 0x66d7dd31
ja 0x1400d2318
mov rcx, qword [rbp + 0x20]
mov eax, dword [0x140111934]
and eax, dword [0x140111938]
or eax, 0xa3493c59
add eax, 0xcb9ca8bc
mov r8d, 0x5441357f
xor edx, edx
div r8d
movsx ecx, byte [rcx]
cmp ecx, 0x39
setle cl
mov byte [rbp - 0x40], cl
cmp eax, 0x847f6ebb
je 0x1400d1b42
mov cl, byte [rbp - 0x40]
mov al, 1
test cl, 1
mov byte [rbp - 0x3f], al
jne 0x1400d1b94
jmp 0x1400d1c00
mov eax, dword [0x14011193c]
xor eax, dword [0x140111940]
mov ecx, 0x828547a9
xor edx, edx
div ecx
add eax, 0x422e42c8
xor eax, 0x92d50ec7
cmp eax, 0xc9aca5b1
jb 0x1400d231d
mov rcx, qword [rbp + 0x20]
mov eax, dword [0x140111944]
sub eax, dword [0x140111948]
xor eax, 0x38794c3c
xor eax, 0xb00e6ac0
or eax, 0x636dd5b6
movsx ecx, byte [rcx + 3]
cmp ecx, 0x2d
sete cl
mov byte [rbp - 0x41], cl
cmp eax, 0x9a2c97a0
jae 0x1400d1bbe
mov al, byte [rbp - 0x41]
mov byte [rbp - 0x3f], al
jmp 0x1400d1c00
mov al, byte [rbp - 0x3f]
mov byte [rbp - 0x42], al
mov eax, dword [0x14011194c]
xor eax, dword [0x140111950]
add eax, 0xeac8c46d
xor eax, 0x31cfd22d
imul eax, eax, 0xd803f6fb
cmp eax, 0x97a50a3f
ja 0x1400d2322
mov eax, dword [0x140111954]
or eax, dword [0x140111958]
or eax, 0x50dfd95d
and eax, 0x9cfcdc8a
mov ecx, 0x3546a16e
xor edx, edx
div ecx
cmp eax, 0xed23786
jae 0x1400d1c2d
mov al, byte [rbp - 0x42]
mov byte [rbp - 0x3d], al
jmp 0x1400d1c62
mov al, byte [rbp - 0x3d]
test al, 1
jne 0x1400d1c72
jmp 0x1400d1ece
mov eax, dword [0x14011195c]
imul eax, dword [0x140111960]
and eax, 0x894b7511
sub eax, 0xc9aba79c
and eax, 0xd0bb03b3
cmp eax, 0x7339359a
jae 0x1400d2327
mov rcx, qword [rbp - 0x28]
mov eax, dword [0x140111964]
sub eax, dword [0x140111968]
sub eax, 0x39e3a44a
add eax, 0xfc51d818
and eax, 0x91183b41
cmp qword [rcx], 0
setne cl
mov byte [rbp - 0x43], cl
cmp eax, 0xde1ab066
jae 0x1400d2327
mov al, byte [rbp - 0x43]
test al, 1
jne 0x1400d1cdd
jmp 0x1400d1e78
mov eax, dword [0x14011196c]
xor eax, dword [0x140111970]
imul eax, eax, 0x4e8d79c1
sub eax, 0x8630ad9d
mov ecx, 0x4f527380
xor edx, edx
div ecx
cmp eax, 0xfec504f7
je 0x1400d232c
mov rcx, qword [rbp - 0x20]
mov eax, dword [0x140111974]
xor edx, edx
div dword [0x140111978]
imul eax, eax, 0xa921d70a
and eax, 0xa4f3189c
add eax, 0x5a250eb2
cmp qword [rcx], 0
setne cl
mov byte [rbp - 0x44], cl
cmp eax, 0xbce1622
je 0x1400d232c
mov al, byte [rbp - 0x44]
test al, 1
jne 0x1400d1d4f
jmp 0x1400d1e78
mov eax, dword [0x14011197c]
add eax, dword [0x140111980]
add eax, 0xf26ce584
xor eax, 0x13cd5a0d
mov ecx, 0x794de33e
xor edx, edx
div ecx
cmp eax, 0x5c7a7954
ja 0x1400d2331
mov rdx, qword [rbp - 0x20]
mov r8, qword [rbp - 0x10]
mov rcx, qword [rbp]
mov eax, dword [0x140111984]
xor eax, dword [0x140111988]
xor eax, 0x962f4bcd
or eax, 0x4f0a47ea
imul eax, eax, 0x444de879
mov ecx, dword [rcx]
add ecx, dword [r8]
mov rdx, qword [rdx]
cmp ecx, dword [rdx]
setl cl
mov byte [rbp - 0x45], cl
cmp eax, 0x47220ac8
je 0x1400d2331
mov al, byte [rbp - 0x45]
test al, 1
jne 0x1400d1dcc
jmp 0x1400d1e78
mov rax, qword [rbp - 0x10]
cmp dword [rax], 6
jle 0x1400d1e78
mov eax, dword [0x14011198c]
xor eax, dword [0x140111990]
mov ecx, 0xef81c157
xor edx, edx
div ecx
imul eax, eax, 0xef14d48d
or eax, 0xd591c43a
cmp eax, 0x3042970a
jbe 0x1400d2336
mov r8, qword [rbp]
mov rcx, qword [rbp - 0x28]
mov eax, dword [0x140111994]
xor edx, edx
div dword [0x140111998]
mov rdx, qword [rbp + 0x20]
mov r9d, eax
mov rax, qword [rbp - 0x10]
add r9d, 0x6b8504f0
xor r9d, 0xd8b38c5f
sub r9d, 0xc6044b3c
mov dword [rbp - 0x4c], r9d
mov rcx, qword [rcx]
movsxd r8, dword [r8]
add rcx, r8
movsxd r8, dword [rax]
sub rsp, 0x20
call sub.msvcrt.dll_memcpy
mov rdx, qword [rbp - 0x10]
mov rcx, qword [rbp]
mov eax, dword [rbp - 0x4c]
add rsp, 0x20
mov edx, dword [rdx]
add edx, dword [rcx]
mov dword [rcx], edx
cmp eax, 0xad6f083f
jb 0x1400d2336
jmp 0x1400d1e78
mov eax, dword [0x14011199c]
imul eax, dword [0x1401119a0]
and eax, 0xcd5d7677
or eax, 0x80f4a20a
add eax, 0xeab738fc
cmp eax, 0xcc51af66
jae 0x1400d2374
mov eax, dword [0x1401119a4]
sub eax, dword [0x1401119a8]
xor eax, 0x24141242
and eax, 0xdc59c23a
mov ecx, 0x64ddb488
xor edx, edx
div ecx
cmp eax, 0xe66efeb9
je 0x1400d2374
jmp 0x1400d19d5
mov eax, dword [0x1401119ac]
or eax, dword [0x1401119b0]
xor eax, 0x25092c55
and eax, 0xdeaa48a4
add eax, 0xea7826bd
cmp eax, 0x68c4d4be
je 0x1400d2379
mov rcx, qword [rbp - 0x20]
mov eax, dword [0x1401119b4]
xor edx, edx
div dword [0x1401119b8]
sub eax, 0xc3c32966
and eax, 0xed5ef346
mov r8d, 0xb60b7343
xor edx, edx
div r8d
cmp qword [rcx], 0
setne cl
mov byte [rbp - 0x4d], cl
cmp eax, 0x6bc7cf61
jae 0x1400d2379
mov al, byte [rbp - 0x4d]
test al, 1
jne 0x1400d1f40
jmp 0x1400d1fa6
mov eax, dword [0x1401119bc]
xor eax, dword [0x1401119c0]
sub eax, 0x83cf408c
mov ecx, 0x8c70ee3d
xor edx, edx
div ecx
add eax, 0x9c102f74
cmp eax, 0x80ca36a9
jb 0x1400d237e
mov rcx, qword [rbp - 0x20]
mov eax, dword [0x1401119c4]
xor edx, edx
div dword [0x1401119c8]
mov rdx, qword [rbp]
sub eax, 0x8f9bbbdc
or eax, 0x968e5
add eax, 0x109d1340
mov edx, dword [rdx]
mov rcx, qword [rcx]
mov dword [rcx], edx
cmp eax, 0x8a95aaac
je 0x1400d1f6a
jmp 0x1400d1fa6
mov eax, dword [0x1401119cc]
xor eax, dword [0x1401119d0]
imul eax, eax, 0xe7c383d6
and eax, 0xab48cf62
and eax, 0x73dcaca0
cmp eax, 0x89e2ba5f
ja 0x1400d2392
mov rcx, qword [rbp - 0x10]
mov eax, dword [0x1401119d4]
sub eax, dword [0x1401119d8]
or eax, 0x9b5f4304
sub eax, 0xebd14d63
add eax, 0xdef863b6
cmp dword [rcx], 3
setl cl
mov byte [rbp - 0x4e], cl
cmp eax, 0x8dd998b3
je 0x1400d1fcd
mov al, byte [rbp - 0x4e]
test al, 1
jne 0x1400d2010
jmp 0x1400d206f
mov eax, dword [0x1401119dc]
add eax, dword [0x1401119e0]
and eax, 0x5859ecc4
imul eax, eax, 0x3097bce8
or eax, 0xb3db39e2
cmp eax, 0xc30f7506
jae 0x1400d2397
mov rcx, qword [rbp - 0x30]
mov eax, dword [0x1401119e4]
xor edx, edx
div dword [0x1401119e8]
and eax, 0xc41b5b15
imul eax, eax, 0xa70e864e
and eax, 0x1faf7e4d
mov dword [rcx], 0x2c8
cmp eax, 0x6d5d7b42
je 0x1400d2037
jmp 0x1400d2151
mov eax, dword [0x1401119ec]
or eax, dword [0x1401119f0]
or eax, 0x18150b47
imul eax, eax, 0xe0a8798b
xor eax, 0x6fc64c3
cmp eax, 0x34df29b1
jbe 0x1400d23a6
mov rcx, qword [rbp + 0x20]
mov eax, dword [0x1401119f4]
sub eax, dword [0x1401119f8]
imul eax, eax, 0xec09d691
mov r8d, 0xdf339481
xor edx, edx
div r8d
sub eax, 0x4d91cf5c
mov byte [rcx + 3], 0
movsx ecx, byte [rcx]
cmp ecx, 0x32
setne cl
mov byte [rbp - 0x4f], cl
cmp eax, 0x229208f3
jb 0x1400d23a6
mov al, byte [rbp - 0x4f]
test al, 1
jne 0x1400d20e7
jmp 0x1400d20f6
mov rax, qword [rbp - 0x30]
mov dword [rax], 0x2c6
jmp 0x1400d2151
mov eax, dword [0x1401119fc]
and eax, dword [0x140111a00]
add eax, 0x66bd8b0f
add eax, 0x190dd7a8
xor eax, 0xb19c0cf0
cmp eax, 0x348726fa
je 0x1400d23b3
mov rcx, qword [rbp - 0x30]
mov eax, dword [0x140111a04]
and eax, dword [0x140111a08]
add eax, 0x98bbd2ea
xor eax, 0x672e0be4
xor eax, 0xe6227d82
mov dword [rcx], 0
cmp eax, 0x23863146
jbe 0x1400d211c
jmp 0x1400d2151
mov rax, qword [rbp - 0x30]
mov eax, dword [rax]
lea rsp, [rbp + 0x58]
pop rbx
pop rdi
pop rsi
pop rbp
ret
mov r9, qword [rbp + 0x38]
mov r11, qword [rbp + 0x40]
mov rsi, qword [rbp + 0x48]
mov rbx, qword [rbp + 0x50]
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
mov qword [rbp - 0x70], rdi
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp - 0x80]
mov rcx, rsp
mov qword [rbp - 0x78], rcx
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp - 0x80]
mov r10, rsp
call fcn.1400ec140
sub rsp, rax
mov r8, rsp
mov eax, 0x400
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp - 0x80]
mov rcx, rsp
mov qword [rbp - 0x58], rcx
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp - 0x80]
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp - 0x78]
mov rdx, rsp
mov qword [rdi], rbx
mov qword [rax], rsi
mov qword [r10], r11
mov qword [r8], r9
mov dword [rdx], 0
mov r8, qword [rax]
sub rsp, 0x20
lea rdx, [0x140111592]
call fcn.1400d15f0
mov rcx, qword [rbp - 0x58]
add rsp, 0x20
mov rax, qword [rbp - 0x70]
mov rdx, qword [rax]
mov qword [rbp - 0x68], rdx
mov rax, qword [rax]
mov rax, qword [rax + 0x80]
mov qword [rbp - 0x60], rax
sub rsp, 0x20
call sub.msvcrt.dll_strlen
mov rcx, qword [rbp - 0x68]
mov rdx, qword [rbp - 0x60]
mov r8, qword [rbp - 0x58]
add rsp, 0x20
mov r9d, eax
mov rax, qword [0x140117de0]
mov eax, dword [rax + 8]
sub rsp, 0x30
mov dword [rsp + 0x20], eax
call fcn.140065d80
mov rcx, qword [rbp - 0x58]
add rsp, 0x10
call sub.msvcrt.dll_strlen
add rsp, 0x20
jmp 0x1400d1799
mov rcx, qword [rbp + 0x20]
sub rsp, 0x20
call sub.msvcrt.dll_strlen
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 8]
movsxd r8, ecx
mov rcx, qword [rax]
mov rdx, qword [rcx + 0x1d0]
add rdx, r8
mov qword [rcx + 0x1d0], rdx
mov rax, qword [rax]
mov ecx, dword [rax + 0x1e4]
add ecx, 1
mov dword [rax + 0x1e4], ecx
jmp 0x1400d1964
mov r8, qword [rbp + 0x20]
mov rax, qword [rbp + 8]
mov rcx, qword [rax]
mov rax, qword [0x140117de0]
mov eax, dword [rax + 0xc]
mov edx, 1
mov r9d, 0x3ff
sub rsp, 0x30
mov dword [rsp + 0x20], 0xa
mov dword [rsp + 0x28], eax
call fcn.140069f30
add rsp, 0x30
mov ecx, eax
mov rax, qword [rbp - 0x10]
mov dword [rax], ecx
jmp 0x1400d19fe
jmp 0x1400d1ab8
jmp 0x1400d1b42
jmp 0x1400d1bbe
jmp 0x1400d1c2d
jmp 0x1400d1c99
jmp 0x1400d1d08
jmp 0x1400d1d79
mov r8, qword [rbp]
mov rax, qword [rbp - 0x10]
mov rdx, qword [rbp + 0x20]
mov rcx, qword [rbp - 0x28]
mov rcx, qword [rcx]
movsxd r8, dword [r8]
add rcx, r8
movsxd r8, dword [rax]
sub rsp, 0x20
call sub.msvcrt.dll_memcpy
mov rcx, qword [rbp - 0x10]
mov rax, qword [rbp]
add rsp, 0x20
mov edx, dword [rcx]
mov ecx, dword [rax]
add ecx, edx
mov dword [rax], ecx
jmp 0x1400d1e04
jmp 0x1400d1e9f
jmp 0x1400d1ef4
mov rax, qword [rbp - 0x20]
mov rcx, qword [rbp]
mov ecx, dword [rcx]
mov rax, qword [rax]
mov dword [rax], ecx
jmp 0x1400d1f6a
jmp 0x1400d1fcd
mov rax, qword [rbp - 0x30]
mov dword [rax], 0x2c8
jmp 0x1400d2037
mov rax, qword [rbp + 0x20]
mov byte [rax + 3], 0
jmp 0x1400d2096
mov rax, qword [rbp - 0x30]
mov dword [rax], 0
jmp 0x1400d211c