Function at 0x140024530
Capabilities:
Enumerate process modules
Enumerate processes

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x4c0
lea rbp, [rsp + 0x40]
mov qword [rbp + 0x4d0], rbx
mov rax, qword [0x14012f680]
xor rax, rbp
mov qword [rbp + 0x470], rax
mov r15, rdx
mov r14, rcx
mov qword [rbp + 0x28], rdx
lea rcx, [rbp + 8]
call fcn.14000f730
mov rdi, rax
mov dword [rbp + 0x30], 0x238
xor edx, edx
lea ecx, [rdx + 0xf]
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
mov rsi, rax
lea rdx, [rbp + 0x30]
mov rcx, rax
call sub.KERNEL32.dll_Process32FirstW
xor r12d, r12d
movabs r13, 0xffffffffffffff0
nop dword [rax]
nop word [rax + rax]
lea rcx, [rbp + 0x5c]
mov rax, 0xffffffffffffffff
nop dword [rax + rax]
inc rax
cmp word [rcx + rax*2], r12w
jne 0x1400245c0
lea edx, [rax + 1]
cmp edx, 0x3fffffff
jg 0x14002463a
cdqe
lea rax, [rax*2 + 2]
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x1400245eb
mov rcx, r13
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.1400df0a0
sub rsp, rcx
lea rbx, [rsp + 0x40]
test rbx, rbx
je 0x14002463a
mov byte [rbx], r12b
lea eax, [rdx + rdx]
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rbx
mov r9d, 0xffffffff
lea r8, [rbp + 0x5c]
xor edx, edx
lea ecx, [rdx + 3]
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
test eax, eax
cmove rbx, r12
jmp 0x14002463d
mov rbx, r12
mov rdx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x14002464a
mov rdx, qword [rdi]
sub rdx, rbx
nop dword [rax]
movzx ecx, byte [rbx]
movzx eax, byte [rbx + rdx]
sub ecx, eax
jne 0x140024662
inc rbx
test eax, eax
jne 0x140024650
test ecx, ecx
mov rcx, rsi
je 0x140024691
lea rdx, [rbp + 0x30]
call sub.KERNEL32.dll_Process32NextW
test eax, eax
jne 0x1400245b0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rdi
call fcn.140010f30
mov dword [r14 + 0x10], r12d
jmp 0x1400246aa
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov ebx, dword [rbp + 0x38]
mov rcx, rdi
call fcn.140010f30
mov dword [r14 + 0x10], ebx
test ebx, ebx
jne 0x1400246bc
mov rcx, r15
call fcn.140010f30
mov eax, 1
jmp 0x140024839
mov r8d, ebx
mov edx, 1
mov ecx, 0x1fffff
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov qword [r14 + 8], rax
test rax, rax
jne 0x1400246ea
mov rcx, r15
call fcn.140010f30
mov eax, 2
jmp 0x140024839
mov rdx, r15
lea rcx, [rbp + 8]
call fcn.14000f730
mov rdi, rax
mov dword [rbp + 0x30], 0x438
mov edx, dword [r14 + 0x10]
mov ecx, 8
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
mov rsi, rax
lea rdx, [rbp + 0x30]
mov rcx, rax
call sub.KERNEL32.dll_Module32FirstW
nop dword [rax]
lea rax, [rbp + 0x60]
mov rcx, 0xffffffffffffffff
nop dword [rax + rax]
inc rcx
cmp word [rax + rcx*2], r12w
jne 0x140024730
lea edx, [rcx + 1]
cmp edx, 0x3fffffff
jg 0x1400247ab
movsxd rax, ecx
lea rax, [rax*2 + 2]
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x14002475c
mov rcx, r13
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.1400df0a0
sub rsp, rcx
lea rbx, [rsp + 0x40]
test rbx, rbx
je 0x1400247ab
mov byte [rbx], r12b
lea eax, [rdx + rdx]
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rbx
mov r9d, 0xffffffff
lea r8, [rbp + 0x60]
xor edx, edx
lea ecx, [rdx + 3]
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
test eax, eax
cmove rbx, r12
jmp 0x1400247ae
mov rbx, r12
mov rdx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1400247bb
mov rdx, qword [rdi]
sub rdx, rbx
nop
movzx ecx, byte [rbx]
movzx eax, byte [rbx + rdx]
sub ecx, eax
jne 0x1400247d2
inc rbx
test eax, eax
jne 0x1400247c0
test ecx, ecx
mov rcx, rsi
je 0x140024801
lea rdx, [rbp + 0x30]
call sub.KERNEL32.dll_Module32NextW
test eax, eax
jne 0x140024720
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rdi
call fcn.140010f30
mov qword [r14 + 0x18], r12
jmp 0x14002481c
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rbx, qword [rbp + 0x58]
mov rcx, rdi
call fcn.140010f30
mov qword [r14 + 0x18], rbx
test rbx, rbx
jne 0x14002482b
mov rcx, r15
call fcn.140010f30
mov eax, 3
jmp 0x140024839
mov byte [r14], 1
mov rcx, r15
call fcn.140010f30
xor eax, eax
mov rcx, qword [rbp + 0x470]
xor rcx, rbp
call fcn.1400df060
mov rbx, qword [rbp + 0x4d0]
lea rsp, [rbp + 0x480]
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret