Function at 0x140225190
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x90
lea rbp, [rsp + 0x80]
mov qword [rbp + 8], rcx
mov eax, dword [0x140259c80]
xor edx, edx
div dword [0x140259c84]
mov ecx, 0x9d8289b2
xor edx, edx
div ecx
sub eax, 0x533d7b94
add eax, 0xd06675e5
add eax, 0x533d7b94
sub eax, 0x133162e0
mov ecx, 0x6db91d57
xor ecx, 0xa1d0d42c
cmp eax, ecx
ja 0x1402254fa
mov ecx, dword [0x140259c88]
mov edx, ecx
xor edx, 0x80350060
mov eax, dword [0x140259c8c]
and ecx, 0x1c04400
and edx, 0xa035806c
or ecx, edx
and eax, 0xa1f5c46c
xor eax, ecx
xor eax, 0x1c04400
add eax, 0x794af395
mov dword [rbp], eax
mov eax, 0x7b35b1cc
mov dword [rbp - 4], eax
mov eax, 0x10
mov qword [rbp - 0x38], rax
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp - 0x38]
mov rcx, rsp
mov qword [rbp - 0x20], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp - 0x38]
mov rcx, rsp
mov qword [rbp - 0x48], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp - 0x38]
mov rcx, rsp
mov qword [rbp - 0x40], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp - 0x38]
mov rcx, rsp
mov qword [rbp - 0x30], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x28], rax
sub rsp, 0x20
call fcn.1402257f0
mov rdx, qword [rbp - 0x20]
add rsp, 0x20
mov qword [rbp - 0x10], rax
add rax, 0x50
mov qword [rbp - 0x18], rax
mov rax, qword [0x140264200]
mov qword [rdx], rax
mov rax, qword [str._B_]
mov qword [rdx + 8], rax
lea rcx, [0x1402d7fb8]
sub rsp, 0x20
call fcn.140013ddc
add rsp, 0x20
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.140012610
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 8]
mov rcx, qword [rax]
add rcx, 0x20
sub rsp, 0x20
call fcn.14021ad60
mov rdx, qword [rbp - 0x10]
mov ecx, dword [rbp - 4]
mov eax, dword [rbp]
add rsp, 0x20
cmp byte [rdx + 0x50], 0
sete dl
mov byte [rbp + 7], dl
cmp eax, ecx
je 0x1402251e2
mov al, byte [rbp + 7]
test al, 1
jne 0x140225328
jmp 0x140225468
mov rcx, qword [rbp + 8]
sub rsp, 0x20
call fcn.140221100
mov rax, qword [rbp - 0x18]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140225468
mov rcx, qword [rbp + 8]
sub rsp, 0x20
call fcn.1402224e0
mov rax, qword [rbp - 0x18]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140225468
mov ecx, 0x8e5
sub rsp, 0x20
call fcn.1400644d0
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp - 0x18]
mov dword [rbp - 0x4c], ecx
cmp byte [rax], 0
jne 0x140225468
mov rcx, qword [rbp - 0x48]
mov rax, qword [rbp + 8]
mov rax, qword [rax]
mov rdx, qword [rax + 0x20]
sub rsp, 0x20
call fcn.14007df10
mov rcx, qword [rbp - 0x48]
mov rax, qword [rbp - 0x18]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp - 0x60], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp - 0x58], rcx
cmp byte [rax], 0
jne 0x140225468
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp + 8]
mov rdx, qword [rax]
add rdx, 0x18
sub rsp, 0x20
call fcn.14013de60
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp - 0x18]
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, 0xf0
xor cl, 0xf0
cmp al, cl
jne 0x140225468
mov r8, qword [rbp - 0x28]
mov rdx, qword [rbp - 0x30]
mov ecx, dword [rbp - 0x4c]
mov rax, qword [rbp - 0x68]
mov r9, qword [rbp - 0x70]
mov r10, qword [rbp - 0x58]
mov r11, qword [rbp - 0x60]
mov qword [rdx], r11
mov qword [rdx + 8], r10
mov qword [r8], r9
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.14009b430
mov rax, qword [rbp - 0x18]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140225468
mov ecx, 0xa1
sub rsp, 0x20
call fcn.140064710
mov rax, qword [rbp - 0x18]
add rsp, 0x20
cmp byte [rax], 0
je 0x1402254f4
sub rsp, 0x20
call fcn.140220da2
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x78], rax
mov ax, word [rax + 0x12]
mov cx, 0x1375
xor cx, 0x1374
cmp ax, cx
jle 0x1402254f4
mov rax, qword [rbp - 0x78]
mov rax, qword [rax + 0x18]
mov eax, dword [rax + 8]
mov ecx, 0x8789a3c1
xor ecx, 0x42fb81a0
cmp eax, ecx
jne 0x1402254f4
mov rax, qword [rbp - 0x18]
mov byte [rax], 0
sub rsp, 0x20
call fcn.140220db4
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.140099ce0
mov rax, qword [rbp - 0x18]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x69
xor cl, 0x69
cmp al, cl
jne 0x1402254f4
sub rsp, 0x20
call fcn.140220de1
add rsp, 0x20
lea rsp, [rbp + 0x10]
pop rbp
ret
push rsp
and byte [rdi], ah
insb byte [rdi], dx
jmp 0x1402251e2