Function at 0x140126220
Capabilities:
Access peb ldr_data
Encode data using xor
Generate random numbers using a mersenne twister
Hash data using fnv

Disassembly:
push r13
mov eax, 0x1460
call fcn.140314660
sub rsp, rax
mov rax, qword [0x140398130]
xor rax, rsp
mov qword [rsp + 0x13c0], rax
cmp qword [rcx + 0x8f0], 0
mov r13, rcx
je 0x1401267f4
mov qword [rsp + 0x1478], rbx
mov qword [rsp + 0x1480], rbp
mov qword [rsp + 0x1488], rsi
mov qword [rsp + 0x1458], rdi
mov qword [rsp + 0x1450], r12
xor r12b, r12b
mov qword [rsp + 0x1440], r15
xor dil, dil
movaps xmmword [rsp + 0x1410], xmm8
xorps xmm8, xmm8
movaps xmmword [rsp + 0x1400], xmm9
movss xmm9, dword [0x140376da4]
movaps xmmword [rsp + 0x13f0], xmm10
movss xmm10, dword [0x140376e88]
movaps xmmword [rsp + 0x13e0], xmm11
movss xmm11, dword [0x140376e08]
movaps xmmword [rsp + 0x13d0], xmm12
movss xmm12, dword [0x140376e70]
mov qword [rsp + 0x1448], r14
movaps xmmword [rsp + 0x1430], xmm6
movaps xmmword [rsp + 0x1420], xmm7
mov byte [rsp + 0x20], dil
nop word [rax + rax]
mov rax, qword [0x1403d2dc8]
test rax, rax
jne 0x1401263d5
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov ebp, dword [rcx + rbx + 0x88]
add rbp, rbx
cmp rbp, rbx
je 0x1401263aa
mov r11d, dword [rbp + 0x18]
test r11d, r11d
je 0x1401263aa
mov esi, dword [rbp + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r11d
mov r10d, 0xa0cbfb64
lea rcx, [rsi + r11*4]
mov r9d, dword [rcx + rbx]
add r9, rbx
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x1401263a5
movsx ecx, r8b
lea r9, [r9 + 1]
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
movzx r8d, byte [r9 - 1]
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
test r8b, r8b
jne 0x140126370
cmp r10d, 0x38f7b3e6
je 0x1401263b2
test r11d, r11d
jne 0x140126350
mov rax, qword [rax]
jmp 0x140126321
mov ecx, dword [rbp + 0x24]
movzx edi, byte [rsp + 0x20]
add rcx, rbx
movzx edx, word [rcx + r11*2]
mov ecx, dword [rbp + 0x1c]
add rcx, rbx
mov eax, dword [rcx + rdx*4]
add rax, rbx
mov qword [0x1403d2dc8], rax
movzx r15d, dil
call rax
cmp dword [r13 + r15*4 + 0x930], eax
jae 0x14012674f
mov rcx, qword [r13 + r15*8 + 0x8f0]
mov r14d, dword [rcx + 0x20]
inc r14d
cmp byte [r13 + 0x950], 0
je 0x14012640c
cmp r14d, 1
je 0x14012674f
mov rax, qword [0x14039d380]
mov rdx, qword [0x14039d378]
mov rcx, qword [rcx + 0x18]
sub rax, rdx
sar rax, 3
cmp rax, rcx
jbe 0x1401267f8
mov rax, qword [rdx + rcx*8]
cmp r14d, dword [rax + 0x2c]
jb 0x1401265ea
xor r14d, r14d
call fcn.1402bd198
mov dword [rsp + 0x34], eax
lea edx, [r14 + 1]
mov dword [rsp + 0x13b4], 0xffffffff
nop word [rax + rax]
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0x34], eax
inc rdx
cmp rdx, 0x270
jb 0x140126460
mov dword [rsp + 0x30], 0x270
lea r8, [rsp + 0x38]
mov r9d, 0x270
nop dword [rax]
nop word [rax + rax]
mov edx, dword [r8 - 4]
xor edx, dword [r8]
lea r8, [r8 + 4]
btr edx, 0x1f
xor edx, dword [r8 - 8]
mov eax, edx
and al, 1
neg al
sbb ecx, ecx
shr edx, 1
and ecx, 0x9908b0df
xor ecx, edx
xor ecx, dword [r8 + 0x62c]
mov dword [r8 + 0x9b8], ecx
sub r9, 1
jne 0x1401264a0
mov ecx, dword [rsp + 0x30]
xorps xmm7, xmm7
mov edx, dword [rsp + rcx*4 + 0x34]
mov eax, edx
shr eax, 0xb
inc ecx
and eax, dword [rsp + 0x13b4]
xor edx, eax
mov dword [rsp + 0x30], ecx
mov eax, edx
lea rcx, [rsp + 0x30]
and eax, 0xff3a58ad
shl eax, 7
xor edx, eax
mov eax, edx
and eax, 0xffffdf8c
shl eax, 0xf
xor edx, eax
mov eax, edx
shr eax, 0x12
xor eax, edx
cvtsi2ss xmm7, rax
subss xmm7, xmm8
addss xmm7, xmm8
mulss xmm7, xmm9
mulss xmm7, xmm10
addss xmm7, xmm11
call fcn.140268a20
xorps xmm6, xmm6
mov eax, eax
lea rcx, [rsp + 0x30]
cvtsi2ss xmm6, rax
subss xmm6, xmm8
addss xmm6, xmm8
mulss xmm6, xmm9
mulss xmm6, xmm10
addss xmm6, xmm11
call fcn.140268a20
xorps xmm1, xmm1
mov eax, eax
movaps xmm0, xmm7
lea rcx, [rsp + 0x30]
mulss xmm0, xmm12
cvtsi2ss xmm1, rax
subss xmm1, xmm8
addss xmm1, xmm8
mulss xmm1, xmm9
addss xmm1, xmm8
subss xmm1, xmm0
call fcn.140268a20
mov rcx, qword [r13 + r15*8 + 0x8f0]
xorps xmm2, xmm2
mov eax, eax
movaps xmm0, xmm6
mulss xmm0, xmm12
cvtsi2ss xmm2, rax
subss xmm2, xmm8
addss xmm2, xmm8
mulss xmm2, xmm9
addss xmm2, xmm8
subss xmm2, xmm0
call fcn.1400b99a0
mov rcx, qword [r13 + r15*8 + 0x8f0]
movaps xmm2, xmm6
movaps xmm1, xmm7
call fcn.1400b98e0
mov rcx, qword [r13 + r15*8 + 0x8f0]
mov edx, r14d
call fcn.1400b9830
mov rdx, qword [0x1403d2dd0]
test rdx, rdx
jne 0x1401266d5
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax + rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov ebp, dword [rcx + rbx + 0x88]
add rbp, rbx
cmp rbp, rbx
je 0x1401266aa
mov r11d, dword [rbp + 0x18]
test r11d, r11d
je 0x1401266aa
mov esi, dword [rbp + 0x20]
dec r11d
mov r10d, 0x5ed5ce17
lea rcx, [rsi + r11*4]
mov r9d, dword [rcx + rbx]
add r9, rbx
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x1401266a5
nop dword [rax]
nop word [rax + rax]
movsx ecx, r8b
lea r9, [r9 + 1]
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
movzx r8d, byte [r9 - 1]
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
test r8b, r8b
jne 0x140126670
cmp r10d, 0x7d26d3c3
je 0x1401266b2
test r11d, r11d
jne 0x140126643
mov rax, qword [rax]
jmp 0x140126620
mov ecx, dword [rbp + 0x24]
movzx edi, byte [rsp + 0x20]
add rcx, rbx
movzx edx, word [rcx + r11*2]
mov ecx, dword [rbp + 0x1c]
add rcx, rbx
mov edx, dword [rcx + rdx*4]
add rdx, rbx
mov qword [0x1403d2dd0], rdx
mov rcx, qword [r13 + r15*8 + 0x8f0]
mov rax, qword [0x14039d380]
mov r9, qword [0x14039d378]
sub rax, r9
mov r8, qword [rcx + 0x18]
sar rax, 3
cmp rax, r8
jbe 0x1401267f8
mov rax, qword [r9 + r8*8]
mov ecx, dword [rcx + 0x20]
add rcx, rcx
mov rax, qword [rax + 0x30]
mov ebx, dword [rax + rcx*8]
call rdx
add eax, ebx
mov dword [r13 + r15*4 + 0x930], eax
test r14d, r14d
jne 0x14012674c
call fcn.14031a6a4
mov r8d, eax
mov eax, 0x10624dd3
imul r8d
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0x3e8
sub r8d, ecx
add dword [r13 + r15*4 + 0x930], r8d
mov r12b, 1
inc dil
mov byte [rsp + 0x20], dil
cmp dil, 8
jne 0x140126300
movaps xmm6, xmmword [rsp + 0x1430]
movzx eax, r12b
mov r12, qword [rsp + 0x1450]
movaps xmm7, xmmword [rsp + 0x1420]
mov r14, qword [rsp + 0x1448]
movaps xmm8, xmmword [rsp + 0x1410]
movaps xmm9, xmmword [rsp + 0x1400]
movaps xmm10, xmmword [rsp + 0x13f0]
mov r15, qword [rsp + 0x1440]
movaps xmm11, xmmword [rsp + 0x13e0]
mov rdi, qword [rsp + 0x1458]
mov rsi, qword [rsp + 0x1488]
mov rbp, qword [rsp + 0x1480]
mov rbx, qword [rsp + 0x1478]
movaps xmm12, xmmword [rsp + 0x13d0]
mov rcx, qword [rsp + 0x13c0]
xor rcx, rsp
call fcn.1403139c0
add rsp, 0x1460
pop r13
ret
xor al, al
jmp 0x1401267da
call fcn.140077f00
int3