Function at 0x140078440
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r14
push rsi
push rdi
push rbx
mov rbp, rsp
mov eax, dword [0x141dcc198]
xor eax, dword [0x141dcc19c]
add eax, 0xc42ceff5
and eax, 0x89f81092
cmp eax, 0x5ad5e4d7
jae 0x140078480
mov eax, 0x10
call fcn.1400ef330
sub rsp, rax
mov eax, 0x10
call fcn.1400ef330
sub rsp, rax
mov eax, dword [0x141dcc1a0]
xor edx, edx
div dword [0x141dcc1a4]
mov ecx, eax
or ecx, 0x7d5ec64c
and ecx, 0x7d5ec7ee
mov eax, 0x10
call fcn.1400ef330
sub rsp, rax
mov rsi, rsp
mov eax, 0x10
call fcn.1400ef330
sub rsp, rax
mov rdi, rsp
cmp ecx, 0xca1cc113
je 0x140078480
mov eax, dword [0x141dcc1a8]
or eax, dword [0x141dcc1ac]
imul eax, eax, 0xbf69a16a
add eax, 0xd0c0d2f5
cmp eax, 0x38772a93
jae 0x1400784f0
mov eax, 0x10
call fcn.1400ef330
sub rsp, rax
nop
mov ecx, dword [0x141dcc1b0]
add ecx, dword [0x141dcc1b4]
xor ecx, 0x40c60060
and ecx, 0xe0f6506b
add ecx, 0x323f2e6
mov eax, 0x10
call fcn.1400ef330
sub rsp, rax
mov rbx, rsp
cmp ecx, 0x5eb5c46e
jb 0x1400784f0
mov qword [rbx], 0
mov eax, dword [0x141ddb1b8]
cmp eax, 3
je 0x140078648
mov eax, dword [0x141dcc1b8]
and eax, dword [0x141dcc1bc]
add eax, 0x8a387c77
xor eax, 0x3a15f511
cmp eax, 0xa22c314c
ja 0x14007857e
mov eax, dword [0x141dcc1c0]
sub eax, dword [0x141dcc1c4]
add eax, 0x69271bf1
and eax, 0x478586e5
xor eax, 0x41fb475f
mov qword [rdi], rbx
cmp eax, 0x98795095
jbe 0x140078583
mov qword [rdi], rbx
jmp 0x140078559
mov eax, dword [0x141dcc1c8]
or eax, dword [0x141dcc1cc]
imul eax, eax, 0x33f886e6
add eax, 0xf698e183
cmp eax, 0xee10e4d3
ja 0x1400785ee
mov eax, dword [0x141dcc1d0]
and eax, dword [0x141dcc1d4]
imul r14d, eax, 0x4fc7a6f0
or r14d, 0x65845eb2
and r14d, 0x77965ef2
mov qword [rsi], rdi
sub rsp, 0x20
lea rcx, [0x141ddb1b8]
lea r9, [0x141db9088]
xor edx, edx
mov r8, rsi
call fcn.1400fb0a0
add rsp, 0x20
cmp r14d, 0x77960a43
jbe 0x140078613
mov qword [rsi], rdi
sub rsp, 0x20
lea rcx, [0x141ddb1b8]
lea r9, [0x141db9088]
xor edx, edx
mov r8, rsi
call fcn.1400fb0a0
add rsp, 0x20
jmp 0x1400785a1
mov ecx, 0xa3c6c9b7
nop dword [rax + rax]
mov eax, dword [0x141dcc1d8]
xor edx, edx
div dword [0x141dcc1dc]
imul rax, rcx
shr rax, 0x3f
imul eax, eax, 0x882ebe82
add eax, 0x13df879e
cmp eax, 0x3b84a06f
ja 0x140078620
mov rax, qword [rbx]
mov rcx, qword [rbx + 8]
cmp rax, 3
jne 0x140078680
nop word cs:[rax + rax]
mov eax, dword [0x141dcc1e0]
xor eax, dword [0x141dcc1e4]
or eax, 0x75cb0d77
cmp eax, 0xc14cdd88
je 0x140078660
mov rsi, rcx
jmp 0x140078928
mov edx, dword [0x141dcc1e8]
and edx, dword [0x141dcc1ec]
imul r8, rdx, 0x7f3f413
shr r8, 0x20
sub edx, r8d
shr edx, 1
add edx, r8d
shr edx, 0x1f
imul edx, edx, 0x957db58a
cmp edx, 0xd5075f38
je 0x140078680
mov rdx, qword [0x141ddb1b0]
xor r8d, r8d
nop word [rax + rax]
test r8b, r8b
jne 0x1400786c0
test rdx, rdx
je 0x140078906
nop
mov edx, dword [0x141dcc208]
mov r8d, dword [0x141dcc20c]
add edx, r8d
add edx, 0x7769314d
or edx, 0xf03027b9
imul edx, edx, 0x782fee21
cmp edx, 0x862435b5
je 0x1400786d0
lea rsi, [0x141ddb1b0]
cmp rax, 2
jb 0x140078928
nop dword [rax + rax]
mov eax, dword [0x141dcc210]
and eax, dword [0x141dcc214]
and eax, 0x7b285b9e
imul eax, eax, 0x4dba7a5f
xor eax, 0x5680a008
cmp eax, 0x16e2b184
jb 0x140078710
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x140078740
mov eax, ecx
and eax, 3
nop dword [rax]
mov edx, dword [0x141dcc218]
and edx, dword [0x141dcc21c]
imul edx, edx, 0xeb873e03
cmp edx, 0xf63bcea7
je 0x140078750
lea rdx, [rax - 2]
cmp rdx, 2
jb 0x140078928
test rax, rax
je 0x140078928
cmp eax, 1
jne 0x1400788de
lea rdi, [rcx - 1]
nop
mov eax, dword [0x141dcc228]
xor edx, edx
div dword [0x141dcc22c]
or eax, 0xec198bf5
imul eax, eax, 0x4e913bfb
add eax, 0x919eaf49
cmp eax, 0x89778ea0
ja 0x140078790
nop word cs:[rax + rax]
mov eax, dword [0x141dcc230]
and eax, dword [0x141dcc234]
add eax, 0x9a717d1d
or eax, 0x9d23bdae
cmp eax, 0xbaeca3cc
je 0x1400787c0
mov rbx, qword [rdi]
mov eax, dword [0x141dcc238]
xor edx, edx
div dword [0x141dcc23c]
add eax, 0xcb6aa9eb
xor eax, 0x3e1d3744
cmp eax, 0xa3573112
jb 0x1400787e0
mov r14, qword [rcx + 7]
mov rax, qword [r14]
test rax, rax
je 0x140078818
sub rsp, 0x20
mov rcx, rbx
call rax
add rsp, 0x20
cmp qword [r14 + 8], 0
je 0x1400788b3
mov rax, qword [r14 + 0x10]
nop word [rax + rax]
mov ecx, dword [0x141dcc240]
xor ecx, dword [0x141dcc244]
add ecx, 0x2c077a12
cmp ecx, 0x6532cc13
ja 0x140078830
cmp rax, 0x11
jb 0x140078899
mov eax, dword [0x141dcc248]
mov ecx, dword [0x141dcc24c]
add eax, ecx
add eax, 0x1660ce92
and eax, 0x8edf5245
cmp eax, 0x40b0bfa1
ja 0x140078850
nop
mov eax, dword [0x141dcc250]
mov ecx, dword [0x141dcc254]
add eax, ecx
add eax, 0x7a0448c9
or eax, 0x1b6fccfc
imul eax, eax, 0xf3ed4e75
cmp eax, 0x75a8773f
ja 0x140078870
mov rbx, qword [rbx - 8]
mov rcx, qword [0x141ddb260]
sub rsp, 0x20
xor edx, edx
mov r8, rbx
call qword [sym.imp.KERNEL32.dll_HeapFree]
add rsp, 0x20
mov eax, dword [0x141dcc258]
add eax, dword [0x141dcc25c]
and eax, 0x393c3a37
add eax, 0x49072572
and eax, 0x23071243
cmp eax, 0x1500e878
jae 0x140078994
jmp 0x1400789b4
mov eax, dword [0x141dcc220]
sub eax, dword [0x141dcc224]
imul eax, eax, 0xcb9a0957
xor eax, 0xffd62bd
add eax, 0x4d1d18e4
cmp eax, 0x261dad50
jb 0x1400788de
jmp 0x140078992
mov eax, dword [0x141dcc1f0]
xor edx, edx
div dword [0x141dcc1f4]
xor eax, 0x1becb0d4
imul eax, eax, 0xdca3de75
cmp eax, 0x320b96b6
jne 0x140078941
jmp 0x140078961
xor eax, eax
nop word [rax + rax]
test al, al
jne 0x140078930
mov rax, rsi
mov rsp, rbp
pop rbx
pop rdi
pop rsi
pop r14
pop rbp
ret
mov eax, dword [0x141dcc1f8]
xor eax, dword [0x141dcc1fc]
imul eax, eax, 0x57ee4a1
add eax, 0xb1a000a7
ud2
ud2
ud2
mov eax, dword [0x141dcc260]
imul eax, dword [0x141dcc264]
add eax, 0x8c3db475
mov rcx, qword [0x141ddb260]
cmp eax, 0x3faf2548
jae 0x1400789bd
mov rax, qword [0x141ddb260]
jmp 0x140078994
sub rsp, 0x20
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
add rsp, 0x20
jmp 0x140078928