Function at 0x140003c40
Capabilities:
Access peb ldr_data
Check if file exists
Get file attributes
Terminate process

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x70
mov ecx, 8
xor edi, edi
mov qword [rsp + 0x48], rcx
mov dword [rsp + 0x30], edi
lea edx, [rcx + 0x18]
call sub.api_ms_win_crt_heap_l1_1_0.dll_calloc
mov qword [rsp + 0x38], rax
mov r14, rax
test rax, rax
je 0x140004176
mov rax, qword gs:[0x60]
lea ebp, [rdi + 1]
xor r15d, r15d
xor r13d, r13d
xor r12d, r12d
mov rcx, qword [rax + 0x18]
mov rsi, qword [rcx + 0x10]
mov qword [rsp + 0x50], rsi
test rsi, rsi
je 0x140004135
mov rbx, qword [rsi + 0x60]
test rbx, rbx
je 0x1400040c5
mov r8d, 6
lea rdx, str.api_ms
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
je 0x1400040c5
mov rdi, qword [rsi + 0x50]
test ebp, ebp
jne 0x140003d58
lea rcx, str.____Hooks__t_tNo_hooks_found_in_this_module._n
call fcn.140001010
test r15, r15
je 0x140003cff
mov rcx, r15
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
xor r15d, r15d
test r12, r12
je 0x140003d2a
mov rcx, qword [r12 + 0x80]
test rcx, rcx
je 0x140003d22
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov qword [r12 + 0x80], 0
mov rcx, r12
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
test r13, r13
je 0x140003d5a
mov rcx, qword [r13 + 0x80]
test rcx, rcx
je 0x140003d4b
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov qword [r13 + 0x80], 0
mov rcx, r13
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
xor r13d, r13d
jmp 0x140003d5a
xor ebp, ebp
mov r9, qword [rsi + 0x30]
lea rcx, str.____Hooks__t_ws___ws_:_0x_p_n
mov r8, rdi
mov rdx, rbx
call fcn.140001010
mov rcx, qword [rsi + 0x30]
mov edx, 1
call fcn.1400051b0
mov r12, rax
test rax, rax
je 0x1400040c1
cmp qword [rax + 0x50], 0
je 0x1400040c1
mov rcx, qword [rsi + 0x50]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x1400040c1
test al, 0x10
jne 0x1400040c1
mov rcx, qword [rsi + 0x50]
call fcn.140002a20
mov qword [rsp + 0x60], rax
mov r15, rax
test rax, rax
je 0x1400040c1
xor edx, edx
mov rcx, rax
call fcn.1400051b0
mov r13, rax
test rax, rax
je 0x1400040c1
mov rdx, qword [r12 + 0x20]
mov rcx, rax
call fcn.140004d00
xor eax, eax
mov dword [rsp + 0x40], eax
cmp dword [r13 + 0x60], eax
jbe 0x1400040c1
mov dword [rsp + 0x44], ebp
mov rdx, qword [r13 + 0x58]
mov rcx, r13
mov edx, dword [rdx + rax*4]
call fcn.140004c70
mov rdx, rax
mov rcx, r13
mov rsi, rax
call fcn.140005380
mov r10, qword [r13 + 0x48]
mov edi, eax
mov rax, qword [r13 + 0x30]
xor r8d, r8d
movzx r9d, word [rax + 6]
test r9d, r9d
je 0x140003e59
lea rdx, [r10 + 8]
nop dword [rax]
mov ecx, dword [rdx + 4]
cmp ecx, edi
ja 0x140003e4d
add ecx, dword [rdx]
cmp edi, ecx
jb 0x140003e7c
inc r8d
add rdx, 0x28
cmp r8d, r9d
jb 0x140003e40
xor eax, eax
test dword [rax + 0x24], 0x20000000
je 0x140003f37
mov rdx, rsi
mov rcx, r13
call fcn.140005380
test eax, eax
jne 0x140003e86
xor r15d, r15d
jmp 0x140003e93
lea rcx, [r8 + r8*4]
lea rax, [r10 + rcx*8]
jmp 0x140003e5b
mov edx, eax
mov rcx, r13
call fcn.140004c70
mov r15, rax
mov rdx, rsi
mov rcx, r12
call fcn.140005380
test eax, eax
jne 0x140003ea6
xor ebp, ebp
jmp 0x140003eb3
mov edx, eax
mov rcx, r12
call fcn.140004c70
mov rbp, rax
mov r14d, dword [rsp + 0x30]
xor ecx, ecx
test r14, r14
je 0x140003ed9
mov rax, qword [rsp + 0x38]
add rax, 8
cmp qword [rax], rbp
je 0x140003f37
inc rcx
add rax, 0x20
cmp rcx, r14
jb 0x140003ec8
mov rdx, rsi
mov rcx, r13
call fcn.140005380
test eax, eax
jne 0x140003eec
xor ebx, ebx
jmp 0x140003ef9
mov edx, eax
mov rcx, r13
call fcn.140004c70
mov rbx, rax
mov rdx, rsi
mov rcx, r12
call fcn.140005380
test eax, eax
jne 0x140003f0c
xor edx, edx
jmp 0x140003f19
mov edx, eax
mov rcx, r12
call fcn.140004c70
mov rdx, rax
mov rcx, rbx
sub rdx, rbx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x140003f62
inc rcx
mov rax, rcx
sub rax, rbx
cmp rax, 0x18
jb 0x140003f20
mov edi, dword [rsp + 0x30]
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
cmp eax, dword [r13 + 0x60]
jb 0x140003e01
mov rsi, qword [rsp + 0x50]
mov ebp, dword [rsp + 0x44]
mov r15, qword [rsp + 0x60]
jmp 0x1400040c5
mov r8d, edi
lea rcx, str.____Hooks__t_tHook_detected_in_function__s__0x_08lx_
mov rdx, rsi
call fcn.140001010
mov rcx, rbp
mov dword [rsp + 0x44], 1
call fcn.140003b90
mov r8, rax
test rax, rax
jne 0x140003f9a
lea rcx, str....but_not_a_JMP__maybe_a_false_positive__data_export__or_unimplemented_hook_recognition_n
call fcn.140001010
jmp 0x140003f37
mov rax, qword gs:[0x60]
mov rdi, 0xffffffffffffffff
mov r9, rdi
mov rcx, qword [rax + 0x18]
mov rdx, qword [rcx + 0x10]
test rdx, rdx
je 0x140003ff2
nop word [rax + rax]
mov rcx, qword [rdx + 0x30]
cmp rcx, r8
ja 0x140003fd7
mov rax, r8
sub rax, rcx
cmp rax, r9
jae 0x140003fd7
mov r9, rax
mov rax, qword gs:[0x60]
mov rdx, qword [rdx]
mov rcx, qword [rax + 0x18]
cmp rdx, qword [rcx + 0x10]
je 0x140003ff2
test rdx, rdx
jne 0x140003fc0
xor ebx, ebx
mov rcx, rdi
inc rcx
cmp byte [rsi + rcx], bl
jne 0x140003ff7
mov eax, 0x28
cmp rax, rcx
je 0x140004039
nop dword [rax]
lea rcx, [0x14000e03c]
call fcn.140001010
inc ebx
mov rax, rdi
inc rax
cmp byte [rsi + rax], 0
jne 0x140004021
mov ecx, 0x28
sub rcx, rax
mov eax, ebx
cmp rax, rcx
jb 0x140004010
mov rax, qword [rsp + 0x48]
mov edi, dword [rsp + 0x30]
cmp edi, eax
jb 0x140004083
add eax, eax
mov ecx, eax
mov qword [rsp + 0x48], rax
mov eax, 0x20
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, qword [rsp + 0x38]
mov rdx, rax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
mov qword [rsp + 0x38], rax
mov rbx, rax
test rax, rax
je 0x140004176
jmp 0x140004088
mov rbx, qword [rsp + 0x38]
lea rcx, [0x14000e040]
call fcn.140001010
shl r14, 5
mov rdx, r15
mov rcx, rbp
mov qword [r14 + rbx + 8], rbp
mov qword [r14 + rbx], r15
mov qword [r14 + rbx + 0x10], rsi
call fcn.140003370
inc edi
mov qword [r14 + rbx + 0x18], rax
mov dword [rsp + 0x30], edi
jmp 0x140003f3b
mov edi, dword [rsp + 0x30]
mov rax, qword gs:[0x60]
mov rsi, qword [rsi]
mov qword [rsp + 0x50], rsi
mov rcx, qword [rax + 0x18]
cmp rsi, qword [rcx + 0x10]
je 0x1400040e9
test rsi, rsi
jne 0x140003cb0
test ebp, ebp
jne 0x1400040f9
lea rcx, str.____Hooks__t_tNo_hooks_found_in_this_module._n
call fcn.140001010
mov rcx, qword [rsp + 0x48]
cmp edi, ecx
jb 0x140004130
lea edx, [rcx + 1]
mov eax, 0x20
mul rdx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, qword [rsp + 0x38]
mov rdx, rax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
mov r14, rax
test rax, rax
je 0x140004181
jmp 0x140004135
mov r14, qword [rsp + 0x38]
lea r11, [rsp + 0x70]
mov eax, edi
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
shl rax, 5
mov qword [rax + r14 + 8], 0
mov qword [rax + r14], 0
mov qword [rax + r14 + 0x10], 0
mov rax, r14
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov ecx, 1
call sub.api_ms_win_crt_runtime_l1_1_0.dll_exit
int3
lea rcx, str.realloc_failed_n
call fcn.140001010
mov ecx, 1
call sub.api_ms_win_crt_runtime_l1_1_0.dll_exit
int3