Function at 0x140058e90
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x60
lea rbp, [rsp + 0x60]
mov qword [rbp - 0x38], r9
mov qword [rbp - 0x30], r8
mov rcx, rdx
mov qword [rbp - 0x28], rcx
mov rdx, qword [rbp + 0x38]
mov qword [rbp - 0x20], rdx
mov rax, qword [rbp + 0x30]
mov qword [rbp - 0x18], rax
mov eax, 0x10
call fcn.1401da3e0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x10], rax
test rdx, rdx
setns al
mov rcx, qword [rcx]
mov qword [rbp - 8], rcx
sub rcx, rdx
setg cl
and al, cl
test al, 1
jne 0x140058f28
mov rcx, qword [rbp - 0x20]
mov rax, qword [rbp - 8]
movabs r8, 0x9571a6474a933633
movabs rdx, 0x6a8e59b8b56cc9cc
xor r8, rdx
mov rdx, rax
and rdx, r8
or rax, 0xffffffffffffffff
add rdx, rax
sub rsp, 0x20
call fcn.1400137e9
add rsp, 0x20
jmp 0x1400591d8
mov r8, qword [rbp - 0x20]
mov rcx, qword [rbp - 0x28]
mov rdx, qword [rbp - 0x10]
mov rax, qword [rbp - 0x30]
mov r9, rcx
add r9, 8
mov qword [rbp - 0x48], r9
mov rcx, qword [rcx + 8]
add rcx, 8
shl r8, 5
add rcx, r8
add rcx, 8
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001a2c4
mov rax, qword [rbp - 0x28]
mov rcx, qword [rbp - 0x20]
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x40], rax
cmp rax, rcx
jg 0x140058fc1
mov rcx, qword [rbp - 0x20]
mov rdx, qword [rbp - 0x40]
movabs rax, 0xd0140044816be89e
add rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0xd0140044816be89e
sub rdx, rax
sub rsp, 0x20
call fcn.1400137e9
add rsp, 0x20
jmp 0x1400591d8
mov eax, dword [0x1401dd980]
mov ecx, dword [0x1401dd984]
xor ecx, 0xf9e0b2dc
imul eax, ecx
mov ecx, 0x664671bd
xor ecx, 0xc1c3a552
or eax, ecx
sub eax, 0xa3509781
mov ecx, 0x9e41e71e
xor ecx, 0xac4a8712
add eax, ecx
mov ecx, 0x7ec10d40
xor ecx, 0x69ad5059
sub eax, ecx
sub eax, 0x320b600c
mov ecx, 0x78d9a2a1
xor ecx, 0x188e81cc
cmp eax, ecx
je 0x140059387
mov rax, qword [rbp - 0x20]
mov rdx, qword [rbp - 0x38]
mov rcx, qword [rbp - 0x48]
mov r8d, dword [0x1401dd988]
mov r9d, 0x401511a3
xor r9d, 0x655ad36c
xor r8d, r9d
and r8d, dword [0x1401dd98c]
xor r9d, r9d
sub r9d, r8d
xor r8d, r8d
sub r8d, 0x95773c4
add r9d, r8d
mov r8d, 0xc9ff4bf9
xor r8d, 0xc9ff4bf9
sub r8d, r9d
imul r8d, r8d, 0xd09c1fc3
xor r8d, 0xa8026af1
mov dword [rbp - 0x5c], r8d
mov rcx, qword [rcx]
add rcx, 8
shl rax, 5
add rcx, rax
add rcx, 0x18
sub rsp, 0x20
call fcn.1401238f2
mov rcx, qword [rbp - 0x28]
mov rdx, qword [rbp - 0x20]
mov eax, dword [rbp - 0x5c]
add rsp, 0x20
mov rcx, qword [rcx]
mov qword [rbp - 0x58], rcx
cmp rcx, rdx
setg cl
mov byte [rbp - 0x49], cl
cmp eax, 0x3fff409e
jb 0x140059387
mov al, byte [rbp - 0x49]
test al, 1
jne 0x1400590ec
jmp 0x1400590ce
mov rcx, qword [rbp - 0x20]
mov rdx, qword [rbp - 0x58]
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.1400137e9
add rsp, 0x20
jmp 0x1400591d8
mov eax, dword [str.q_n._f_l]
xor eax, 0x6808558e
or eax, dword [0x1401dd994]
mov ecx, 0x37bb75
xor ecx, 0xd33b77ef
add eax, ecx
mov ecx, eax
and ecx, 0x87ab40d4
mov edx, 0xb19e55c0
xor edx, 0xb19e55c2
imul ecx, edx
xor eax, 0x87ab40d4
add eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x141fdc9d
xor edx, 0xae07df2b
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0xba1803b6
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0xd57559ca
xor r8d, 0x6f6d5a7c
mov edx, eax
and edx, r8d
or eax, 0xba1803b6
imul eax, edx
add eax, ecx
mov ecx, 0x890fd769
xor ecx, 0x6c194045
cmp eax, ecx
je 0x140059390
mov r8, qword [rbp - 0x20]
mov rcx, qword [rbp - 0x48]
mov eax, dword [0x1401dd998]
xor edx, edx
div dword [0x1401dd99c]
and eax, 0xbd2fa182
mov r9d, 0x323e9da0
xor edx, edx
div r9d
mov rdx, qword [rbp - 0x18]
mov r9d, 0xc3cf43dc
xor r9d, 0x9b4d64a9
and eax, r9d
mov rcx, qword [rcx]
add rcx, 8
shl r8, 5
add rcx, r8
mov qword [rcx], rdx
cmp eax, 0x4e82fae4
ja 0x14005917d
jmp 0x1400591d8
mov ecx, dword [0x1401dd9a0]
mov eax, dword [0x1401dd9a4]
xor eax, 0x202733b8
mov edx, 0x5a8c6066
xor edx, 0xa5739f99
xor eax, edx
mov edx, 0x43c568ea
xor edx, 0x43c568ea
mov r8d, 0x71c79a62
xor r8d, 0x71c79a63
sub edx, r8d
sub eax, edx
sub ecx, eax
mov eax, ecx
or eax, 0x328563a7
xor eax, 0xffffffff
mov edx, 0xa26304a
xor edx, 0x38a353ed
or ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xcd77fa4d
xor edx, 0x328805b2
xor ecx, edx
and eax, ecx
mov ecx, 0xb36a6e47
xor ecx, 0xc336a10c
xor eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x9a3ce5bd
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0xd65f6b88
xor r8d, 0x29a09477
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x9a3ce5bd
or eax, 0x9a3ce5bd
imul eax, edx
add eax, ecx
cmp eax, 0xb48ae8f1
jae 0x140059399
mov edx, dword [0x1401dd9a8]
mov ecx, dword [0x1401dd9ac]
mov eax, 0xc38ae7be
xor eax, 0xe83a9c65
xor ecx, eax
mov eax, edx
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
and ecx, ecx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xe837a328
xor edx, 0xe4d357e6
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0xce4f4ce
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xce4f4ce
or eax, 0xce4f4ce
imul eax, edx
add eax, ecx
mov ecx, 0xba152733
xor ecx, 0x45ead8cc
mov edx, eax
xor edx, ecx
and edx, 0xcca0f92b
mov r8d, 0x31c83112
xor r8d, 0xfd68c839
mov ecx, 0x786226f7
xor ecx, 0x879dd908
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0xf9b45f4d
xor r8d, 0x3514a666
mov edx, eax
and edx, r8d
mov r8d, 0x4d59ee3d
xor r8d, 0x81f91716
or eax, r8d
imul eax, edx
add eax, ecx
mov edx, 0xffffffff
xor edx, 0xc8278083
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0xc8278083
add eax, edx
sub eax, ecx
cmp eax, 0xc523a40e
jbe 0x140059399
mov rsp, rbp
pop rbp
ret
invalid
iretd
invalid