joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1401922e0
Capabilities:
Map section object

Disassembly:
mov qword [rsp + 0x10], rdx
push rbx
push rbp
push rsi
sub rsp, 0x60
xor sil, sil
mov rbp, r8
mov rbx, rdx
test rdx, rdx
jne 0x14019235f
test rcx, rcx
jne 0x14019230c
mov eax, 0xc0000030
add rsp, 0x60
pop rsi
pop rbp
pop rbx
ret
mov dword ss:[rsp + 0x30], 0x60
mov rdx, rcx
mov dword [rsp + 0x28], 1
lea rcx, [rsp + 0x88]
mov r9d, 0x80
mov dword [rsp + 0x20], 1
mov r8d, 0x100081
call sym.SystemInformer.exe_QiCreateFile
test eax, eax
jns 0x140192354
lfence
add rsp, 0x60
pop rsi
pop rbp
pop rbx
ret
mov rbx, qword [rsp + 0x88]
mov sil, 1
xor r8d, r8d
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], 0x8000000
lea r9, [rsp + 0x58]
lea rcx, [rsp + 0x80]
mov qword [rsp + 0x90], rdi
mov qword [rsp + 0x58], 0x1000
lea edx, [r8 + 5]
mov dword [rsp + 0x20], 2
call qword [sym.imp.ntdll.dll_NtCreateSection]
mov edi, eax
test sil, sil
je 0x1401923af
mov rcx, rbx
call qword [sym.imp.ntdll.dll_NtClose]
test edi, edi
jns 0x1401923c8
lfence
mov eax, edi
mov rdi, qword [rsp + 0x90]
add rsp, 0x60
pop rsi
pop rbp
pop rbx
ret
xor ecx, ecx
mov dword [rsp + 0x48], 2
mov dword [rsp + 0x40], ecx
lea rax, [rsp + 0x98]
mov dword [rsp + 0x38], 2
lea r8, [rsp + 0x50]
mov qword [rsp + 0x30], rax
xor r9d, r9d
mov qword [rsp + 0x28], rcx
lea rdx, [rcx - 1]
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x50], rcx
mov rcx, qword [rsp + 0x80]
mov qword [rsp + 0x98], 0x1000
call qword [sym.imp.ntdll.dll_NtMapViewOfSection]
mov rcx, qword [rsp + 0x80]
mov ebx, eax
call qword [sym.imp.ntdll.dll_NtClose]
test ebx, ebx
jns 0x14019244f
lfence
mov rdi, qword [rsp + 0x90]
mov eax, ebx
add rsp, 0x60
pop rsi
pop rbp
pop rbx
ret
mov r8, qword ds:[rsp + 0x98]
mov rcx, rbp
mov rdx, qword [rsp + 0x50]
call fcn.140191ce0
mov rdi, qword [rsp + 0x90]
add rsp, 0x60
pop rsi
pop rbp
pop rbx
ret
Function at 0x140192760
Capabilities:
Parse pe header

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rdi
push r14
push r15
sub rsp, 0x30
mov rdi, qword [rsp + 0x70]
mov r15, r9
mov rbp, r8
mov rbx, rdx
mov r14, rcx
mov qword [rdi + 8], rdx
mov qword [rdi + 0x10], r8
cmp r8, 0x1000
jae 0x14019279f
mov eax, 0xc0000017
jmp 0x140192913
lea rax, [rdx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140192927
mov rcx, qword [0x1402c5110]
mov edx, 4
mov r8d, 0x1000
mov qword [rsp + 0x50], rsi
call qword [sym.imp.ntdll.dll_RtlAllocateHeap]
xor edx, edx
mov r8d, 0x1000
mov rcx, rax
mov rsi, rax
call fcn.140207110
mov r9d, 0x1000
mov qword [rsp + 0x20], 0
mov r8, rsi
mov rdx, rbx
mov rcx, r14
mov rax, r15
call qword [case.0x14013b5a0.0]
mov ebx, eax
lfence
test eax, eax
js 0x14019290e
mov eax, 0x5a4d
cmp word [rsi], ax
jne 0x1401928f2
movsxd rcx, dword ds:[rsi + 0x3c]
test rcx, rcx
je 0x1401928f2
cmp rcx, rbp
jae 0x1401928f2
cmp rcx, 0x10000000
jae 0x1401928f2
lea rax, [rcx + 0x108]
cmp rax, 0x1000
jb 0x140192858
mov ebx, 0xc0000017
jmp 0x1401928f7
cmp dword [rcx + rsi], 0x4550
lea r8, [rcx + rsi]
je 0x14019286f
mov ebx, 0xc000007b
jmp 0x1401928f7
movzx eax, word [r8 + 0x14]
mov edx, 0xe0
sub ax, dx
mov edx, 0xffef
test dx, ax
je 0x14019288d
mov ebx, 0xc0000903
jmp 0x1401928f7
movzx eax, word [r8 + 0x18]
mov edx, 0x10b
mov word [rdi + 0x30], ax
sub ax, dx
mov edx, 0xfeff
test dx, ax
jne 0x140192865
movzx eax, word [r8 + 6]
mov dword [rdi + 0x20], eax
cmp eax, 0x7f
jae 0x140192865
lea rdx, [rax + rax*4]
movzx eax, word [r8 + 0x14]
add rcx, rax
lea rax, [rdx + 0x24]
lea rax, [rcx + rax*8]
cmp rax, 0x1000
jae 0x14019284e
mov qword [rdi], r14
mov qword [rdi + 0x18], r8
movzx ecx, word [r8 + 0x14]
add rcx, 0x18
mov qword [rdi + 0x38], rsi
add rcx, r8
mov qword [rdi + 0x28], rcx
jmp 0x14019290c
mov ebx, 0xc000012f
lfence
mov rcx, qword [0x1402c5110]
mov r8, rsi
xor edx, edx
call qword [sym.imp.ntdll.dll_RtlFreeHeap]
mov eax, ebx
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x60]
add rsp, 0x30
pop r15
pop r14
pop rdi
ret
mov eax, 0xc000000d
jmp 0x140192913
Function at 0x140192940
Capabilities:
Parse pe header

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r14
sub rsp, 0x1a0
mov rax, qword [0x1402ba040]
xor rax, rsp
mov qword [rsp + 0x180], rax
mov rdi, qword [rsp + 0x1f0]
mov r14, r9
mov qword [rsp + 0x20], rdi
mov rsi, r8
mov rbx, rdx
mov rbp, rcx
call fcn.140192760
nop
cmp eax, 0xc0000017
jne 0x140192b8e
mov qword [rsp + 0x198], r12
mov qword [rsp + 0x190], r15
mov qword [rdi + 8], rbx
mov qword [rdi + 0x10], rsi
cmp rsi, 0x40
jb 0x140192b79
lea rax, [rbx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140192b72
lfence
xor r12d, r12d
lea r8, [rsp + 0x30]
mov rdx, rbx
mov qword [rsp + 0x20], r12
mov rcx, rbp
mov rax, r14
lea r9d, [r12 + 0x40]
call qword [case.0x14013b5a0.0]
nop
test eax, eax
js 0x140192a4a
mov eax, 0x5a4d
cmp word [rsp + 0x30], ax
je 0x1401929fa
mov eax, 0xc000012f
jmp 0x140192b7e
movsxd rax, dword ds:[rsp + 0x6c]
test rax, rax
je 0x140192b79
cmp rax, rsi
jae 0x140192b79
cmp rax, 0x10000000
jae 0x140192b79
lfence
lea r15, [rbx + rax]
mov qword [rsp + 0x20], r12
mov rdx, r15
lea r8, [rsp + 0x70]
mov r9d, 0x108
mov rcx, rbp
mov rax, r14
call qword [case.0x14013b5a0.0]
test eax, eax
jns 0x140192a52
lfence
jmp 0x140192b7e
cmp dword ds:[rsp + 0x70], 0x4550
jne 0x140192b79
movzx edx, word ds:[rsp + 0x84]
mov ecx, 0xe0
movzx eax, dx
sub ax, cx
mov ecx, 0xffef
test cx, ax
je 0x140192a8f
mov eax, 0xc0000903
jmp 0x140192b7e
movzx eax, word [rsp + 0x88]
mov ecx, 0x10b
mov word [rdi + 0x30], ax
sub ax, cx
mov ecx, 0xfeff
test cx, ax
jne 0x140192b79
movzx ecx, word ds:[rsp + 0x76]
mov dword [rdi + 0x20], ecx
cmp ecx, 0x7f
jae 0x140192b79
lea eax, ds:[rdx + 0x18]
lea rcx, [rcx + rcx*4]
lea rsi, [rax + rcx*8]
cmp rsi, 0x100000
ja 0x140192b79
lfence
mov rcx, qword [0x1402c5110]
mov r8, rsi
mov edx, 4
call qword [sym.imp.ntdll.dll_RtlAllocateHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
mov rbx, rax
call fcn.140207110
mov r9, rsi
mov qword [rdi + 0x18], rbx
mov r8, rbx
mov qword [rsp + 0x20], r12
mov rdx, r15
mov rcx, rbp
mov rax, r14
call qword [case.0x14013b5a0.0]
mov ebx, eax
lfence
test eax, eax
jns 0x140192b58
mov r8, qword [rdi + 0x18]
xor edx, edx
mov rcx, qword [0x1402c5110]
call qword [sym.imp.ntdll.dll_RtlFreeHeap]
mov eax, ebx
mov qword [rdi + 0x18], r12
jmp 0x140192b7e
mov rcx, qword [rdi + 0x18]
mov qword [rdi], rbp
movzx eax, word [rcx + 0x14]
add rcx, 0x18
add rcx, rax
mov qword [rdi + 0x28], rcx
xor eax, eax
jmp 0x140192b7e
mov eax, 0xc000000d
jmp 0x140192b7e
mov eax, 0xc000007b
mov r12, qword [rsp + 0x198]
mov r15, qword [rsp + 0x190]
mov rcx, qword [rsp + 0x180]
xor rcx, rsp
call fcn.1401e0100
add rsp, 0x1a0
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x1401989c0
Capabilities:
Open clipboard
Read clipboard data

Disassembly:
push rdi
push r15
sub rsp, 0x28
mov rdi, rdx
mov r15, rcx
call qword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x140198b31
lea rcx, str.BinaryData
mov qword [rsp + 0x48], rbp
call qword [sym.imp.USER32.dll_RegisterClipboardFormatW]
mov ecx, eax
call qword [sym.imp.USER32.dll_GetClipboardData]
mov rbp, rax
test rax, rax
jne 0x140198a13
lea ecx, [rax + 1]
call qword [sym.imp.USER32.dll_GetClipboardData]
mov rbp, rax
test rax, rax
je 0x140198b26
mov qword [rsp + 0x40], rbx
mov rcx, rbp
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x20], r14
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov rcx, rbp
mov r12, rax
call qword [sym.imp.KERNEL32.dll_GlobalSize]
mov ecx, dword [rdi + 0x1c]
mov rsi, rax
mov r9d, dword [rdi + 0x20]
mov ebx, ecx
mov r14d, dword [rdi + 0x14]
cmp ecx, r9d
jle 0x140198a5d
mov ebx, r9d
mov dword [rdi + 0x20], ecx
mov dword [rdi + 0x1c], ebx
mov r9d, ecx
test byte [rdi + 0x2c], 0x10
je 0x140198ac2
cmp ebx, 0xffffffff
jne 0x140198a8b
cmp dword [rdi + 0x18], 3
mov ebx, r14d
jne 0x140198a78
lea ebx, [r14 + 1]
mov dword [rdi + 0x14], ebx
mov r9d, esi
mov r8d, ebx
mov rdx, rdi
mov rcx, r15
call fcn.140198c40
jmp 0x140198ae1
mov r8d, ebx
mov rdx, rdi
mov rcx, r15
call fcn.140198b40
mov r9d, esi
mov r8d, ebx
mov rdx, rdi
mov rcx, r15
call fcn.140198c40
mov r9d, 0xffffffff
mov rdx, rdi
mov r8d, r9d
mov rcx, r15
call fcn.140198580
nop
jmp 0x140198ae1
cmp ebx, 0xffffffff
jne 0x140198ad7
cmp dword [rdi + 0x18], 3
mov ebx, r14d
jne 0x140198ad7
lea ebx, [r14 + 1]
mov dword [rdi + 0x14], ebx
mov eax, dword [rdi + 8]
sub eax, ebx
cmp esi, eax
cmova esi, eax
mov ecx, ebx
mov rdx, r12
add rcx, qword [rdi]
mov r8d, esi
call fcn.1402074d0
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov r9d, 0x105
mov dword [rdi + 0x14], r14d
xor r8d, r8d
xor edx, edx
mov rcx, r15
call qword [sym.imp.USER32.dll_RedrawWindow]
mov r14, qword [rsp + 0x20]
mov r12, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x40]
call qword [sym.imp.USER32.dll_CloseClipboard]
mov rbp, qword [rsp + 0x48]
add rsp, 0x28
pop r15
pop rdi
ret
Function at 0x14019c320
Capabilities:
Capture screenshot

