Function at 0x1400f5480
Capabilities:
Encode data using xor
Generate random numbers via rtlgenrandom
Generate random numbers via winapi

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x28
lea rbp, [rsp + 0x20]
mov eax, dword [0x141dcaac8]
xor eax, dword [0x141dcaacc]
imul eax, eax, 0x60b1170
or eax, 0xdc254296
imul rax, rax, 0x3eb362a9
shr rax, 0x3c
cmp eax, 0x5b5b876f
jbe 0x1400f54f0
xor eax, eax
call fcn.1400ef330
sub rsp, rax
mov eax, 0x30
call fcn.1400ef330
sub rsp, rax
mov eax, 0x10
call fcn.1400ef330
sub rsp, rax
nop word cs:[rax + rax]
mov ecx, dword [0x141dcaad0]
and ecx, dword [0x141dcaad4]
add ecx, 0xf8907ac5
or ecx, 0xe38120c3
xor ecx, 0x88ea5aad
xor eax, eax
call fcn.1400ef330
sub rsp, rax
mov r8, rsp
mov eax, 0x30
call fcn.1400ef330
sub rsp, rax
mov rdx, rsp
mov eax, 0x10
call fcn.1400ef330
sub rsp, rax
mov rax, rsp
cmp ecx, 0xf05c31d4
ja 0x1400f54f0
mov qword [rbp - 0x10], r8
mov qword [rbp - 8], rax
mov qword [rbp - 0x18], rdx
mov eax, dword [0x141dcaad8]
and eax, dword [0x141dcaadc]
xor eax, 0x201000
and eax, 0x10a09040
cmp eax, 0x4cb770d
ja 0x1400f55e2
mov ecx, dword [str.e__]
sub ecx, dword [0x141dcaae4]
or ecx, 0x48000000
xor ecx, 0xa4000080
and ecx, 0xec0800a0
mov eax, 0x40
call fcn.1400ef330
sub rsp, rax
mov rdi, rsp
mov eax, 0x20
call fcn.1400ef330
sub rsp, rax
mov rbx, rsp
mov eax, 0x20
call fcn.1400ef330
sub rsp, rax
mov r14, rsp
mov eax, 0x30
call fcn.1400ef330
sub rsp, rax
mov rsi, rsp
mov eax, 0x40
call fcn.1400ef330
sub rsp, rax
mov r13, rsp
cmp ecx, 0xa0337d1c
jbe 0x1400f5628
mov eax, 0x40
call fcn.1400ef330
sub rsp, rax
mov eax, 0x20
call fcn.1400ef330
sub rsp, rax
mov eax, 0x20
call fcn.1400ef330
sub rsp, rax
mov eax, 0x30
call fcn.1400ef330
sub rsp, rax
mov eax, 0x40
call fcn.1400ef330
sub rsp, rax
jmp 0x1400f556c
mov eax, 0x40
call fcn.1400ef330
sub rsp, rax
mov r15, rsp
xorps xmm0, xmm0
movups xmmword [r14 + 0x10], xmm0
movups xmmword [r14], xmm0
sub rsp, 0x20
xor ecx, ecx
mov rdx, r14
mov r8d, 0x20
mov r9d, 2
call qword [sym.imp.bcrypt.dll_BCryptGenRandom]
add rsp, 0x20
cmp eax, 0xc0000000
jb 0x1400f5710
mov dword [rbp + 4], eax
xor eax, eax
test al, al
jne 0x1400f56b9
mov eax, dword [0x141dcaae8]
mov ecx, dword [0x141dcaaec]
add eax, ecx
add eax, 0x2a03ab2d
and eax, 0xbe36f6b4
imul r12, rax, 0x6e6fbe27
shr r12, 0x3d
sub rsp, 0x20
mov rcx, r14
mov edx, 0x20
call qword [sym.imp.ADVAPI32.dll_SystemFunction036]
add rsp, 0x20
cmp r12d, 0x1e827c1d
jne 0x1400f56d1
sub rsp, 0x20
mov rcx, r14
mov edx, 0x20
call qword [sym.imp.ADVAPI32.dll_SystemFunction036]
add rsp, 0x20
jmp 0x1400f5677
test al, al
mov ecx, dword [rbp + 4]
jne 0x1400f5710
add ecx, 0x80000000
nop
mov eax, dword [0x141dcaaf0]
xor edx, edx
div dword [0x141dcaaf4]
or eax, 0x7b6197d2
add eax, 0x24ad6f1
or eax, 0xbeb66810
cmp eax, 0x101a1ddc
je 0x1400f56e0
test ecx, ecx
jne 0x1400f575d
nop dword [rax + rax]
mov eax, dword [0x141dcab18]
xor edx, edx
div dword [0x141dcab1c]
and eax, 0xaecef238
imul eax, eax, 0x7a5879a0
cmp eax, 0xd2fefaae
je 0x1400f5710
mov eax, dword [0x141dcab20]
imul eax, dword [0x141dcab24]
imul eax, eax, 0xb28fb82f
add eax, 0x3d202934
or eax, 0xe7c6dbc4
cmp eax, 0x8215f700
jae 0x1400f5866
jmp 0x1400f589b
mov edi, ecx
mov eax, dword [0x141dcaaf8]
and eax, dword [0x141dcaafc]
and eax, 0x4385f60
add eax, 0xe6cf703e
and eax, 0x7eddba2
cmp eax, 0x95e4aeeb
jne 0x1400f579c
movzx eax, byte [0x141ddb278]
sub rsp, 0x20
mov edx, 4
xor ecx, ecx
call fcn.1400c0180
add rsp, 0x20
mov esi, dword [0x141dcab00]
sub esi, dword [0x141dcab04]
xor esi, 0x400
or esi, 0xfb932bbb
and esi, 0xfbdb3fbf
movzx eax, byte [0x141ddb278]
sub rsp, 0x20
mov edx, 4
xor ecx, ecx
call fcn.1400c0180
add rsp, 0x20
cmp esi, 0xede67636
jb 0x1400f579c
xor ecx, ecx
test cl, cl
jne 0x1400f57df
test rax, rax
je 0x1400f5818
mov ecx, dword [0x141dcab98]
imul ecx, dword [0x141dcab9c]
or ecx, 0x882ec700
and ecx, 0xca2ec7c1
imul ecx, ecx, 0x34ff33f1
cmp ecx, 0x786f3aaa
jne 0x1400f5c45
jmp 0x1400f5c73
mov eax, dword [0x141dcab08]
xor eax, dword [0x141dcab0c]
and eax, 0x1f9a030e
imul eax, eax, 0x98b63100
and eax, 0x201f8000
cmp eax, 0xb8330424
je 0x1400f5860
mov eax, dword [0x141dcab10]
or eax, dword [0x141dcab14]
add eax, 0xe254d7eb
or eax, 0x552f2965
imul eax, eax, 0x89d05705
ud2
ud2
ud2
mov eax, dword [0x141dcab28]
xor edx, edx
div dword [0x141dcab2c]
and eax, 0x6d70e342
imul eax, eax, 0x8fa748d9
or eax, 0x86075e9f
movups xmm0, xmmword [r14]
movups xmm1, xmmword [r14 + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmmword [rbx], xmm0
cmp eax, 0xb01b0390
jbe 0x1400f58ad
movups xmm0, xmmword [r14]
movups xmm1, xmmword [r14 + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmmword [rbx], xmm0
jmp 0x1400f5866
mov rax, qword [0x141ddb268]
test rax, rax
je 0x1400f5b80
and eax, 0x4000
nop word cs:[rax + rax]
mov ecx, dword [0x141dcab38]
or ecx, dword [0x141dcab3c]
imul ecx, ecx, 0xa3e5c505
or ecx, 0x1409d428
and ecx, 0x1c2ffeea
cmp ecx, 0x30972fc4
ja 0x1400f58d0
xor ecx, ecx
nop dword [rax + rax]
mov edx, dword [0x141dcab40]
and edx, dword [0x141dcab44]
add edx, 0x308d4321
or edx, 0xf8c50aa9
cmp edx, 0x57bc25b5
je 0x1400f5900
lea r14, [r15 + 0x10]
or rax, rcx
je 0x1400f598d
mov eax, dword [0x141dcab58]
and eax, dword [0x141dcab5c]
add eax, 0x6247bf9d
xor eax, 0x598a14e0
add eax, 0xae6d5d1b
cmp eax, 0xa4c1b751
jae 0x1400f5965
sub rsp, 0x20
lea r8, [0x141db9060]
mov rcx, r14
mov rdx, rbx
call fcn.140070a70
add rsp, 0x20
lea r15, [0x141db9060]
xor r12d, r12d
nop
sub rsp, 0x20
mov rcx, r14
mov rdx, rbx
mov r8, r15
call fcn.140070a70
add rsp, 0x20
test r12b, r12b
jne 0x1400f5970
jmp 0x1400f5a00
movaps xmm0, xmmword [rbx]
movaps xmm1, xmmword [rbx + 0x10]
movaps xmmword [r15 + 0x10], xmm0
movaps xmmword [r15 + 0x20], xmm1
mov eax, dword [0x141dcab48]
sub eax, dword [0x141dcab4c]
add r15, 0x30
xor eax, 0x2ad8bf28
add eax, 0xa884f04
cmp eax, 0x4cde881e
jbe 0x1400f59c6
xorps xmm0, xmm0
movaps xmmword [r15], xmm0
xorps xmm0, xmm0
nop dword [rax]
mov eax, dword [0x141dcab50]
and eax, dword [0x141dcab54]
imul eax, eax, 0xb1615338
add eax, 0xc945d8c0
movaps xmmword [r15], xmm0
cmp eax, 0x9777febd
jae 0x1400f59d0
nop word cs:[rax + rax]
mov eax, dword [0x141dcab60]
and eax, dword [0x141dcab64]
or eax, 0x16771076
cmp eax, 0x7093a405
je 0x1400f5a00
nop dword [rax + rax]
mov eax, dword [0x141dcab68]
imul eax, dword [0x141dcab6c]
and eax, 0x4598682
add eax, 0x7fb131f9
cmp eax, 0xa1d120d6
ja 0x1400f5a20
mov eax, dword [0x141dcab70]
sub eax, dword [0x141dcab74]
add eax, 0x2d7a760
xor eax, 0x3e9832ca
cmp eax, 0xcfb25f38
jbe 0x1400f5ac0
movaps xmm0, xmmword [r14]
movaps xmm1, xmmword [r14 + 0x10]
movaps xmm2, xmmword [r14 + 0x20]
movaps xmmword [rsi + 0x20], xmm2
movaps xmmword [rsi + 0x10], xmm1
movaps xmmword [rsi], xmm0
movups xmmword [rdi + 0x28], xmm2
movups xmmword [rdi + 0x18], xmm1
movups xmmword [rdi + 8], xmm0
mov rax, qword [rdi + 0x30]
mov qword [r13 + 0x30], rax
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [r13 + 0x20], xmm0
movups xmm0, xmmword [rdi + 0x10]
movups xmmword [r13 + 0x10], xmm0
movups xmm0, xmmword [rdi]
movups xmmword [r13], xmm0
movzx eax, byte [0x141ddb278]
sub rsp, 0x20
mov edx, 0x170
xor ecx, ecx
call fcn.1400c0180
add rsp, 0x20
nop dword [rax]
mov eax, dword [0x141dcab78]
imul eax, dword [0x141dcab7c]
or eax, 0x1018800
and eax, 0x656b9b0a
imul rbx, rax, 0x716ca4fb
shr rbx, 0x3d
movaps xmm0, xmmword [r14]
movaps xmm1, xmmword [r14 + 0x10]
movaps xmm2, xmmword [r14 + 0x20]
movaps xmmword [rsi + 0x20], xmm2
movaps xmmword [rsi + 0x10], xmm1
movaps xmmword [rsi], xmm0
movups xmmword [rdi + 0x28], xmm2
movups xmmword [rdi + 0x18], xmm1
movups xmmword [rdi + 8], xmm0
mov rax, qword [rdi + 0x30]
mov qword [r13 + 0x30], rax
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [r13 + 0x20], xmm0
movups xmm0, xmmword [rdi + 0x10]
movups xmmword [r13 + 0x10], xmm0
movups xmm0, xmmword [rdi]
movups xmmword [r13], xmm0
movzx eax, byte [0x141ddb278]
sub rsp, 0x20
mov edx, 0x170
xor ecx, ecx
call fcn.1400c0180
add rsp, 0x20
cmp ebx, 0x8cb837ba
ja 0x1400f5ac0
mov rcx, rax
test rax, rax
je 0x1400f5bc5
mov eax, dword [0x141dcabc0]
xor edx, edx
div dword [0x141dcabc4]
or eax, 0xc371c00d
add eax, 0xa7f0dbe5
cmp eax, 0x4ee698a
jae 0x1400f5ce7
jmp 0x1400f5db0
sub rsp, 0x20
call fcn.1400fc980
add rsp, 0x20
and eax, 0x4000
xor ecx, ecx
nop word cs:[rax + rax]
mov edx, dword [0x141dcab30]
xor edx, dword [0x141dcab34]
add edx, 0xae27e4c9
and edx, 0xe0c98f03
cmp edx, 0xa9163811
ja 0x1400f5ba0
jmp 0x1400f5920
mov eax, dword [0x141dcab80]
or eax, dword [0x141dcab84]
imul eax, eax, 0x7d1bd187
xor eax, 0x7859682d
cmp eax, 0x6280bcc6
jae 0x1400f5bf0
ud2
mov eax, dword [0x141dcab88]
add eax, dword [0x141dcab8c]
imul rax, rax, 0x2e077
shr rax, 0x31
add eax, 0xdd4dce51
ud2
mov ecx, dword [0x141dcaba0]
imul ecx, dword [0x141dcaba4]
add ecx, 0x76dd251
imul rcx, rcx, 0x34d38d6f
shr rcx, 0x3c
or ecx, 0x75c3bb1c
mov dword [rax], edi
cmp ecx, 0x4f7dd908
jae 0x1400f5c77
mov dword [rax], edi
jmp 0x1400f5c45
mov eax, dword [0x141dcaba8]
or eax, dword [0x141dcabac]
or eax, 0x158d237d
imul eax, eax, 0xa940557d
and eax, 0xed0c1502
cmp eax, 0x866d21f2
ja 0x1400f5cb9
mov eax, dword [0x141dcabb0]
xor eax, dword [0x141dcabb4]
xor eax, 0x9857eaec
add eax, 0xb4956d11
ud2
ud2
mov eax, dword [0x141dcabc8]
imul eax, dword [0x141dcabcc]
mov qword [rcx], 1
mov qword [rcx + 8], 1
xorps xmm0, xmm0
movaps xmmword [rcx + 0x10], xmm0
movaps xmmword [rcx + 0x20], xmm0
movaps xmmword [rcx + 0x30], xmm0
movaps xmmword [rcx + 0x40], xmm0
movaps xmmword [rcx + 0x50], xmm0
movaps xmmword [rcx + 0x60], xmm0
movaps xmmword [rcx + 0x70], xmm0
movaps xmmword [rcx + 0x80], xmm0
movaps xmmword [rcx + 0x90], xmm0
movaps xmmword [rcx + 0xa0], xmm0
movaps xmmword [rcx + 0xb0], xmm0
movaps xmmword [rcx + 0xc0], xmm0
movaps xmmword [rcx + 0xd0], xmm0
movaps xmmword [rcx + 0xe0], xmm0
movaps xmmword [rcx + 0xf0], xmm0
movaps xmmword [rcx + 0x100], xmm0
mov qword [rcx + 0x110], 0x40
movups xmm0, xmmword [r13]
movups xmm1, xmmword [r13 + 0x10]
movups xmm2, xmmword [r13 + 0x20]
movups xmmword [rcx + 0x118], xmm0
movups xmmword [rcx + 0x128], xmm1
movups xmmword [rcx + 0x138], xmm2
mov rdx, qword [r13 + 0x30]
mov qword [rcx + 0x148], rdx
add eax, 0x4ae9aac6
or eax, 0x2d2a8585
cmp eax, 0x1226325d
jae 0x1400f5e5c
mov qword [rcx], 1
mov qword [rcx + 8], 1
xorps xmm0, xmm0
movaps xmmword [rcx + 0x10], xmm0
movaps xmmword [rcx + 0x20], xmm0
movaps xmmword [rcx + 0x30], xmm0
movaps xmmword [rcx + 0x40], xmm0
movaps xmmword [rcx + 0x50], xmm0
movaps xmmword [rcx + 0x60], xmm0
movaps xmmword [rcx + 0x70], xmm0
movaps xmmword [rcx + 0x80], xmm0
movaps xmmword [rcx + 0x90], xmm0
movaps xmmword [rcx + 0xa0], xmm0
movaps xmmword [rcx + 0xb0], xmm0
movaps xmmword [rcx + 0xc0], xmm0
movaps xmmword [rcx + 0xd0], xmm0
movaps xmmword [rcx + 0xe0], xmm0
movaps xmmword [rcx + 0xf0], xmm0
movaps xmmword [rcx + 0x100], xmm0
mov qword [rcx + 0x110], 0x40
mov rax, qword [r13 + 0x30]
mov qword [rcx + 0x148], rax
movups xmm0, xmmword [r13]
movups xmm1, xmmword [r13 + 0x10]
movups xmm2, xmmword [r13 + 0x20]
movups xmmword [rcx + 0x138], xmm2
movups xmmword [rcx + 0x128], xmm1
movups xmmword [rcx + 0x118], xmm0
jmp 0x1400f5ce7
mov qword [rcx + 0x150], 0x10000
mov qword [rcx + 0x158], 0x10000
mov qword [rcx + 0x160], 0
mov eax, dword [0x141ddb27c]
mov rdx, qword gs:[0x58]
mov rdx, qword [rdx + rax*8]
mov rax, qword [rdx + 0x18]
mov r8, qword [rdx + 0x20]
mov qword [rdx + 0x18], 1
mov qword [rdx + 0x20], rcx
cmp rax, 1
je 0x1400f608f
test rax, rax
jne 0x1400f644e
nop word cs:[rax + rax]
mov eax, dword [0x141dcabd0]
xor eax, dword [0x141dcabd4]
or eax, 0x8c197fe0
imul rcx, rax, 0xf02a021
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
or eax, 0xbdc03eea
cmp eax, 0x7fec29d0
jb 0x1400f5ed0
nop word cs:[rax + rax]
mov eax, dword [0x141dcabd8]
or eax, dword [0x141dcabdc]
imul eax, eax, 0xe9f7fd79
cmp eax, 0x8ce3629d
je 0x1400f5f10
mov eax, dword [0x141ddb27c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x40]
nop word cs:[rax + rax]
mov ecx, dword [0x141dcabe0]
and ecx, dword [0x141dcabe4]
imul ecx, ecx, 0xb6e61d31
xor ecx, 0x2e62ef2b
imul rcx, rcx, 0x32219f0b
shr rcx, 0x3d
cmp ecx, 0xa7896eb
je 0x1400f5f50
test rax, rax
jne 0x1400f61ba
mov eax, dword [0x141dcabe8]
sub eax, dword [0x141dcabec]
or eax, 0x800006
xor eax, 0x400001
and eax, 0xa0c1401f
cmp eax, 0xc13f0848
jbe 0x1400f5fcb
mov eax, dword [0x141ddb27c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov qword [rax + 0x40], 0xffffffffffffffff
mov rax, qword [0x140102600]
mov eax, 0xb2beebdf
mov ecx, dword [0x141dcabf0]
sub ecx, dword [0x141dcabf4]
mov edx, dword [0x141ddb27c]
mov r8, qword gs:[0x58]
mov rdx, qword [r8 + rdx*8]
xor ecx, 0x3a57c9d5
imul rcx, rax
shr rcx, 0x3e
or ecx, 0x64c06fbc
mov qword [rdx + 0x40], 0xffffffffffffffff
mov rdx, qword [0x140102600]
cmp ecx, 0xbafe4e1e
ja 0x1400f5fd0
nop dword [rax]
mov eax, dword [0x141dcabf8]
sub eax, dword [0x141dcabfc]
or eax, 0x5519d711
and eax, 0xd5ddd7f5
cmp eax, 0x88b94766
je 0x1400f6020
mov eax, dword [0x141ddb27c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rsi, qword [rax + 0x58]
cmp rsi, qword [rax + 0x48]
jne 0x1400f61b3
mov eax, dword [0x141dcac20]
sub eax, dword [0x141dcac24]
or eax, 0x5dbb247e
add eax, 0x67bb06a4
or eax, 0x9b3b2f78
cmp eax, 0x3d14fed5
jne 0x1400f62e5
jmp 0x1400f6319
mov eax, dword [0x141dcac48]
xor edx, edx
div dword [0x141dcac4c]
nop dword [rax]
mov eax, dword [0x141dcac50]
xor eax, dword [0x141dcac54]
or eax, 0xc101724f
add eax, 0x96a7eed3
cmp eax, 0x5f8dd942
jb 0x1400f60a0
dec qword [r8]
jne 0x1400f644e
mov eax, dword [0x141dcac58]
xor edx, edx
div dword [0x141dcac5c]
or eax, 0x102a2000
and eax, 0x702b3002
cmp eax, 0xe8c81c9c
jbe 0x1400f60f0
dec qword [r8 + 8]
nop dword [rax]
mov eax, dword [0x141dcac60]
xor edx, edx
div dword [0x141dcac64]
imul ecx, eax, 0x96503ce4
mov rax, qword [r8 + 8]
dec rax
mov qword [r8 + 8], rax
cmp ecx, 0x2bb8e400
je 0x1400f60f0
nop word [rax + rax]
mov ecx, dword [0x141dcac68]
add ecx, dword [0x141dcac6c]
xor ecx, 0xe1f2da47
add ecx, 0xe7976205
imul rdx, rcx, 0x3d6461b
shr rdx, 0x20
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 0x1f
cmp ecx, 0xdcc6b465
je 0x1400f6120
test rax, rax
jne 0x1400f644e
mov rcx, qword [0x141ddb260]
sub rsp, 0x20
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
add rsp, 0x20
nop word cs:[rax + rax]
mov eax, dword [0x141dcac70]
xor edx, edx
div dword [0x141dcac74]
add eax, 0xbc3ef666
imul rcx, rax, 0xc494d7d
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1c
cmp eax, 0x85b9f286
je 0x1400f6180
jmp 0x1400f644e
xor ecx, ecx
jmp 0x1400f636e
mov rcx, qword [rbp - 8]
mov dword [rcx], 0
lea rax, [0x141db98a0]
mov rdi, qword [rbp - 0x18]
mov qword [rdi], rax
mov eax, dword [0x141dcac00]
imul eax, dword [0x141dcac04]
mov byte [rcx + 4], 0
and eax, 0x802150e0
add eax, 0xc82fddc2
cmp eax, 0xf2064468
mov rcx, qword [rbp - 0x10]
ja 0x1400f6225
mov eax, dword [0x141dcac08]
imul eax, dword [0x141dcac0c]
add eax, 0xeb8a33c3
mov qword [rdi + 8], 1
mov qword [rdi + 0x20], 0
mov qword [rdi + 0x10], rcx
cmp eax, 0xfbd38fb8
jbe 0x1400f623b
mov qword [rdi + 8], 1
mov qword [rdi + 0x20], 0
mov qword [rdi + 0x10], rcx
jmp 0x1400f61f8
mov eax, dword [0x141dcac10]
sub eax, dword [0x141dcac14]
add eax, 0xda6498ee
or eax, 0x84401882
and eax, 0x956e98ee
cmp eax, 0x218f246f
mov rbx, qword [rbp - 8]
je 0x1400f62b6
mov eax, dword [0x141dcac18]
imul eax, dword [0x141dcac1c]
imul esi, eax, 0x7fbe077e
xor esi, 0x44900508
and esi, 0x4cb2d52a
mov qword [rdi + 0x18], 0
sub rsp, 0x20
mov rcx, rbx
mov rdx, rdi
call fcn.1400885c0
mov rcx, rax
call fcn.140088a00
add rsp, 0x20
mov ecx, 7
int 0x29
cmp esi, 0x7db4ea34
jbe 0x1400f5864
mov qword [rdi + 0x18], 0
sub rsp, 0x20
mov rcx, rbx
mov rdx, rdi
call fcn.1400885c0
mov rcx, rax
call fcn.140088a00
add rsp, 0x20
mov ecx, 7
int 0x29
jmp 0x1400f6261
mov edi, dword [0x141dcac28]
imul edi, dword [0x141dcac2c]
xor edi, 0x1c0e8832
or edi, 0x6251234c
xor edi, 0x59aefffc
sub rsp, 0x20
call fcn.14008aa30
add rsp, 0x20
cmp edi, 0xbb65a7d6
jbe 0x1400f6328
sub rsp, 0x20
call fcn.14008aa30
add rsp, 0x20
jmp 0x1400f62e5
mov eax, dword [0x141ddb27c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rcx, qword [rax + 0x40]
inc rcx
nop word cs:[rax + rax]
mov eax, dword [0x141dcac30]
xor eax, dword [0x141dcac34]
imul eax, eax, 0x57096350
add eax, 0xadfe2780
cmp eax, 0x29621899
jb 0x1400f6350
mov eax, dword [0x141dcac38]
xor eax, dword [0x141dcac3c]
add eax, 0x80000000
or eax, 0x7ff77ffb
cmp eax, 0xaa0956e2
jbe 0x1400f63d5
mov eax, dword [0x141ddb27c]
mov rdx, qword gs:[0x58]
mov rax, qword [rdx + rax*8]
mov rdx, qword [rax + 0x50]
mov r8, rsi
shl r8, 4
lea r9, [rax + 0x18]
mov qword [rdx + r8], r9
lea r9, [0x140070920]
mov qword [rdx + r8 + 8], r9
lea rdx, [rsi + 1]
mov qword [rax + 0x58], rdx
mov qword [rax + 0x40], rcx
mov r8, rsi
shl r8, 4
inc rsi
lea r9, [0x140070920]
nop word cs:[rax + rax]
mov eax, dword [0x141dcac40]
xor edx, edx
div dword [0x141dcac44]
mov edx, dword [0x141ddb27c]
mov r10, qword gs:[0x58]
mov rdx, qword [r10 + rdx*8]
mov r10, qword [rdx + 0x50]
lea r11, [rdx + 0x18]
mov qword [r10 + r8], r11
imul eax, eax, 0x6488da85
or eax, 0x4cf59171
imul eax, eax, 0xb952d1c4
mov qword [r10 + r8 + 8], r9
mov qword [rdx + 0x58], rsi
mov qword [rdx + 0x40], rcx
cmp eax, 0x1eb16a89
jb 0x1400f63f0
mov eax, dword [0x141dcac78]
xor edx, edx
div dword [0x141dcac7c]
nop dword [rax]
mov eax, dword [0x141dcac80]
or eax, dword [0x141dcac84]
imul rcx, rax, 0x18f103a7
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
or eax, 0xfa291ea
imul eax, eax, 0x380113f9
cmp eax, 0xe15f4d94
ja 0x1400f6460
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret