Function at 0x140065b20
Capabilities:
Enumerate pe sections

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x20], r9
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x1070
call fcn.14015df10
sub rsp, rax
mov r13, r8
mov r14, rdx
mov rax, rcx
xor ebx, ebx
test r8, r8
je 0x140065c64
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x40], gethostname
mov qword [rsp + 0x50], r8
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x60], 0x1000
mov dword [rsp + 0x10c0], ebx
mov qword [rsp + 0x38], rbx
lea rcx, [rsp + 0x10c0]
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rbx
mov r9d, 0x28
lea r8, [rsp + 0x40]
mov edx, 0x80862007
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
jne 0x140065bcc
lea rdx, str.____Cant_read_module_headers
jmp 0x140065c50
mov rdi, 0xffffffffffffffff
mov rsi, rdi
inc rsi
cmp byte [r14 + rsi], bl
jne 0x140065bd6
movsxd rax, dword [rsp + 0xac]
lea r15, [rsp + 0x70]
add r15, rax
movzx eax, word [r15 + 0x14]
lea r12, [r15 + 0x18]
add r12, rax
mov ebp, ebx
cmp bx, word [r15 + 6]
jae 0x140065c49
nop dword [rax]
nop dword [rax + rax]
mov eax, ebp
lea rcx, [rax + rax*4]
lea rbx, [r12 + rcx*8]
mov r8, rsi
mov rdx, r14
mov rcx, rbx
call fcn.1401a38f0
test eax, eax
jne 0x140065c3e
mov rax, rdi
nop
inc rax
cmp byte [rbx + rax], 0
jne 0x140065c30
cmp rsi, rax
je 0x140065ca0
inc ebp
movzx eax, word [r15 + 6]
cmp ebp, eax
jb 0x140065c10
lea rdx, str.____Cant_find_section
lea rcx, [0x140662140]
call fcn.1400688a0
mov rcx, rax
call fcn.140068b60
lea rdx, str.____No_module_address_to_find_pattern
lea rcx, [0x140662140]
call fcn.1400688a0
mov rcx, rax
call fcn.140068b60
xor r14d, r14d
mov rax, r14
mov rbx, qword [rsp + 0x10b8]
add rsp, 0x1070
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [rbx + 0xc]
test eax, eax
je 0x140065c49
mov r8d, dword [rbx + 8]
lea rdx, [rsp + 0x70]
add rdx, rax
je 0x140065c49
test r8d, r8d
je 0x140065c49
lea rax, [rsp + 0x70]
sub rdx, rax
lea rbp, [rdx + r13]
mov ebx, r8d
test rbp, rbp
je 0x140065c64
cmp rbx, 0x40000000
jbe 0x140065ce0
lea rdx, str.____Cant_find_pattern__Too_big_section
jmp 0x140065c6b
mov rcx, rbx
call fcn.14015d92c
mov rsi, rax
mov r8, rbx
xor edx, edx
mov rcx, rax
call fcn.1401a34b0
mov qword [rsp + 0x68], rsi
xor r14d, r14d
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x40], gethostname
mov qword [rsp + 0x50], rbp
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x60], rbx
mov dword [rsp + 0x10c0], r14d
mov qword [rsp + 0x38], r14
lea rax, [rsp + 0x10c0]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], r14
mov r9d, 0x28
lea r8, [rsp + 0x40]
mov edx, 0x80862007
mov rcx, qword [rsp + 0x10b0]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
jne 0x140065d8c
lea rdx, str.____Read_failed_in_FindPatternAtKernel
lea rcx, [0x140662140]
call fcn.1400688a0
mov rcx, rax
call fcn.140068b60
nop
mov rcx, rsi
call fcn.14015d5e8
jmp 0x140065c82
mov r10, qword [rsp + 0x10d0]
inc rdi
cmp byte [r10 + rdi], r14b
jne 0x140065d94
sub rbx, rdi
mov r9, r14
je 0x140065df7
movzx r11d, byte [r10]
mov rdi, rsi
mov rax, qword [rsp + 0x10c8]
sub rdi, rax
mov rdx, r10
test r11b, r11b
je 0x140065de2
movzx ecx, r11b
lea r8, [rdi + r9]
cmp cl, 0x78
jne 0x140065dd5
movzx ecx, byte [rax]
cmp byte [r8 + rax], cl
jne 0x140065de7
inc rdx
inc rax
movzx ecx, byte [rdx]
test cl, cl
jne 0x140065dc7
cmp byte [rdx], r14b
je 0x140065e20
inc r9
cmp r9, rbx
mov rax, qword [rsp + 0x10c8]
jb 0x140065db7
lea rdx, str.____Cant_find_pattern
lea rcx, [0x140662140]
call fcn.1400688a0
mov rcx, rax
call fcn.140068b60
nop
mov rcx, rsi
call fcn.14015d5e8
jmp 0x140065c82
lea rax, [r9 + rsi]
test rax, rax
je 0x140065df7
sub rax, rsi
lea rbx, [rax + rbp]
mov rcx, rsi
call fcn.14015d5e8
mov rax, rbx
jmp 0x140065c85