Disassembly:
mov qword [rsp + 0x20], rbx
push rdi
sub rsp, 0xc0
mov rax, qword [0x1402ba040]
xor rax, rsp
mov qword [rsp + 0xb0], rax
mov rbx, rdx
xor r8d, r8d
lea rdx, [rsp + 0x50]
mov rdi, rcx
call qword [sym.imp.USER32.dll_GetUpdateRect]
test eax, eax
je 0x14019c55b
mov eax, dword [rsp + 0x5c]
or eax, dword [rsp + 0x54]
or eax, dword [rsp + 0x58]
or eax, dword [rsp + 0x50]
je 0x14019c55b
cmp dword [rbx + 0x244], 0
mov qword [rsp + 0xe0], rsi
jg 0x14019c3f4
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.GDI32.dll_CreateRectRgn]
xor r8d, r8d
mov rcx, rdi
mov rdx, rax
mov rsi, rax
call qword [sym.imp.USER32.dll_GetUpdateRgn]
mov rcx, qword [rbx + 0x248]
test rcx, rcx
jne 0x14019c3bb
mov qword [rbx + 0x248], rsi
jmp 0x14019c3d6
mov r9d, 2
mov r8, rsi
mov rdx, rcx
call qword [sym.imp.GDI32.dll_CombineRgn]
mov rcx, rsi
call qword [sym.imp.GDI32.dll_DeleteObject]
lea rdx, ds:[rsp + 0x60]
mov rcx, rdi
call qword [sym.imp.USER32.dll_BeginPaint]
test rax, rax
je 0x14019c553
jmp 0x14019c545
test dword ds:[rbx + 0x40], 0x200000
je 0x14019c4b3
cmp qword [rbx + 0x1f8], 0
jne 0x14019c4b3
mov rcx, qword [rbx]
call qword [sym.imp.USER32.dll_GetDC]
mov rsi, rax
test rax, rax
je 0x14019c4b3
mov rcx, rax
call qword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov qword [rbx + 0x1f8], rax
test rax, rax
je 0x14019c4b3
movups xmm0, xmmword ds:[rbx + 0x60]
mov rcx, rsi
movups xmmword [rbx + 0x210], xmm0
mov edx, dword [rbx + 0x218]
mov r8d, dword [rbx + 0x21c]
inc edx
call qword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov qword [rbx + 0x208], rax
test rax, rax
jne 0x14019c48c
mov rcx, qword [rbx + 0x1f8]
call qword [sym.imp.GDI32.dll_DeleteDC]
mov qword [rbx + 0x1f8], 0
jmp 0x14019c4b3
mov rcx, qword [rbx]
mov rdx, rsi
call qword [sym.imp.USER32.dll_ReleaseDC]
mov rdx, qword [rbx + 0x208]
mov rcx, qword [rbx + 0x1f8]
call qword [sym.imp.GDI32.dll_SelectObject]
mov qword [rbx + 0x200], rax
lea rdx, ds:[rsp + 0x60]
mov rcx, rdi
call qword [sym.imp.USER32.dll_BeginPaint]
mov rsi, rax
test rax, rax
je 0x14019c553
movups xmm0, xmmword [rsp + 0x6c]
mov r8, qword [rbx + 0x1f8]
lea r9, [rsp + 0x50]
mov rdx, rbx
mov rcx, rdi
movups xmmword [rsp + 0x50], xmm0
test r8, r8
je 0x14019c53c
call fcn.1401a2300
mov ecx, dword [rsp + 0x5c]
mov r8d, dword [rsp + 0x54]
sub ecx, r8d
mov edx, dword [rsp + 0x50]
mov rax, qword [rbx + 0x1f8]
mov r9d, dword [rsp + 0x58]
mov dword [rsp + 0x40], 0xcc0020
sub r9d, edx
mov dword [rsp + 0x38], r8d
mov dword [rsp + 0x30], edx
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
mov rcx, rsi
call qword [sym.imp.GDI32.dll_BitBlt]
jmp 0x14019c545
mov r8, rsi
call fcn.1401a2300
lea rdx, [rsp + 0x60]
mov rcx, rdi
call qword [sym.imp.USER32.dll_EndPaint]
mov rsi, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0xb0]
xor rcx, rsp
call fcn.1401e0100
mov rbx, qword [rsp + 0xe8]
add rsp, 0xc0
pop rdi
ret
Function at 0x1401a6340
Capabilities:
Parse pe header

