Function at 0x14008d9e0
Capabilities:
Generate random numbers via rtlgenrandom

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r14
sub rsp, 0x50
mov rax, qword [0x140136348]
xor rax, rsp
mov qword [rsp + 0x40], rax
mov rax, qword [0x1401370c0]
mov rsi, rdx
mov rdi, rcx
test rax, rax
jne 0x14008da4e
xor r8d, r8d
lea rcx, str.advapi32.dll
xor edx, edx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExA]
test rax, rax
je 0x14008e00d
lea rdx, [0x140114478]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1401370c0], rax
test rax, rax
je 0x14008e00d
mov edx, 0x20
lea rcx, [rsp + 0x20]
call rax
test al, al
je 0x14008e00d
mov rax, qword [rsp + 0x20]
cmp rax, 2
jae 0x14008da76
add rax, 2
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x28]
cmp rax, 0x40
jae 0x14008da8a
add rax, 0x40
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x200
jae 0x14008daa2
add rax, 0x200
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x38]
cmp rax, 0x20000
jae 0x14008daba
add rax, 0x20000
mov qword [rsp + 0x38], rax
lea rcx, [rsp + 0x20]
call fcn.14007f470
xor ebp, ebp
lea r14, [0x140070af0]
cmp rdi, 0x4d50
jne 0x14008dbca
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, 0x20000
lea r9d, [rbp + 4]
xor ecx, ecx
mov r8d, 0x3000
mov edi, eax
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov ecx, edi
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_SetLastError]
test rbx, rbx
mov rdi, 0xffffffffffffffff
cmovne rdi, rbx
cmp rdi, 0xffffffffffffffff
je 0x14008e00d
mov rbx, rdi
and ebx, 7
jne 0x14008db28
mov ebx, ebp
jmp 0x14008db2e
neg rbx
and ebx, 7
lea rsi, [rdi + 0x10]
xor edx, edx
add rsi, rbx
mov r8d, 0x370
mov rcx, rsi
call fcn.1400cccc0
mov qword [rbx + rdi + 8], 0x373
mov rcx, rsi
mov qword [rsi + 0x348], rdi
mov qword [rsi + 0x350], 0x20000
mov qword [rsi + 0x30], 0xff
call fcn.14006def0
mov rcx, qword [rsi - 8]
lea rdx, [rsi - 0x10]
and rcx, 0xfffffffffffffffc
add rdx, rcx
sub rdi, rdx
mov rax, rdx
add rdi, 0x1ffc0
and eax, 7
jne 0x14008db96
mov rax, rbp
jmp 0x14008db9c
neg rax
and eax, 7
sub rdi, rax
lea rcx, [rax + rdx]
mov qword [rsi + 0x10], rdi
mov rax, rdi
mov qword [rsi + 0x20], rcx
or rax, 1
mov qword [rcx + 8], rax
mov qword [rcx + rdi + 8], 0x40
mov rdi, r14
mov qword [rsi + 0x28], 0x200000
mov r9d, 0x1860
xor r8d, r8d
xor edx, edx
mov rcx, rsi
call rdi
mov rbx, rax
lea rcx, [rax - 1]
movabs rax, 0x7ffffffffffe
cmp rcx, rax
ja 0x14008e00d
xor edx, edx
mov r8d, 0x1860
mov rcx, rbx
call fcn.1400cccc0
mov word [rbx + 8], 0x661
lea rcx, [rbx + 0x60]
mov qword [rbx + 0x10], rcx
lea rax, [rcx + 0x188]
mov byte [rbx + 0xa], 1
mov byte [rcx + 0x20], 0x21
mov word [rcx + 0x80], 0x401
mov qword [rcx], rdi
mov qword [rcx + 8], rsi
movups xmm0, xmmword [rsp + 0x20]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rsp + 0x30]
movups xmmword [rax + 0x10], xmm1
cmp rdi, r14
jne 0x14008dc4e
mov qword [rsi + 0x360], rax
lea rax, [rcx + 0x118]
mov qword [rcx + 0xc0], rbx
mov qword [rcx + 0x128], rax
lea r11, [rbx + 0xfe0]
mov qword [rcx + 0x130], rax
lea r8, [0x1401106d0]
mov dword [rcx + 0xa0], 0xffffffff
lea r9, [r11 + 0x4d0]
mov rax, qword [rbx + 0x10]
lea rdi, section..text
mov rdx, r11
mov r10d, 0x59
mov qword [rax + 0x110], 0xffffffffffffffff
lea rax, [rcx + 0x28]
mov qword [rax], rbx
mov qword [rcx + 0x30], rax
mov qword [rcx + 0xf8], 0xffffffffffffffff
mov qword [rcx + 0x100], 0xffffffffffffffff
mov qword [rcx + 0xe0], rbp
mov qword [rcx + 0xd8], rbp
mov qword [rcx + 0xd0], rbp
mov qword [rcx + 0xc8], rbp
mov byte [rcx + 0x21], bpl
mov qword [rcx + 0x10], 0x1860
mov dword [rcx + 0x6c], 0xc8
mov dword [rcx + 0x68], 0xc8
nop
movzx ecx, word [r8]
lea r9, [r9 + 8]
add rcx, rdi
lea r8, [r8 + 2]
mov qword [rdx], rcx
lea rdx, [rdx + 8]
mov qword [r9 - 8], rcx
sub r10, 1
jne 0x14008dd00
lea rcx, [r11 + 0x2c8]
lea rdx, [0x140110782]
lea r8d, [r10 + 0x41]
movzx eax, word [rdx]
lea rcx, [rcx + 8]
add rax, rdi
lea rdx, [rdx + 2]
mov qword [rcx - 8], rax
sub r8, 1
jne 0x14008dd32
mov rax, qword [r11 + 0x280]
lea r9, [0x14005da00]
mov qword [r11 + 0x278], rax
xor edx, edx
mov rax, qword [r11 + 0x298]
mov rcx, rbx
mov qword [r11 + 0x290], rax
lea rax, [0x14000253e]
mov qword [r11 + 0x230], rax
mov rax, qword [r11 + 0x2b0]
mov qword [r11 + 0x2a8], rax
mov rax, qword [r11 + 0x2d0]
mov qword [r11 + 0x2c8], rax
mov rax, qword [r11 + 0x2e8]
mov qword [r11 + 0x2e0], rax
mov dword [rbx + 0x1c8], 0x145f
mov dword [rbx + 0x1cc], 0x145f
mov dword [rbx + 0x1778], 0x61
mov dword [rbx + 0x177c], 0x62
mov dword [rbx + 0x1780], 0x63
mov dword [rbx + 0x1784], 0x64
mov dword [rbx + 0x1788], 0x65
mov dword [rbx + 0x178c], 0x66
mov dword [rbx + 0x1790], 0x67
mov dword [rbx + 0x1794], 0x68
mov dword [rbx + 0x1798], 0x69
mov dword [rbx + 0x179c], 0x6a
mov dword [rbx + 0x17a0], 0x6b
mov dword [rbx + 0x17a4], 0x6c
mov dword [rbx + 0x17a8], 0x6d
mov dword [rbx + 0x17ac], 0x6e
mov dword [rbx + 0x17b0], 0x6f
mov dword [rbx + 0x17b4], 0x70
mov dword [rbx + 0x17b8], 0x71
mov dword [rbx + 0x17bc], 0x72
mov dword [rbx + 0x17c0], 0x73
mov dword [rbx + 0x17c4], 0x74
mov dword [rbx + 0x17c8], 0x75
mov dword [rbx + 0x17cc], 0x76
mov dword [rbx + 0x17d0], 0x77
mov dword [rbx + 0x17d4], 0x78
mov dword [rbx + 0x17d8], 0x79
mov dword [rbx + 0x17dc], 0x7a
mov dword [rbx + 0x17e0], 0x7b
mov dword [rbx + 0x17e4], 0x7c
mov dword [rbx + 0x17e8], 0x7d
mov dword [rbx + 0x17ec], 0x7e
mov dword [rbx + 0x17f0], 0x7f
mov dword [rbx + 0x17f4], 0x80
mov dword [rbx + 0x17f8], 0x81
mov dword [rbx + 0x17fc], 0x82
mov dword [rbx + 0x1800], 0x83
mov dword [rbx + 0x1804], 0x84
mov dword [rbx + 0x1808], 0x85
mov dword [rbx + 0x180c], 0x86
mov dword [rbx + 0x1810], 0x87
mov dword [rbx + 0x1814], 0x88
mov dword [rbx + 0x1818], 0x89
mov dword [rbx + 0x181c], 0x8a
mov dword [rbx + 0x1820], 0x8b
mov dword [rbx + 0x1824], 0x8c
mov dword [rbx + 0x1828], 0x8d
mov dword [rbx + 0x182c], 0x8e
mov dword [rbx + 0x1830], 0x8f
mov dword [rbx + 0x1834], 0x90
mov dword [rbx + 0x1838], 0x91
mov dword [rbx + 0x183c], 0x92
mov dword [rbx + 0x1840], 0x93
mov dword [rbx + 0x1844], 0x94
mov dword [rbx + 0x1848], 0x95
mov dword [rbx + 0x184c], 0x96
mov dword [rbx + 0x1850], 0x97
mov dword [rbx + 0x1854], 0x98
mov dword [rbx + 0x1858], 0x99
mov byte [rbx + 0xb], 6
call fcn.14000304c
test eax, eax
je 0x14008e031
mov rcx, rbx
call fcn.1400573b0
xor eax, eax
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.1400cb6d0
lea r11, [rsp + 0x50]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret
mov byte [rbx + 0xb], bpl
mov rax, rbx
jmp 0x14008e00f