Function at 0x1401e8f80
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0xc0
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x30], rcx
mov qword [rbp + 0x38], rcx
mov edx, dword [0x14025d6f0]
mov r8d, dword [0x14025d6f4]
mov eax, 0x5ee7068c
xor eax, 0x7ff2a914
xor r8d, eax
mov eax, edx
xor eax, 0xffffffff
mov ecx, r8d
and ecx, eax
mov eax, 0x2c7b288f
xor eax, 0xd384d770
mov r9d, r8d
xor r9d, eax
mov eax, edx
and eax, r9d
imul eax, ecx
mov ecx, edx
and ecx, r8d
or edx, r8d
imul edx, ecx
add edx, eax
mov r8d, 0x915d2add
xor r8d, 0x9d6bdc54
mov eax, 0xb54df745
xor eax, 0x4ab208ba
xor r8d, eax
mov ecx, edx
and ecx, r8d
mov eax, edx
or eax, r8d
mov r8d, 0xccd46c12
xor r8d, 0x332b93ed
xor eax, r8d
imul eax, ecx
mov ecx, edx
and ecx, 0xc36f689
or edx, 0xc36f689
imul edx, ecx
add edx, eax
mov ecx, 0x6a77679f
xor ecx, 0x44b88356
mov eax, edx
xor eax, ecx
mov ecx, 0x406a37a4
xor ecx, 0x6ea5d36d
mov r8d, 0x2f80d06f
xor r8d, 0xd07f2f90
xor ecx, r8d
and edx, ecx
shl edx, 1
sub edx, eax
mov ecx, edx
xor ecx, 0xd5ec9fa5
mov eax, 0xffffffff
xor eax, 0xd5ec9fa5
and edx, eax
mov eax, 0xaaa5d6d
xor eax, 0xaaa5d6f
imul eax, edx
sub eax, ecx
cmp eax, 0xd9c4e036
jb 0x1401e9862
mov eax, dword [0x14025d6f8]
xor eax, 0x17658d67
mov ecx, dword [0x14025d6fc]
xor ecx, 0x462e384e
imul eax, ecx
mov ecx, eax
xor ecx, 0x808cea74
xor eax, 0xbe87780
and eax, ecx
mov ecx, 0x914bbfef
imul rax, rcx
shr rax, 0x3f
mov dword [rbp + 0x14], eax
mov eax, 0x10
mov qword [rbp - 0x20], rax
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp - 0x20]
mov rcx, rsp
mov qword [rbp - 0x40], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp - 0x20]
mov rcx, rsp
mov qword [rbp], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp - 0x20]
mov rcx, rsp
mov qword [rbp - 0x38], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp - 0x20]
mov rcx, rsp
mov qword [rbp - 0x30], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp - 0x20]
mov rcx, rsp
mov qword [rbp - 0x28], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp - 0x20]
mov rcx, rsp
mov qword [rbp - 0x18], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x10], rax
sub rsp, 0x20
call fcn.1401ee866
mov rcx, qword [rbp]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x30]
mov qword [rbp + 8], rdx
add rdx, 0x50
mov qword [rbp - 8], rdx
movabs rdx, 0x1ec2189649b90d31
movabs r8, 0x1ec2189649b90d31
xor rdx, r8
mov qword [rax], rdx
mov qword [rax + 8], 0
mov edx, 0x20
sub rsp, 0x20
call fcn.1400a7170
mov rdx, qword [rbp]
mov rcx, qword [rbp + 8]
mov eax, dword [rbp + 0x14]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rbp + 0x18], r8
mov rdx, qword [rdx + 8]
mov qword [rbp + 0x20], rdx
cmp byte [rcx + 0x50], 0
sete cl
mov byte [rbp + 0x2f], cl
cmp eax, 0xf11b08fd
jae 0x1401e908a
mov al, byte [rbp + 0x2f]
test al, 1
jne 0x1401e91e4
jmp 0x1401e97f7
mov rcx, qword [rbp - 0x38]
mov rax, qword [rbp + 0x20]
mov rdx, qword [rbp + 0x18]
mov qword [rcx], rdx
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1401e987d
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 8]
mov qword [rbp - 0x48], rcx
cmp byte [rax], 0
jne 0x1401e97f7
mov rax, qword [rbp - 0x48]
movabs rcx, 0x9fc9ab8141c43ece
movabs rdx, 0x6036547ec1c43ece
xor rcx, rdx
add rax, rcx
movabs rcx, 0x22bc8e2654381b40
movabs rdx, 0xdd4371d954381b40
xor rcx, rdx
cmp rax, rcx
jae 0x1401e929a
mov rcx, qword [rbp - 0x48]
movabs rdx, 0x48cfb755d79437d9
movabs rax, 0xb73048aa579437d9
xor rdx, rax
movabs r8, 0x178cda25a3235dcf
movabs rax, 0x178cda25dcdca230
xor r8, rax
sub rsp, 0x20
call fcn.14000cee2
add rsp, 0x20
jmp 0x1401e97f7
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp + 0x20]
mov rdx, qword [rbp + 0x18]
mov r8, qword [rbp - 0x40]
mov r9, qword [rbp - 0x48]
mov dword [r8], r9d
mov qword [rcx], rdx
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1401e991a
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 8]
mov qword [rbp - 0x50], rcx
cmp byte [rax], 0
jne 0x1401e97f7
mov eax, dword [0x14025d700]
xor eax, 0x1ff3db33
mov r8d, dword [0x14025d704]
xor r8d, 0x21d445a5
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xc61d6b3a
xor edx, edx
div ecx
mov ecx, 0x4f61e422
xor edx, edx
div ecx
xor eax, 0x5486163
mov ecx, 0x9ed80b00
xor ecx, 0x4f6c9786
cmp eax, ecx
ja 0x1401e986b
mov rcx, qword [rbp - 0x50]
mov edx, dword [0x14025d708]
mov r8d, dword [0x14025d70c]
mov eax, edx
and eax, r8d
mov r9d, 0x36161ce1
xor r9d, 0xc9e9e31e
xor eax, r9d
and edx, r8d
mov r8d, 0x8e6f0e5f
xor r8d, 0x7190f1a0
xor edx, r8d
xor eax, 0xffffffff
mov r8d, 0xd867415d
xor r8d, 0x2798bea2
xor edx, r8d
or eax, edx
add eax, 0xf7ac5
mov r8d, 0xe14384c8
xor r8d, 0x3bed767d
xor edx, edx
div r8d
mov rdx, qword [rbp - 0x40]
and eax, eax
mov r8d, 0x3192a3fd
xor r8d, 0xce6d5c02
xor eax, r8d
mov r8d, 0xffffffff
xor r8d, 0xf232b0b9
mov r9d, 0xffffffff
xor r9d, 0xf232b0b9
or r8d, r9d
xor eax, 0xffffffff
xor r8d, 0xffffffff
or eax, r8d
mov dword [rbp - 0x5c], eax
mov eax, 0xb3f64a1
xor eax, 0x480c27cf
mov dword [rbp - 0x60], eax
sub rsp, 0x20
call fcn.1400b4552
mov rdx, qword [rbp - 8]
mov ecx, dword [rbp - 0x60]
add rsp, 0x20
mov r8d, eax
mov eax, dword [rbp - 0x5c]
mov dword [rbp - 0x58], r8d
mov dl, byte [rdx]
mov r8b, 0x61
xor r8b, 0x61
cmp dl, r8b
sete dl
mov byte [rbp - 0x51], dl
cmp eax, ecx
jb 0x1401e986b
mov al, byte [rbp - 0x51]
test al, 1
jne 0x1401e943a
jmp 0x1401e97f7
mov eax, dword [rbp - 0x58]
cmp eax, 0
jne 0x1401e94e3
mov rax, qword [rbp + 0x20]
mov rcx, qword [rbp + 0x30]
mov rdx, qword [0x140269048]
mov qword [rcx], rdx
mov rdx, qword [0x140269050]
mov qword [rcx + 8], rdx
cmp rax, 0
je 0x1401e9858
mov rax, qword [rbp + 0x20]
mov rax, qword [rax]
xor rax, 0xffffffffffffffff
movabs rdx, 0xfa44b54fd26415a6
movabs rcx, 0xba44b54fd26415a6
xor rdx, rcx
movabs rcx, 0xa5d8514d318da847
movabs r8, 0x5a27aeb2ce7257b8
xor rcx, r8
xor rdx, rcx
mov rcx, 0xffffffffffffffff
movabs r8, 0x773ea3a395189bec
xor rcx, r8
or rax, rdx
movabs rdx, 0x773ea3a395189bec
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
je 0x1401e9847
jmp 0x1401e9858
mov rcx, qword [rbp - 0x28]
mov rdx, qword [rbp - 0x18]
mov rax, qword [rbp + 0x20]
mov r8, qword [rbp + 0x18]
mov qword [rdx], r8
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1401e9950
mov rcx, qword [rbp - 0x28]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp - 0x70], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp - 0x68], rcx
mov al, byte [rax]
mov cl, 0x7e
xor cl, 0x7e
cmp al, cl
jne 0x1401e97a3
mov rdx, qword [rbp - 0x10]
mov rcx, qword [rbp + 0x30]
mov rax, qword [rbp - 0x68]
mov r8, qword [rbp - 0x70]
mov qword [rdx], r8
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1401e9b90
mov rax, qword [rbp - 8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401e97a3
mov rax, qword [rbp - 0x68]
cmp rax, 0
je 0x1401e95ea
mov rax, qword [rbp - 0x68]
mov rcx, qword [rax]
mov rax, rcx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0x4000000000000000
movabs rdx, 0x4000000000000000
or rcx, rdx
movabs rdx, 0x84b17ba397c13be0
movabs r8, 0x7b4e845c683ec41f
xor rdx, r8
xor rcx, rdx
or rax, rcx
movabs rcx, 0x576b5ffb80ac5631
movabs rdx, 0xa894a0047f53a9ce
xor rcx, rdx
xor rax, rcx
cmp rax, 0
jne 0x1401e95ea
mov rcx, qword [rbp - 0x68]
sub rsp, 0x20
call fcn.14000e9f6
add rsp, 0x20
mov eax, dword [0x14025d710]
xor eax, 0x17c7a7db
sub eax, dword [0x14025d714]
mov edx, 0xaab4e956
xor edx, 0x423fe26d
mov ecx, eax
and ecx, edx
xor ecx, 0xffffffff
and eax, 0xe88b0b3b
mov edx, 0x65310ed7
xor edx, 0x9acef128
xor eax, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
xor eax, eax
sub eax, 0x375788c1
sub ecx, eax
mov edx, 0xffffffff
xor edx, 0xd7faa0f9
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0xdb916f7a
xor ecx, 0x4972da10
cmp eax, ecx
je 0x1401e9874
mov rcx, qword [rbp + 0x20]
mov eax, dword [0x14025d718]
xor eax, 0x57afd4be
xor edx, edx
div dword [0x14025d71c]
mov edx, eax
xor edx, 0x9e9bffd1
mov r8d, 0x776e9c71
xor r8d, 0x8891638e
xor edx, r8d
and edx, 0x9e9bffd1
shl edx, 1
mov r8d, 0xfbcd3403
xor r8d, 0x6556cbd2
sub edx, r8d
sub eax, edx
mov r9d, 0x8c3f3c55
xor r9d, 0x903e8c8d
mov edx, 0xedbd2f6e
xor edx, 0x1242d091
xor r9d, edx
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, 0x1c01b0d8
or eax, 0x1c01b0d8
imul eax, r8d
add eax, edx
or eax, 0xfc549e22
cmp rcx, 0
sete cl
mov byte [rbp - 0x71], cl
cmp eax, 0x366d58f7
je 0x1401e9874
mov al, byte [rbp - 0x71]
test al, 1
jne 0x1401e9858
jmp 0x1401e970a
mov rax, qword [rbp + 0x20]
mov rax, qword [rax]
movabs rcx, 0xb99a5c172da32787
movabs rdx, 0x4665a3e8d25cd878
xor rcx, rdx
xor rax, rcx
mov rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
xor rcx, rdx
movabs rdx, 0xd7d65d3954528803
movabs r8, 0xd5a6d0354f3ac594
xor rdx, r8
movabs r8, 0x1d93a0c690d30e1
movabs r9, 0xfe26c5f396f2cf1e
xor r8, r9
xor rdx, r8
or rax, rcx
movabs rcx, 0xf2908a4a6f184876
movabs r8, 0xf0e00746747005e1
xor rcx, r8
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
je 0x1401e9847
jmp 0x1401e9858
mov rax, qword [rbp - 0x68]
cmp rax, 0
je 0x1401e97f7
mov rax, qword [rbp - 0x68]
mov rax, qword [rax]
movabs rdx, 0x4000000000000000
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
and rax, rcx
cmp rax, 0
jne 0x1401e97f7
mov rcx, qword [rbp - 0x68]
sub rsp, 0x20
call fcn.14000e9f6
add rsp, 0x20
mov rax, qword [rbp + 0x20]
cmp rax, 0
cmp eax, 0
je 0x1401e9858
mov rax, qword [rbp + 0x20]
mov rax, qword [rax]
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
add rax, rcx
movabs rcx, 0x1aea8f59102df24c
movabs rdx, 0x1aea8f59102df24c
xor rcx, rdx
cmp rax, rcx
jne 0x1401e9858
mov rcx, qword [rbp + 0x20]
sub rsp, 0x20
call fcn.14000e9f6
add rsp, 0x20
mov rax, qword [rbp + 0x38]
lea rsp, [rbp + 0x40]
pop rbp
ret
insd dword [rdi], dx
je 0x1401e97fc
invalid
invalid
sal dl, 0xe
or ecx, ebp
xlatb
std
invalid