Disassembly:
sub rsp, 0x48
test byte [0x1402c1c68], 1
jne 0x1401a65ef
lock bts qword [0x1402c1c68], 0x1f
jae 0x1401a6384
test byte [0x1402c1c68], 1
jne 0x1401a65ef
xor edx, edx
lea rcx, [0x1402c1c68]
call sym.SystemInformer.exe_QifWaitForEvent
mov rax, qword [0x1402c90e8]
add rsp, 0x48
ret
cmp dword [0x1402baf40], 0x3e
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x40], rbx
lea rbx, str.appresolver.dll
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x30], 0x1e
jae 0x1401a64ba
call fcn.1401776c0
mov rcx, rax
test rax, rax
jne 0x1401a6416
xor edx, edx
mov r8d, 0x800
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
jne 0x1401a6416
xor edx, edx
mov r8d, 0x200
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
jne 0x1401a6416
cmp dword [0x1402baf40], 0x3e
jae 0x1401a65de
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
je 0x1401a65de
mov eax, 0x5a4d
cmp word [rcx], ax
jne 0x1401a65de
mov edx, dword [rcx + 0x3c]
lea eax, [rdx - 1]
cmp eax, 0x7ffffffd
ja 0x1401a65de
cmp dword [rdx + rcx], 0x4550
jne 0x1401a65de
add rdx, 0x88
add rdx, rcx
mov eax, dword [rdx]
test eax, eax
je 0x1401a65de
cmp dword ds:[rdx + 4], 0
je 0x1401a65de
lea r8, [rcx + rax]
xor eax, eax
lea r9, str.DllGetClassObject
mov word [rsp + 0x20], ax
call fcn.140177a80
nop dword [rax]
test rax, rax
je 0x1401a65de
lea r8, ds:[rsp + 0x50]
lea rdx, [0x14020cba0]
lea rcx, [0x14028b250]
call qword [case.0x14013b5a0.0]
test eax, eax
js 0x1401a65de
lea r8, [0x14028b298]
jmp 0x1401a65b1
call fcn.1401776c0
mov rcx, rax
test rax, rax
jne 0x1401a6529
xor edx, edx
mov r8d, 0x800
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
jne 0x1401a6529
xor edx, edx
mov r8d, 0x200
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
jne 0x1401a6529
cmp dword [0x1402baf40], 0x3e
jae 0x1401a65de
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
je 0x1401a65de
mov eax, 0x5a4d
cmp word [rcx], ax
jne 0x1401a65de
mov edx, dword ds:[rcx + 0x3c]
lea eax, [rdx - 1]
cmp eax, 0x7ffffffd
ja 0x1401a65de
cmp dword [rdx + rcx], 0x4550
jne 0x1401a65de
add rdx, 0x88
add rdx, rcx
mov eax, dword [rdx]
test eax, eax
je 0x1401a65de
cmp dword [rdx + 4], 0
je 0x1401a65de
lea r8, [rcx + rax]
xor eax, eax
lea r9, str.DllGetClassObject
mov word [rsp + 0x20], ax
call fcn.140177a80
test rax, rax
je 0x1401a65de
lea r8, ds:[rsp + 0x50]
lea rdx, [0x14020cba0]
lea rcx, [0x14028b250]
call qword [case.0x14013b5a0.0]
test eax, eax
js 0x1401a65de
lea r8, [0x14028b1f8]
mov rcx, qword [rsp + 0x50]
lea r9, [0x1402c90e8]
xor edx, edx
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x14013b5a0.0]
mov rcx, qword [rsp + 0x50]
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x14013b5a0.0]
lea rcx, [0x1402c1c68]
call sym.SystemInformer.exe_QifSetEvent
mov rbx, qword [rsp + 0x40]
mov rax, qword [0x1402c90e8]
add rsp, 0x48
ret
Function at 0x1401a6600
Capabilities:
Parse pe header

Disassembly:
sub rsp, 0x48
test byte [0x1402c1c58], 1
jne 0x1401a68af
lock bts qword [0x1402c1c58], 0x1f
jae 0x1401a6644
test byte [0x1402c1c58], 1
jne 0x1401a68af
xor edx, edx
lea rcx, [0x1402c1c58]
call sym.SystemInformer.exe_QifWaitForEvent
mov rax, qword [0x1402c90e0]
add rsp, 0x48
ret
cmp dword [0x1402baf40], 0x3e
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x40], rbx
lea rbx, str.appresolver.dll
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x30], 0x1e
jae 0x1401a677a
call fcn.1401776c0
mov rcx, rax
test rax, rax
jne 0x1401a66d6
xor edx, edx
mov r8d, 0x800
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
jne 0x1401a66d6
xor edx, edx
mov r8d, 0x200
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
jne 0x1401a66d6
cmp dword [0x1402baf40], 0x3e
jae 0x1401a689e
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
je 0x1401a689e
mov eax, 0x5a4d
cmp word [rcx], ax
jne 0x1401a689e
mov edx, dword [rcx + 0x3c]
lea eax, [rdx - 1]
cmp eax, 0x7ffffffd
ja 0x1401a689e
cmp dword [rdx + rcx], 0x4550
jne 0x1401a689e
add rdx, 0x88
add rdx, rcx
mov eax, dword [rdx]
test eax, eax
je 0x1401a689e
cmp dword ds:[rdx + 4], 0
je 0x1401a689e
lea r8, [rcx + rax]
xor eax, eax
lea r9, str.DllGetClassObject
mov word [rsp + 0x20], ax
call fcn.140177a80
nop dword [rax]
test rax, rax
je 0x1401a689e
lea r8, ds:[rsp + 0x50]
lea rdx, [0x14020cba0]
lea rcx, [0x14028b250]
call qword [case.0x14013b5a0.0]
test eax, eax
js 0x1401a689e
lea r8, [0x14028b260]
jmp 0x1401a6871
call fcn.1401776c0
mov rcx, rax
test rax, rax
jne 0x1401a67e9
xor edx, edx
mov r8d, 0x800
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
jne 0x1401a67e9
xor edx, edx
mov r8d, 0x200
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
jne 0x1401a67e9
cmp dword [0x1402baf40], 0x3e
jae 0x1401a689e
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
je 0x1401a689e
mov eax, 0x5a4d
cmp word [rcx], ax
jne 0x1401a689e
mov edx, dword ds:[rcx + 0x3c]
lea eax, [rdx - 1]
cmp eax, 0x7ffffffd
ja 0x1401a689e
cmp dword [rdx + rcx], 0x4550
jne 0x1401a689e
add rdx, 0x88
add rdx, rcx
mov eax, dword [rdx]
test eax, eax
je 0x1401a689e
cmp dword [rdx + 4], 0
je 0x1401a689e
lea r8, [rcx + rax]
xor eax, eax
lea r9, str.DllGetClassObject
mov word [rsp + 0x20], ax
call fcn.140177a80
test rax, rax
je 0x1401a689e
lea r8, ds:[rsp + 0x50]
lea rdx, [0x14020cba0]
lea rcx, [0x14028b250]
call qword [case.0x14013b5a0.0]
test eax, eax
js 0x1401a689e
lea r8, [0x14028b2c8]
mov rcx, qword [rsp + 0x50]
lea r9, [0x1402c90e0]
xor edx, edx
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x14013b5a0.0]
mov rcx, qword [rsp + 0x50]
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x14013b5a0.0]
lea rcx, [0x1402c1c58]
call sym.SystemInformer.exe_QifSetEvent
mov rbx, qword [rsp + 0x40]
mov rax, qword [0x1402c90e0]
add rsp, 0x48
ret
Function at 0x1401a73a0
Capabilities:
Parse pe header

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x40
mov rdi, rdx
mov qword [rsp + 0x30], 0x26
lea rbx, str.twinapi.appcore.dll
mov rsi, rcx
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x38], rbx
call fcn.1401776c0
mov rcx, rax
test rax, rax
jne 0x1401a7438
xor edx, edx
mov r8d, 0x800
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
jne 0x1401a7438
xor edx, edx
mov r8d, 0x200
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
jne 0x1401a7438
cmp dword [0x1402baf40], 0x3e
jae 0x1401a742e
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
jne 0x1401a7438
mov ebx, 0x8007007e
jmp 0x1401a7549
mov eax, 0x5a4d
cmp word [rcx], ax
jne 0x1401a7544
mov edx, dword [rcx + 0x3c]
lea eax, [rdx - 1]
cmp eax, 0x7ffffffd
ja 0x1401a7544
cmp dword [rdx + rcx], 0x4550
jne 0x1401a7544
add rdx, 0x88
add rdx, rcx
mov eax, dword [rdx]
test eax, eax
je 0x1401a7544
cmp dword ds:[rdx + 4], 0
je 0x1401a7544
lea r8, [rcx + rax]
xor eax, eax
lea r9, str.DllGetClassObject
mov word [rsp + 0x20], ax
call fcn.140177a80
nop dword [rax]
test rax, rax
je 0x1401a7544
lea r8, ds:[rsp + 0x68]
lea rdx, [0x14020cba0]
lea rcx, [0x14028b1e8]
call qword [case.0x14013b5a0.0]
mov ebx, eax
test eax, eax
js 0x1401a7506
mov rcx, qword [rsp + 0x68]
lea r9, [rsp + 0x60]
lea r8, [0x14028b2d8]
xor edx, edx
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x14013b5a0.0]
mov rcx, qword ds:[rsp + 0x68]
mov ebx, eax
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x14013b5a0.0]
test ebx, ebx
jne 0x1401a7549
mov rcx, qword ds:[rsp + 0x60]
mov r8d, 0x10000
mov rdx, rsi
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x14013b5a0.0]
mov ebx, eax
test eax, eax
jne 0x1401a7549
mov rcx, qword [rsp + 0x60]
mov qword [rdi], rcx
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
ret
mov ebx, 0x8007007f
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x1401a7566
mov rax, qword ds:[rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x14013b5a0.0]
mov rsi, qword [rsp + 0x58]
mov eax, ebx
mov rbx, qword [rsp + 0x50]
add rsp, 0x40
pop rdi
ret
Function at 0x1401a7580
Capabilities:
Parse pe header

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
push rsi
push rdi
push r14
sub rsp, 0x50
xor r14d, r14d
mov qword [rax - 0x30], 0x18
mov rbp, rdx
mov qword [rax + 0x20], r14
lea rbx, str.mrmcorer.dll
mov qword [rax - 0x38], r14
lea rdx, [rax - 0x30]
mov qword [rax - 0x20], r14
mov qword [rax - 0x28], rbx
mov rdi, r8
mov rsi, rcx
call fcn.1401776c0
mov rcx, rax
test rax, rax
jne 0x1401a7630
xor edx, edx
mov r8d, 0x800
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
jne 0x1401a7630
xor edx, edx
mov r8d, 0x200
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
jne 0x1401a7630
cmp dword [0x1402baf40], 0x3e
jae 0x1401a7626
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
jne 0x1401a7630
mov ebx, 0x8007007e
jmp 0x1401a775b
mov eax, 0x5a4d
cmp word [rcx], ax
jne 0x1401a7756
mov edx, dword [rcx + 0x3c]
lea eax, [rdx - 1]
cmp eax, 0x7ffffffd
ja 0x1401a7756
cmp dword [rdx + rcx], 0x4550
jne 0x1401a7756
add rdx, 0x88
add rdx, rcx
mov eax, dword [rdx]
test eax, eax
je 0x1401a7756
cmp dword [rdx + 4], r14d
je 0x1401a7756
lea r8, [rcx + rax]
mov word [rsp + 0x20], r14w
lea r9, str.DllGetClassObject
call fcn.140177a80
test rax, rax
je 0x1401a7756
lea r8, [rsp + 0x38]
lea rdx, [0x14020cba0]
lea rcx, [0x14028b230]
call qword [case.0x14013b5a0.0]
mov ebx, eax
test eax, eax
js 0x1401a76ef
mov rcx, qword [rsp + 0x38]
lea r9, [rsp + 0x88]
lea r8, [0x14028b2a8]
xor edx, edx
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x14013b5a0.0]
mov rcx, qword [rsp + 0x38]
mov ebx, eax
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x14013b5a0.0]
test ebx, ebx
jne 0x1401a775b
mov rcx, qword [rsp + 0x88]
mov rdx, rsi
mov rax, qword [rcx]
mov rax, qword [rax + 0x28]
call qword [case.0x14013b5a0.0]
mov ebx, eax
test eax, eax
jne 0x1401a775b
mov rcx, qword [rsp + 0x88]
lea r8, [rsp + 0x30]
lea rdx, [0x14028b2b8]
mov rax, qword [rcx]
mov rax, qword [rax + 0x38]
call qword [case.0x14013b5a0.0]
mov ebx, eax
test eax, eax
jne 0x1401a775b
mov rcx, qword [rsp + 0x30]
lea r8, [rsp + 0x48]
mov rdx, rbp
mov rax, qword [rcx]
mov rax, qword [rax + 0x38]
call qword [case.0x14013b5a0.0]
mov ebx, eax
jmp 0x1401a775b
mov ebx, 0x8007007f
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1401a7772
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x14013b5a0.0]
mov rcx, qword [rsp + 0x88]
test rcx, rcx
je 0x1401a778c
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x14013b5a0.0]
test ebx, ebx
jne 0x1401a7798
mov rax, qword [rsp + 0x48]
mov qword [rdi], rax
mov rbp, qword [rsp + 0x78]
mov eax, ebx
mov rbx, qword [rsp + 0x70]
add rsp, 0x50
pop r14
pop rdi
pop rsi
ret