Function at 0x140029390
Capabilities:
Link many functions at runtime

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x290
mov rax, qword [0x1402d78c0]
xor rax, rsp
mov qword [rsp + 0x280], rax
mov rax, qword gs:[0x58]
mov rdi, rcx
mov ebx, 4
add rbx, qword [rax]
mov eax, dword [rbx]
cmp dword [0x1402ef4a0], eax
jle 0x14002940c
lea rcx, [0x1402ef4a0]
call fcn.1401cc630
cmp dword [0x1402ef4a0], 0xffffffff
jne 0x14002940c
lea rcx, str.kernel32
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea rcx, [0x1402ef4a0]
mov qword [0x1402de6d8], rax
call fcn.1401cc5c4
mov eax, dword [rbx]
cmp dword [0x1402de288], eax
jle 0x140029452
lea rcx, [0x1402de288]
call fcn.1401cc630
cmp dword [0x1402de288], 0xffffffff
jne 0x140029452
mov rcx, qword [0x1402de6d8]
lea rdx, str.OpenProcess
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x1402de288]
mov qword [0x1402ff948], rax
call fcn.1401cc5c4
mov eax, dword [rbx]
cmp dword [0x1402ef338], eax
jle 0x140029498
lea rcx, [0x1402ef338]
call fcn.1401cc630
cmp dword [0x1402ef338], 0xffffffff
jne 0x140029498
mov rcx, qword [0x1402de6d8]
lea rdx, str.CreateToolhelp32Snapshot
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x1402ef338]
mov qword [0x1402ef8f0], rax
call fcn.1401cc5c4
mov eax, dword [rbx]
cmp dword [0x1402ef3d0], eax
jle 0x1400294de
lea rcx, [0x1402ef3d0]
call fcn.1401cc630
cmp dword [0x1402ef3d0], 0xffffffff
jne 0x1400294de
mov rcx, qword [0x1402de6d8]
lea rdx, str.Process32FirstW
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x1402ef3d0]
mov qword [0x1402ef080], rax
call fcn.1401cc5c4
mov eax, dword [rbx]
cmp dword [0x1402f3908], eax
jle 0x140029524
lea rcx, [0x1402f3908]
call fcn.1401cc630
cmp dword [0x1402f3908], 0xffffffff
jne 0x140029524
mov rcx, qword [0x1402de6d8]
lea rdx, str.Process32NextW
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x1402f3908]
mov qword [0x1402de768], rax
call fcn.1401cc5c4
mov eax, dword [rbx]
cmp dword [0x1402ef488], eax
jle 0x14002956a
lea rcx, [0x1402ef488]
call fcn.1401cc630
cmp dword [0x1402ef488], 0xffffffff
jne 0x14002956a
mov rcx, qword [0x1402de6d8]
lea rdx, [0x1402a00d8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x1402ef488]
mov qword [0x1402deb30], rax
call fcn.1401cc5c4
mov rax, qword [0x1402ef8f0]
xor edx, edx
lea ecx, [rdx + 2]
call rax
xor bpl, bpl
mov rsi, rax
cmp rax, 0xffffffffffffffff
je 0x1400296b0
mov r8, qword [0x1402ef080]
lea rdx, [rsp + 0x40]
mov rcx, rax
mov dword [rsp + 0x40], 0x238
call r8
test eax, eax
je 0x1400296b0
mov qword [rsp + 0x2a0], r14
xor r14d, r14d
nop word [rax + rax]
xorps xmm0, xmm0
mov qword [rsp + 0x30], r14
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x38], r14
lea rax, [rsp + 0x6c]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp word [rax + r8*2], r14w
jne 0x1400295e0
lea rdx, [rsp + 0x6c]
lea rcx, [rsp + 0x20]
call fcn.14000e280
cmp qword [rdi + 0x18], 7
mov rax, rdi
jbe 0x140029606
mov rax, qword [rdi]
cmp qword [rsp + 0x38], 7
lea r8, [rsp + 0x20]
mov rdx, qword [rsp + 0x30]
cmova r8, qword [rsp + 0x20]
cmp rdx, qword [rdi + 0x10]
jne 0x140029684
test rdx, rdx
je 0x140029644
sub r8, rax
nop word [rax + rax]
movzx ecx, word [r8 + rax]
cmp cx, word [rax]
jne 0x140029684
add rax, 2
sub rdx, 1
jne 0x140029630
lea rcx, [rsp + 0x20]
call fcn.14000b4e0
mov rax, qword [0x1402ff948]
xor edx, edx
mov r8d, dword [rsp + 0x48]
lea ecx, [rdx + 1]
call rax
mov r8, qword [0x1402deb30]
xor edx, edx
mov rcx, rax
mov rbx, rax
call r8
test eax, eax
mov rcx, rbx
setne bpl
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x14002968e
lea rcx, [rsp + 0x20]
call fcn.14000b4e0
mov r8, qword [0x1402de768]
lea rdx, [rsp + 0x40]
mov rcx, rsi
call r8
test eax, eax
jne 0x1400295c0
mov r14, qword [rsp + 0x2a0]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
movzx eax, bpl
mov rcx, qword [rsp + 0x280]
xor rcx, rsp
call fcn.1401cc560
lea r11, [rsp + 0x290]
mov rbx, qword [r11 + 0x18]
mov rbp, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop rdi
ret