Function at 0x140007180
Capabilities:
Encode data using xor
Generate random numbers using a mersenne twister

Disassembly:
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x1400
call fcn.140015cd0
sub rsp, rax
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rsp + 0x1438], rbx
mov qword [rsp + 0x1440], rbp
mov qword [rsp + 0x1448], rsi
mov rax, qword [0x140026008]
xor rax, rsp
mov qword [rsp + 0x13f0], rax
mov qword [rsp + 0x28], rcx
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov edx, eax
call fcn.140001ab0
mov r13, rax
test rax, rax
je 0x140007633
or r14d, 0xffffffff
mov dword [rsp + 0x13e4], r14d
mov edx, 0x1571
mov ebx, 1
mov r8d, ebx
mov ecx, ebx
nop dword [rax]
nop word [rax + rax]
mov eax, edx
shr eax, 0x1e
xor eax, edx
imul edx, eax, 0x6c078965
add edx, r8d
mov dword [rsp + rcx*4 + 0x64], edx
inc r8d
inc rcx
cmp rcx, 0x270
jl 0x140007210
mov qword [rsp + 0x48], 0xf
xor r15d, r15d
mov qword [rsp + 0x40], r15
mov byte [rsp + 0x30], r15b
xor r8d, r8d
lea rdx, [0x140018b71]
lea rcx, [rsp + 0x30]
call fcn.1400035e0
nop
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov dword [rsp + 0x64], eax
mov rdx, rbx
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, ebx
mov dword [rsp + rdx*4 + 0x64], eax
inc ebx
inc rdx
cmp rdx, 0x270
jl 0x140007271
mov dword [rsp + 0x60], 0x270
mov rax, qword [rsp + 0x48]
cmp rax, 0x10
jb 0x140007300
inc rax
mov rcx, qword [rsp + 0x30]
cmp rax, 0x1000
jb 0x1400072f1
test cl, 0x1f
je 0x1400072c1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rax, qword [rcx - 8]
cmp rax, rcx
jb 0x1400072d1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
sub rcx, rax
cmp rcx, 8
jae 0x1400072e1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
cmp rcx, 0x27
jbe 0x1400072ee
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rax
call fcn.140014a30
nop word [rax + rax]
mov ebp, r15d
lea rcx, [rsp + 0x60]
call fcn.140008010
cmp eax, r14d
ja 0x140007303
or ebp, eax
cmp r14d, 0x96
jb 0x140007300
mov eax, 0x36406c81
mul r14d
mov r8d, edx
shr r8d, 5
imul ecx, r8d, 0x97
mov r9d, r14d
sub r9d, ecx
mov eax, 0x36406c81
mul ebp
shr edx, 5
cmp edx, r8d
jb 0x140007351
cmp r9d, 0x96
jne 0x140007300
mov eax, 0x36406c81
mul ebp
shr edx, 5
imul eax, edx, 0x97
sub ebp, eax
mov esi, r15d
lea rcx, [rsp + 0x60]
call fcn.140008010
cmp eax, r14d
ja 0x140007366
or esi, eax
cmp r14d, 0x1f4
jb 0x140007363
mov eax, 0x20b3dd41
mul r14d
mov r8d, edx
shr r8d, 6
imul ecx, r8d, 0x1f5
mov r9d, r14d
sub r9d, ecx
mov eax, 0x20b3dd41
mul esi
shr edx, 6
cmp edx, r8d
jb 0x1400073b4
cmp r9d, 0x1f4
jne 0x140007363
mov eax, 0x20b3dd41
mul esi
shr edx, 6
imul eax, edx, 0x1f5
sub esi, eax
nop word [rax + rax]
mov edi, r15d
lea rcx, [rsp + 0x60]
call fcn.140008010
cmp eax, r14d
ja 0x1400073d3
or edi, eax
cmp r14d, 0x12c
jb 0x1400073d0
mov eax, 0xd9ba4257
mul r14d
mov r8d, edx
shr r8d, 8
imul ecx, r8d, 0x12d
mov r9d, r14d
sub r9d, ecx
mov eax, 0xd9ba4257
mul edi
shr edx, 8
cmp edx, r8d
jb 0x140007421
cmp r9d, 0x12c
jne 0x1400073d0
mov eax, 0xd9ba4257
mul edi
shr edx, 8
imul eax, edx, 0x12d
sub edi, eax
mov ebx, r15d
lea rcx, [rsp + 0x60]
call fcn.140008010
cmp eax, r14d
ja 0x140007436
or ebx, eax
cmp r14d, 0x3e8
jb 0x140007433
mov eax, 0x5e1d27b
mul r14d
mov r8d, r14d
sub r8d, edx
shr r8d, 1
add r8d, edx
shr r8d, 9
imul eax, r8d, 0x3e9
mov r9d, r14d
sub r9d, eax
mov eax, 0x5e1d27b
mul ebx
mov ecx, ebx
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 9
cmp ecx, r8d
jb 0x140007495
cmp r9d, 0x3e8
jne 0x140007433
mov eax, 0x5e1d27b
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 9
imul eax, eax, 0x3e9
sub ebx, eax
lea r9, [rsp + 0x58]
mov edx, 4
mov r8d, edx
lea rcx, [r13 + 0x30]
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
je 0x140007633
lea r9, [rsp + 0x58]
mov edx, 4
mov r8d, edx
lea rcx, [r13 + 0x20]
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
je 0x140007633
lea ecx, [rdi + rbp]
lea eax, [rbx + rbx*4]
lea edx, [rcx*2 - 0x7b]
lea ecx, [rsi + rsi*2]
add edx, eax
add ecx, edx
mov dword [r13 + 0x30], ecx
mov ecx, 0x1e
call fcn.140005990
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
lea r15, [rax + 2]
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
cmp rax, r15
jge 0x140007633
nop dword [rax]
cmp dword [r13 + 0x30], 0
je 0x140007549
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
cmp rax, r15
jl 0x140007530
jmp 0x140007633
mov ecx, 0x23
call fcn.140005990
mov dword [r13 + 0x20], ebp
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
lea rbp, [rax + 5]
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
cmp rax, rbp
jge 0x140007633
cmp dword [r13 + 0x20], 0
je 0x14000758d
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
cmp rax, rbp
jl 0x140007574
jmp 0x140007633
mov ecx, 0x28
call fcn.140005990
mov dword [r13 + 0x20], esi
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
lea rsi, [rax + 5]
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
cmp rax, rsi
jge 0x140007633
cmp dword [r13 + 0x20], 0
je 0x1400075ca
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
cmp rax, rsi
jl 0x1400075b4
jmp 0x140007633
mov ecx, 0x2d
call fcn.140005990
mov dword [r13 + 0x20], edi
mov ecx, 0x32
call fcn.140005990
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
lea rdi, [rax + 5]
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
cmp rax, rdi
jge 0x140007633
nop dword [rax + rax]
cmp dword [r13 + 0x20], ebx
je 0x140007615
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
cmp rax, rdi
jl 0x140007600
jmp 0x140007633
mov dword [r13 + 0x20], 0
mov rax, qword [rsp + 0x28]
mov qword [rax], r13
mov ecx, 0x37
call fcn.140005990
mov al, 1
jmp 0x140007635
xor al, al
mov rcx, qword [rsp + 0x13f0]
xor rcx, rsp
call fcn.1400149d0
lea r11, [rsp + 0x1400]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret