Function at 0x14008daa0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push rdi
sub rsp, 0xf0
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x28], r8
mov qword [rbp + 0x50], rdx
mov qword [rbp + 0x40], rcx
mov qword [rbp + 0x30], rcx
mov eax, 0x10
call fcn.1401ffc50
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x38], rax
sub rsp, 0x20
call fcn.14008e66c
mov rcx, qword [rbp + 0x40]
add rsp, 0x20
mov qword [rbp + 0x48], rax
movabs rdx, 0x8009f1636ab726d8
movabs rax, 0x8009f1636ab726c8
xor rdx, rax
sub rsp, 0x20
call fcn.14008e690
mov rdx, qword [rbp + 0x50]
add rsp, 0x20
mov rax, qword [rdx]
mov qword [rbp + 0x58], rax
mov qword [rdx + 8], rax
mov rax, rdx
add rax, 0x10
mov qword [rbp + 0x60], rax
mov cl, byte [rdx + 0x10]
mov al, 0xc1
xor al, 0x3e
mov dl, cl
xor dl, al
mov al, 0x81
xor al, 0x9c
and al, dl
mov r8b, 0xff
xor r8b, 0x1d
mov r9b, cl
and r9b, r8b
mov dl, 0xff
xor dl, 1
mov r10b, 0xce
xor r10b, 0xd3
and dl, r10b
and r8b, 1
or al, r9b
or dl, r8b
xor al, dl
cmp cl, 0
mov byte [rbp + 0x6f], al
jne 0x14008dbe4
mov rcx, qword [rbp + 0x58]
mov rdx, qword [rbp + 0x28]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rbp + 0x20], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x14008dbb1
mov rcx, qword [rbp + 0x58]
mov rdx, qword [rbp + 0x20]
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.140014583
add rsp, 0x20
jmp 0x14008e62a
mov rcx, qword [rbp + 0x58]
mov rax, qword [rbp + 0x28]
mov rax, qword [rax + 8]
mov cl, byte [rax + rcx + 8]
mov al, cl
sub al, 0x5c
sete al
sub cl, 0x2f
sete r8b
setne dl
mov cl, al
and cl, dl
mov dl, al
xor dl, r8b
add al, dl
sub al, cl
and al, 1
mov byte [rbp + 0x6f], al
mov al, byte [rbp + 0x6f]
mov byte [rbp + 0x1f], al
mov eax, dword [0x140204598]
xor eax, 0x58ec33c5
mov edx, dword [0x14020459c]
mov ecx, 0xf96238f6
xor ecx, 0x69dc709
mov r8d, eax
xor r8d, ecx
mov ecx, edx
and ecx, r8d
mov r8d, 0xab975858
xor r8d, 0x5468a7a7
xor edx, r8d
and eax, edx
or ecx, eax
sub ecx, 0x83ebef33
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0x6b199782
xor edx, 0xb2006e7f
and eax, edx
mov edx, 0xffffffff
xor edx, 0xd919f9fd
and ecx, edx
sub ecx, eax
mov eax, ecx
and eax, 0x8f16e95b
or ecx, 0x8f16e95b
add eax, ecx
cmp eax, 0x78b03f1a
je 0x14008e636
mov cl, byte [rbp + 0x1f]
mov eax, dword [0x1402045a0]
xor eax, dword [0x1402045a4]
mov edx, 0xdec589c7
xor edx, 0xf3603235
xor eax, edx
xor edx, edx
sub edx, 0xc9663c1c
add eax, edx
imul eax, eax, 0xcd4ea86d
mov dl, 0x71
xor dl, 0x71
cmp cl, dl
sete cl
mov byte [rbp + 0x1e], cl
cmp eax, 0xc83dfc83
jae 0x14008e636
mov al, byte [rbp + 0x1e]
test al, 1
jne 0x14008dd9e
jmp 0x14008dcba
mov rax, qword [rbp + 0x58]
mov rdx, 0xffffffffffffffff
xor rdx, 1
movabs rcx, 0xe96f025278b906b6
movabs r8, 0xe96f025278b906b6
xor rcx, r8
movabs r8, 0xa9a17bffc18ab4e6
movabs r9, 0xa9a17bffc18ab4e7
xor r8, r9
sub rcx, r8
sub rdx, rcx
mov rcx, rax
sub rcx, rdx
mov qword [rbp + 0x10], rcx
mov rdx, rax
xor rdx, 0xffffffffffffffff
mov r8, rax
xor r8, 0xffffffffffffffff
and rdx, r8
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
mov r9, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
and r8, r9
or rdx, r8
xor rdx, 0xffffffffffffffff
or rax, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
movabs r8, 0x59c72bc09699ae35
movabs r9, 0xa638d43f696651ca
xor r8, r9
xor rdx, r8
xor rax, 0xffffffffffffffff
and rdx, rax
xor rdx, 0xffffffffffffffff
mov rax, rcx
xor rax, rdx
and rax, rcx
cmp rax, 0
jge 0x14008dd8a
sub rsp, 0x20
call fcn.140007f57
add rsp, 0x20
jmp 0x14008e62a
mov rax, qword [rbp + 0x10]
mov rcx, qword [rbp + 0x50]
mov qword [rcx], rax
mov qword [rbp + 8], rax
jmp 0x14008e2e3
mov eax, dword [0x1402045a8]
mov edx, dword [0x1402045ac]
xor edx, 0xc476bf29
mov ecx, eax
xor ecx, 0xffffffff
and ecx, edx
mov r8d, 0xb47cf9b9
xor r8d, 0x4b830646
xor edx, r8d
and eax, edx
sub eax, ecx
imul eax, eax, 0x8f1b82c3
sub eax, 0x6d7a1e3
or eax, 0x45f9a928
mov ecx, 0x2586fbc3
xor ecx, 0x1aa53cb2
cmp eax, ecx
jbe 0x14008e63f
mov rcx, qword [rbp + 0x58]
mov rdx, qword [rbp + 0x28]
mov r8d, dword [0x1402045b0]
xor r8d, 0x23259fa5
mov r9d, dword [0x1402045b4]
mov eax, r8d
and eax, r9d
xor r8d, r9d
or eax, r8d
imul eax, eax, 0xeaa907df
sub eax, 0x438203da
xor eax, 0x7c8d129a
mov r8, qword [rdx]
mov qword [rbp - 0x10], r8
add rdx, 8
mov qword [rbp - 8], rdx
movabs rdx, 0xb9e4720b2bec0414
movabs r8, 0x461b8df4d413fbeb
xor rdx, r8
cmp rcx, rdx
setg cl
mov byte [rbp + 7], cl
cmp eax, 0xf959909a
jae 0x14008ddee
mov rax, qword [rbp + 0x58]
mov qword [rbp - 0x18], rax
jmp 0x14008de6e
mov rax, qword [rbp - 0x18]
mov qword [rbp - 0x20], rax
mov r11d, dword [0x1402045b8]
mov r10d, dword [0x1402045bc]
mov eax, 0x54c8160c
xor eax, 0x2c238e09
xor r10d, eax
mov eax, r11d
xor eax, 0xffffffff
mov r8d, r10d
xor r8d, 0xffffffff
mov edx, 0x5929bbb3
xor edx, 0x669aeaa4
mov ecx, 0x37a84c84
xor ecx, 0xc857b37b
xor edx, ecx
mov ecx, eax
and ecx, 0x3fb35117
and r11d, edx
mov esi, 0x98aab91e
xor esi, 0xa719e809
mov r9d, r8d
and r9d, esi
and r10d, edx
or ecx, r11d
or r9d, r10d
xor ecx, r9d
or eax, r8d
xor eax, 0xffffffff
or edx, 0x3fb35117
and eax, edx
or ecx, eax
mov eax, 0x9292a465
xor eax, 0x8bddce7
xor ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x6938da06
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x6938da06
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
xor ecx, ecx
sub ecx, 0xab482af1
sub eax, ecx
cmp eax, 0x9d990d6b
je 0x14008e648
mov rcx, qword [rbp - 0x20]
mov eax, dword [0x1402045c0]
xor eax, 0xd1c05690
mov edx, dword [0x1402045c4]
sub eax, 0x49a082ad
add eax, edx
add eax, 0x49a082ad
mov r8d, 0x2aa3be67
xor edx, edx
div r8d
mov r8d, 0x7dac7cbd
xor edx, edx
div r8d
mov rdx, qword [rbp - 0x10]
mov r10d, 0xffffffff
xor r10d, 0xc8cc2eff
mov r9d, eax
and r9d, r10d
mov r8d, eax
or r8d, r10d
xor r8d, 0xffffffff
imul r8d, r9d
mov r10d, 0xd25e4790
xor r10d, 0x1a92696f
mov r9d, eax
and r9d, r10d
or eax, 0xc8cc2eff
imul eax, r9d
add eax, r8d
cmp rcx, rdx
setl cl
mov byte [rbp - 0x21], cl
cmp eax, 0x8afaf13c
ja 0x14008df36
mov rax, qword [rbp - 0x20]
mov cl, byte [rbp - 0x21]
test cl, 1
mov qword [rbp + 8], rax
jne 0x14008dfde
jmp 0x14008e2e3
mov al, byte [rbp + 7]
test al, 1
jne 0x14008e049
jmp 0x14008dfee
mov rcx, qword [rbp - 0x20]
mov rdx, qword [rbp - 0x10]
movabs rax, 0xf051b66770422a79
sub rdx, rax
movabs rax, 0x1c4b9faf7aead4dd
movabs r8, 0xe3b4605085152b22
xor rax, r8
add rdx, rax
movabs rax, 0xce21cea44c358c3c
movabs r8, 0x3e7078c33c77a645
xor rax, r8
add rdx, rax
sub rsp, 0x20
call fcn.140014583
add rsp, 0x20
jmp 0x14008e62a
mov ecx, dword [0x1402045c8]
mov eax, dword [0x1402045cc]
xor eax, 0xffffffff
add ecx, eax
mov eax, 0x78dc9725
xor eax, 0x78dc9724
add ecx, eax
mov eax, ecx
and eax, 0xc71ddee7
mov edx, 0xdb2ec31b
xor edx, 0xdb2ec319
imul eax, edx
xor ecx, 0xc71ddee7
add ecx, eax
and ecx, 0x338dd3fd
mov eax, ecx
and eax, 0x470ef743
xor ecx, 0x470ef743
or eax, ecx
cmp eax, 0x29287c8f
jb 0x14008e651
mov r8, qword [rbp - 0x20]
mov eax, dword [0x1402045d0]
xor edx, edx
div dword [0x1402045d4]
mov ecx, eax
mov edx, 0xbdcd84ff
xor edx, 0xd63bc62b
mov eax, 0xb6623638
xor eax, 0x499dc9c7
xor edx, eax
mov eax, ecx
xor eax, edx
and eax, ecx
and eax, 0xd317a21e
mov ecx, 0x54e8b318
xor edx, edx
div ecx
mov rdx, qword [rbp - 8]
mov ecx, 0x34401592
xor ecx, 0xa2390a55
mov rdx, qword [rdx]
mov dl, byte [rdx + r8 + 8]
mov byte [rbp - 0x22], dl
cmp eax, ecx
ja 0x14008e0a3
mov rax, qword [rbp - 0x20]
mov cl, byte [rbp - 0x22]
sub cl, 0x2f
mov qword [rbp + 8], rax
je 0x14008e2e3
jmp 0x14008e11d
mov rax, qword [rbp - 0x20]
mov cl, byte [rbp - 0x22]
sub cl, 0x5c
mov qword [rbp + 8], rax
je 0x14008e2e3
jmp 0x14008e136
mov r11d, dword [0x1402045d8]
mov r10d, dword [0x1402045dc]
mov eax, 0x497d7145
xor eax, 0xb6828eba
mov ecx, r11d
xor ecx, eax
mov r8d, r10d
xor r8d, 0xffffffff
mov edx, 0xa4f819f7
xor edx, 0x47592c39
mov eax, 0x2220d69a
xor eax, 0xdddf2965
xor edx, eax
mov r9d, 0xafc123c4
xor r9d, 0x4c60160a
mov eax, ecx
and eax, r9d
and r11d, edx
mov r9d, r8d
and r9d, 0xe3a135ce
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0xe3a135ce
and ecx, edx
or eax, ecx
mov ecx, 0xc21b04dd
xor edx, edx
div ecx
mov ecx, 0xec18491d
xor edx, edx
div ecx
mov ecx, 0x7d5b5ced
xor ecx, 0x932d0f1d
mov edx, 0x402b0014
xor edx, 0xbfd4ffeb
xor ecx, edx
mov edx, 0x731d3881
xor edx, 0x731d3881
mov r8d, 0x244747ec
xor r8d, 0x244747ed
sub edx, r8d
sub ecx, edx
sub eax, ecx
cmp eax, 0xe975c4ef
jbe 0x14008e65a
mov rcx, qword [rbp + 0x50]
mov rdx, qword [rbp - 0x20]
mov edi, dword [0x1402045e0]
and edi, dword [0x1402045e4]
mov eax, 0xa4688561
xor eax, 0x1048be9a
mov r8d, edi
and r8d, eax
mov eax, 0x173d0fa3
xor eax, 0x173d0fa1
imul eax, r8d
add edi, 0xb4203bfb
sub edi, eax
mov eax, 0xe477bdb3
xor eax, 0x1b88424c
mov r8d, edi
xor r8d, eax
mov r10d, 0xffffffff
xor r10d, 0x79bbd34f
mov r9d, 0xffffffff
xor r9d, 0xf40c7fa5
mov eax, r8d
and eax, 0xf40c7fa5
and edi, r9d
mov esi, 0xbca3dc09
xor esi, 0x48afa3ac
mov r11d, r10d
and r11d, esi
mov esi, r9d
and esi, 0x79bbd34f
or eax, edi
or r11d, esi
xor eax, r11d
or r8d, r10d
mov r10d, 0xf28a27bd
xor r10d, 0xd75d842
xor r8d, r10d
or r9d, 0xf40c7fa5
and r8d, r9d
or eax, r8d
add eax, 0x7bbf3206
sub eax, 0xd6a1464d
sub eax, 0x7bbf3206
add rdx, 1
mov qword [rbp - 0x30], rdx
mov qword [rcx], rdx
cmp eax, 0xbbe58aab
ja 0x14008e200
mov rax, qword [rbp - 0x30]
mov qword [rbp - 0x18], rax
jmp 0x14008de6e
mov rax, qword [rbp + 0x58]
mov rcx, qword [rbp + 8]
mov qword [rbp - 0x38], rcx
cmp rax, rcx
jge 0x14008e3ad
mov rax, qword [rbp - 0x38]
mov rdx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
movabs rcx, 0x571a420a1c5a1246
movabs r8, 0x571a420a1c5a1246
xor rcx, r8
movabs r8, 0xc9b7da5726b48e90
movabs r9, 0xc9b7da5726b48e91
xor r8, r9
sub rcx, r8
sub rdx, rcx
mov rcx, rax
sub rcx, rdx
mov qword [rbp - 0x40], rcx
xor rcx, rax
cmp rcx, 0
setl cl
movabs rdx, 0xb4447e2701132258
movabs r8, 0xb4447e2701132258
xor rdx, r8
cmp rax, rdx
setg al
and al, cl
test al, 1
jne 0x14008e37b
jmp 0x14008e38d
sub rsp, 0x20
call fcn.140007f57
add rsp, 0x20
jmp 0x14008e62a
mov rax, qword [rbp - 0x38]
mov rcx, qword [rbp + 0x40]
mov rdx, qword [rbp - 0x40]
mov r8, qword [rbp + 0x58]
mov qword [rcx], r8
mov qword [rcx + 8], rdx
mov qword [rbp - 0x48], rax
jmp 0x14008e437
mov rax, qword [rbp + 0x48]
mov rcx, qword [rbp - 0x38]
mov rdx, qword [rbp + 0x28]
mov rdx, qword [rdx]
sub rcx, rdx
setge cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp - 0x49], al
or al, cl
test al, 1
jne 0x14008e41e
mov r8, qword [rbp + 0x38]
mov rdx, qword [rbp + 0x50]
mov rcx, qword [rbp + 0x40]
mov rax, qword [rbp + 0x28]
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.14008daa0
mov rax, qword [rbp + 0x48]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14008e62a
mov rax, qword [rbp + 0x50]
mov rax, qword [rax]
mov qword [rbp - 0x48], rax
jmp 0x14008e437
mov rax, qword [rbp - 0x38]
mov cl, byte [rbp - 0x49]
test cl, 1
mov qword [rbp - 0x48], rax
jne 0x14008e62a
jmp 0x14008e437
mov rcx, qword [rbp + 0x28]
mov rax, qword [rbp - 0x48]
mov rdx, qword [rcx]
mov qword [rbp - 0x70], rdx
add rcx, 8
mov qword [rbp - 0x68], rcx
cmp rax, 0xffffffffffffffff
setg cl
mov byte [rbp - 0x59], cl
mov qword [rbp - 0x58], rax
mov rcx, qword [rbp - 0x70]
mov rax, qword [rbp - 0x58]
mov qword [rbp - 0x78], rax
cmp rax, rcx
jge 0x14008e53d
mov al, byte [rbp - 0x59]
test al, 1
jne 0x14008e4c6
jmp 0x14008e481
mov rcx, qword [rbp - 0x78]
mov rdx, qword [rbp - 0x70]
movabs rax, 0x3e357c0ba99875f3
add rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0x324c69b562db8420
movabs r8, 0xc7915becb43f1d3
xor rax, r8
sub rdx, rax
sub rsp, 0x20
call fcn.140014583
add rsp, 0x20
jmp 0x14008e62a
mov rcx, qword [rbp - 0x78]
mov rax, qword [rbp - 0x68]
mov rax, qword [rax]
mov al, byte [rax + rcx + 8]
mov byte [rbp - 0x79], al
sub al, 0x2f
je 0x14008e4f5
jmp 0x14008e4e5
mov al, byte [rbp - 0x79]
sub al, 0x5c
jne 0x14008e53d
jmp 0x14008e4f5
mov rcx, qword [rbp + 0x50]
mov rax, qword [rbp - 0x78]
movabs rdx, 0xabb59321b087e7cd
movabs r8, 0xabb59321b087e7cd
xor rdx, r8
movabs r8, 0x9cefb2390036b8eb
movabs r9, 0x9cefb2390036b8ea
xor r8, r9
sub rdx, r8
sub rax, rdx
mov qword [rcx], rax
mov qword [rbp - 0x58], rax
jmp 0x14008e45c
mov eax, dword [0x1402045e8]
xor edx, edx
div dword [0x1402045ec]
add eax, 0xefc3efe5
mov ecx, 0xc7e7e163
xor ecx, 0xd3121f2a
add eax, ecx
sub eax, 0xefc3efe5
mov ecx, 0xe92000f7
xor ecx, 0x5ec510f1
imul eax, ecx
mov ecx, 0x4321c992
xor ecx, 0xa94a689f
imul eax, ecx
cmp eax, 0x81d57a0
jbe 0x14008e663
mov rdx, qword [rbp + 0x60]
mov eax, dword [0x1402045f0]
or eax, dword [0x1402045f4]
mov r8d, 0xb2bdff36
xor r8d, 0x4d4200c9
mov ecx, eax
xor ecx, r8d
mov r8d, 0xca45af9
xor r8d, 0x5de491c7
and r8d, ecx
mov r9d, 0x37582a21
xor r9d, 0x6618e11f
mov ecx, 0xdfe2b0ec
xor ecx, 0x201d4f13
xor r9d, ecx
mov ecx, eax
and ecx, r9d
imul ecx, r8d
mov r9d, 0x878dae06
xor r9d, 0xd6cd6538
mov r8d, eax
and r8d, r9d
or eax, 0x5140cb3e
imul eax, r8d
add eax, ecx
mov ecx, 0x4df55536
xor ecx, 0x5c8b273b
and eax, ecx
and eax, 0xb51f287f
mov ecx, 0x39d5bebe
xor ecx, 0xa6777ad2
mov byte [rdx], 1
cmp eax, ecx
je 0x14008e589
jmp 0x14008e62a
mov rax, qword [rbp + 0x30]
lea rsp, [rbp + 0x70]
pop rdi
pop rsi
pop rbp
ret
call 0x129c83e21
invalid
call 0x129f3ef8e
cmpsb byte [rsi], byte [rdi]
idiv edi
call rcx
invalid
rcl ebp, 1
mov bl, 0xac
jmp 0x14008df36
lahf
fld xword [rbx]
mov esi, 0xfffa49e9
call rsp
xchg ebp, eax
hlt
invalid
add byte [rcx + 0x1de93faa], bl
invalid