joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1400a9718
Capabilities:
Get file system object information

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
mov eax, 0x3668
call fcn.1400d8110
sub rsp, rax
mov rax, qword [0x1401006f0]
xor rax, rsp
mov qword [rsp + 0x3650], rax
cmp dword [0x1401005c0], 0xffffffff
mov rbp, r9
mov bl, r8b
mov rdi, rdx
mov rsi, rcx
mov r12d, 0x800
jne 0x1400a97d7
lea r8, [rsp + 0xd0]
lea rcx, [0x1400e1dd8]
mov r9d, 0x2b8
xor edx, edx
mov dword [rsp + 0x20], 0x4001
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov r11d, dword [rsp + 0xd8]
lea rdx, [rsp + 0x2650]
mov r8d, r12d
xor ecx, ecx
mov dword [0x14018bf40], r11d
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea r8, [rsp + 0xd0]
lea rcx, [rsp + 0x2650]
mov r9d, 0x2b8
xor edx, edx
mov dword [rsp + 0x20], 0x4001
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov r11d, dword [rsp + 0xd8]
mov dword [0x1401005c0], r11d
lea rcx, [rsp + 0x650]
mov r8, r12
mov rdx, rdi
call fcn.1400805a0
lea rcx, [rsp + 0x650]
mov r8, r12
xor edx, edx
call fcn.1400613c4
xor r13d, r13d
lea rax, [rsp + 0x650]
cmp word [rsi], r13w
mov dword [rsp + 0x30], 3
mov dword [rsp + 0x34], 0x40000000
setne dil
mov dword [rsp + 0x38], r13d
mov qword [rsp + 0x48], rax
mov r9d, 0x2b8
lea r8, [rsp + 0x390]
lea rcx, [rsp + 0x650]
cmp dil, r13b
je 0x1400a9855
neg bl
mov dword [rsp + 0x20], 0x4011
sbb edx, edx
and edx, 0x10
jmp 0x1400a985f
mov dword [rsp + 0x20], 0x4001
xor edx, edx
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov eax, dword [rsp + 0x398]
mov r8, r12
lea rcx, [rsp + 0x1650]
mov dword [rsp + 0x54], eax
cmp dil, r13b
je 0x1400a988a
mov rdx, rsi
call fcn.1400805a0
jmp 0x1400a98b6
lea rdx, [rsp + 0x650]
call fcn.1400805a0
lea rcx, [rsp + 0x1650]
call fcn.1400618f4
lea rcx, [rsp + 0x650]
call fcn.1400615e8
mov qword [rsp + 0x48], rax
mov rcx, qword [0x140148968]
mov edx, 0x66
call qword [sym.imp.USER32.dll_GetDlgItem]
lea r9, [rsp + 0x30]
xor r8d, r8d
mov rcx, rax
mov edx, 0x104d
mov rsi, rax
call qword [sym.imp.USER32.dll_SendMessageW]
mov edx, dword [0x14018bf40]
cmp dil, r13b
cmovne edx, dword [0x1401005c0]
mov rbx, rax
mov dword [rsp + 0x34], eax
lea rax, [rsp + 0x1650]
mov dword [rsp + 0x54], edx
lea r9, [rsp + 0x30]
mov r12d, 1
mov edx, 0x104c
xor r8d, r8d
mov rcx, rsi
mov dword [rsp + 0x30], 3
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x38], r12d
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, rbp
mov dword [rsp + 0x88], 2
call fcn.1400806c0
lea r9, [rsp + 0x80]
movsxd r8, ebx
mov edx, 0x1074
mov rcx, rsi
mov qword [rsp + 0x98], rax
call qword [sym.imp.USER32.dll_SendMessageW]
cmp ebx, r13d
jne 0x1400a9994
lea r9, [rsp + 0x80]
xor r8d, r8d
mov edx, 0x102b
mov rcx, rsi
mov dword [rsp + 0x90], r12d
mov dword [rsp + 0x8c], r12d
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, qword [rsp + 0x3650]
xor rcx, rsp
call fcn.1400c6350
add rsp, 0x3668
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x1400ab0e8
Capabilities:
Get file system object information

Disassembly:
mov r11, rsp
mov qword [r11 + 0x10], rbx
mov qword [r11 + 0x18], rbp
mov qword [r11 + 0x20], rsi
push rdi
push r12
push r13
sub rsp, 0x340
mov rax, qword [0x1401006f0]
xor rax, rsp
mov qword [rsp + 0x338], rax
mov r9, qword [rcx + 0x38]
mov rbp, rcx
lea r8, str._c:_
lea rcx, [r11 - 0x38]
mov edx, 0xa
add r9, 0x41
call fcn.140022b7c
lea r8, [rsp + 0x60]
lea rcx, [rsp + 0x320]
mov r9d, 0x2b8
xor edx, edx
mov dword [rsp + 0x20], 0x301
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
test byte [rbp + 0x10], 1
je 0x1400ab194
mov ecx, 0xd
call qword [sym.imp.USER32.dll_GetSysColor]
mov rcx, qword [rbp + 0x20]
mov edx, eax
call qword [sym.imp.GDI32.dll_SetBkColor]
mov ecx, 0xe
mov r12d, eax
call qword [sym.imp.USER32.dll_GetSysColor]
mov rcx, qword [rbp + 0x20]
mov edx, eax
call qword [sym.imp.GDI32.dll_SetTextColor]
mov r13d, eax
jmp 0x1400ab19e
mov r12d, dword [rsp + 0x50]
mov r13d, dword [rsp + 0x50]
mov r8d, dword [rbp + 0x2c]
mov rcx, qword [rbp + 0x20]
xor edi, edi
mov qword [rsp + 0x38], rdi
lea rsi, [rbp + 0x28]
lea rax, [0x1400e04f4]
mov edx, dword [rsi]
mov dword [rsp + 0x30], edi
mov qword [rsp + 0x28], rax
lea r9d, [rdi + 2]
mov qword [rsp + 0x20], rsi
call qword [sym.imp.GDI32.dll_ExtTextOutW]
lea ecx, [rdi + 0x31]
call qword [sym.imp.USER32.dll_GetSystemMetrics]
lea ecx, [rdi + 0x32]
mov ebx, eax
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov r9, qword [rsp + 0x60]
mov r8d, dword [rbp + 0x2c]
mov edx, dword [rsi]
mov rcx, qword [rbp + 0x20]
mov dword [rsp + 0x40], 3
mov qword [rsp + 0x38], rdi
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ebx
call qword [sym.imp.USER32.dll_DrawIconEx]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.USER32.dll_DestroyIcon]
mov r8d, dword [rbp + 0x2c]
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x70]
lea r9, [rsp + 0x70]
repne scasw ax, word [rdi]
mov eax, dword [rsi]
add r8d, 2
not rcx
lea edx, [rbx + rax + 7]
dec rcx
mov dword [rsp + 0x20], ecx
mov rcx, qword [rbp + 0x20]
call qword [sym.imp.GDI32.dll_TextOutW]
test byte [rbp + 0x10], 1
je 0x1400ab274
mov rcx, qword [rbp + 0x20]
mov edx, r12d
call qword [sym.imp.GDI32.dll_SetBkColor]
mov rcx, qword [rbp + 0x20]
mov edx, r13d
call qword [sym.imp.GDI32.dll_SetTextColor]
mov rcx, qword [rsp + 0x338]
xor rcx, rsp
call fcn.1400c6350
lea r11, [rsp + 0x340]
mov rbx, qword [r11 + 0x28]
mov rbp, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r13
pop r12
pop rdi
ret
Function at 0x1400ae9f0
Capabilities:
Delete directory
Enumerate files on windows

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r12
mov eax, 0x3290
call fcn.1400d8110
sub rsp, rax
mov rax, qword [0x1401006f0]
xor rax, rsp
mov qword [rsp + 0x3280], rax
mov bl, cl
mov dword [0x140148974], 1
test dl, dl
je 0x1400aeb73
mov r12d, 0x800
lea rcx, [rsp + 0x1280]
xor r8d, r8d
mov rdx, r12
call fcn.1400a1d3c
lea rcx, [rsp + 0x1280]
mov rdx, r12
call fcn.14006119c
lea r9, [rsp + 0x1280]
lea r8, str._sRar_
lea rcx, [rsp + 0x2280]
mov rdx, r12
call fcn.140022b7c
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x2280]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x1400aeb6a
cmp dword [0x140148974], 1
jne 0x1400aeb6a
mov ecx, dword [rsp + 0x24]
lea rdx, [rsp + 0x1280]
mov r8, r12
sub ecx, dword [rsp + 0x38]
cmp ecx, 8
lea rcx, [rsp + 0x280]
setae bpl
call fcn.1400805a0
lea rdx, [rsp + 0x5c]
lea rcx, [rsp + 0x280]
mov r8, r12
call fcn.1400805dc
test byte [rsp + 0x30], 0x10
je 0x1400aeb47
lea rdx, str.Rar_DI
lea rcx, [rsp + 0x5c]
mov r8d, 6
call fcn.1400c94cc
lea rcx, [rsp + 0x280]
test eax, eax
sete sil
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
jne 0x1400aeb54
test bpl, bpl
je 0x1400aeb33
test bl, bl
je 0x1400aeb38
test sil, sil
je 0x1400aeb54
lea rcx, [rsp + 0x280]
call fcn.1400a2f40
jmp 0x1400aeb54
lea rcx, [rsp + 0x280]
call fcn.1400a2aa4
lea rdx, [rsp + 0x30]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x1400aeaab
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindClose]
test bl, bl
jne 0x1400aeb9d
cmp byte [0x1401088b0], bl
je 0x1400aeb9d
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetThreadPriority]
mov cl, 1
call fcn.1400aade0
mov byte [0x1401088b0], al
and dword [0x140148974], 0
mov rcx, qword [rsp + 0x3280]
xor rcx, rsp
call fcn.1400c6350
lea r11, [rsp + 0x3290]
mov rbx, qword [r11 + 0x10]
mov rbp, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop r12
ret
Function at 0x1400b20c0
Capabilities:
Copy file

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
mov eax, 0x2030
call fcn.1400d8110
sub rsp, rax
mov rax, qword [0x1401006f0]
xor rax, rsp
mov qword [rsp + 0x2020], rax
xor ebp, ebp
mov rdi, rcx
cmp byte [0x1401088b0], bpl
je 0x1400b213d
cmp byte [0x140161554], bpl
jne 0x1400b213d
mov ecx, 0x5f0
call fcn.140076080
mov ecx, 0x5f1
mov rbx, rax
call fcn.140076080
mov rcx, qword [0x14014aae0]
lea r9d, [rbp + 0x24]
mov r8, rbx
mov rdx, rax
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 6
jne 0x1400b229c
mov esi, 0x800
lea rdx, [rsp + 0x1020]
xor ecx, ecx
mov r8d, esi
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea rdx, str.rarreg.key
lea rcx, [rsp + 0x1020]
mov r8, rsi
call fcn.1400617d0
lea rdx, [rsp + 0x1020]
xor r8d, r8d
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CopyFileW]
lea rcx, [rsp + 0x20]
mov r8b, 1
cmp eax, ebp
mov rdx, rsi
setne bl
call fcn.1400619f4
lea rcx, [rsp + 0x20]
mov rdx, rsi
call fcn.14006119c
lea rdx, str.rarreg.key
lea rcx, [rsp + 0x20]
mov r8, rsi
call fcn.1400805dc
cmp bl, bpl
je 0x1400b21c7
lea rcx, [rsp + 0x20]
call fcn.14003be94
jmp 0x1400b21f3
lea rdx, [rsp + 0x20]
xor r8d, r8d
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CopyFileW]
mov r11, rbp
movzx eax, word [rsp + r11 + 0x20]
add r11, 2
mov word [rsp + r11 + 0x101e], ax
cmp ax, bp
jne 0x1400b21db
mov rcx, qword [0x14014aae0]
call qword [sym.imp.USER32.dll_SetForegroundWindow]
mov rcx, qword [0x14014aae0]
mov edx, 1
call qword [sym.imp.USER32.dll_FlashWindow]
lea rcx, [rsp + 0x1020]
mov dl, 1
call fcn.14001ff14
mov rcx, qword [0x14014aae0]
xor edx, edx
mov byte [0x1401088b0], al
call qword [sym.imp.USER32.dll_FlashWindow]
lea rcx, [0x140155380]
call fcn.140051918
cmp byte [0x1401088b0], bpl
je 0x1400b227d
mov ecx, 0x368
call fcn.140076080
mov ecx, 0x367
mov rbx, rax
call fcn.140076080
mov rcx, qword [0x14014aae0]
mov r9d, 0x30
mov r8, rbx
mov rdx, rax
call qword [sym.imp.USER32.dll_MessageBoxW]
jmp 0x1400b229c
lea rcx, [rsp + 0x1020]
call fcn.14003be94
mov ecx, 0x366
call fcn.140076080
mov rcx, rax
call fcn.1400b189c
mov rcx, qword [rsp + 0x2020]
xor rcx, rsp
call fcn.1400c6350
lea r11, [rsp + 0x2030]
mov rbx, qword [r11 + 0x18]
mov rbp, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop rdi
ret
Function at 0x1400b22c8
Capabilities:
Copy file

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
mov eax, 0x3080
call fcn.1400d8110
sub rsp, rax
mov rax, qword [0x1401006f0]
xor rax, rsp
mov qword [rsp + 0x3070], rax
xor ebx, ebx
cmp byte [0x140148965], bl
je 0x1400b24b3
mov esi, 0x800
lea rdx, [rsp + 0x2070]
lea rcx, [0x1401575c0]
mov r8, rsi
call fcn.140014e94
lea r8d, [rbx + 1]
lea rdx, [0x1400e2370]
lea rcx, [0x1400e14b8]
call fcn.14006d3c4
cmp eax, ebx
setne dil
cmp dil, bl
je 0x1400b2361
lea r9, [0x1400e04f4]
lea r8, [rsp + 0x70]
lea rdx, str.SaveArcFolder
lea rcx, [0x1400e3ae8]
mov dword [rsp + 0x20], esi
call fcn.14006d398
cmp word [rsp + 0x70], bx
jne 0x1400b2372
lea rcx, [rsp + 0x70]
call fcn.14004932c
lea rcx, [rsp + 0x2070]
call fcn.1400615e8
lea r8, [rsp + 0x1070]
lea rcx, [rsp + 0x70]
mov rdx, rax
mov r9, rsi
call fcn.1400611e8
mov ecx, 0x5af
call fcn.140076080
mov rcx, qword [0x14014aae0]
lea r8, [rsp + 0x1070]
mov rdx, rax
xor r9d, r9d
mov byte [rsp + 0x20], 1
call fcn.14001bf00
cmp al, bl
je 0x1400b24b3
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x1070]
mov r8, rsi
call fcn.140061890
cmp dil, bl
je 0x1400b23fa
lea r8, [rsp + 0x70]
lea rdx, str.SaveArcFolder
lea rcx, [0x1400e3ae8]
call fcn.14006d344
xor eax, eax
or r8, 0xffffffffffffffff
mov edx, 0x7ff
mov rcx, r8
lea rdi, [rsp + 0x2070]
repne scasw ax, word [rdi]
mov rax, rdx
lea rdi, [rsp + 0x1070]
not rcx
cmp rcx, rdx
cmovb rax, rcx
mov rcx, r8
mov word [rsp + rax*2 + 0x2070], bx
xor eax, eax
repne scasw ax, word [rdi]
lea r8d, [rax + 0x38]
not rcx
cmp rcx, rdx
cmovb rdx, rcx
lea rcx, [rsp + 0x30]
mov word [rsp + rdx*2 + 0x1070], bx
xor edx, edx
call fcn.1400c7170
lea rax, [rsp + 0x2070]
lea rcx, [rsp + 0x30]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x1070]
mov dword [rsp + 0x38], 2
mov qword [rsp + 0x48], rax
call qword [sym.imp.SHELL32.dll_SHFileOperationW]
cmp eax, ebx
je 0x1400b24b3
mov ecx, 0x5b0
call fcn.140076080
mov r8, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
mov rcx, rax
call fcn.1400b189c
lea rcx, [0x140134b90]
call fcn.1400330fc
mov rcx, qword [rsp + 0x3070]
xor rcx, rsp
call fcn.1400c6350
lea r11, [rsp + 0x3080]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rsp, r11
pop rdi
ret
Function at 0x1400b4fd4
Capabilities:
Get file attributes
Log keystrokes via polling

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
mov eax, 0x1040
call fcn.1400d8110
sub rsp, rax
mov rax, qword [0x1401006f0]
xor rax, rsp
mov qword [rsp + 0x1030], rax
xor ebx, ebx
mov rdi, rcx
cmp dword [0x140149a04], ebx
jne 0x1400b5137
xor r9d, r9d
xor r8d, r8d
or edx, 0xffffffff
call qword [sym.imp.SHELL32.dll_DragQueryFileW]
mov esi, eax
cmp eax, 1
jne 0x1400b50cf
lea r8, [rsp + 0x30]
mov r9d, 0x800
xor edx, edx
mov rcx, rdi
mov word [rsp + 0x30], bx
call qword [sym.imp.SHELL32.dll_DragQueryFileW]
lea rcx, [rsp + 0x20]
call qword [sym.imp.USER32.dll_GetCursorPos]
mov rcx, qword [rsp + 0x20]
call qword [sym.imp.USER32.dll_WindowFromPoint]
cmp byte [0x140148965], bl
je 0x1400b5074
cmp rax, qword [0x140155380]
je 0x1400b50a0
cmp rax, qword [0x140155360]
je 0x1400b50a0
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
test al, 0x10
jne 0x1400b50a0
lea rdx, [rsp + 0x30]
lea rcx, [0x140155380]
mov r8b, 1
call fcn.140050eb4
cmp eax, 1
je 0x1400b5137
lea rcx, [rsp + 0x30]
call fcn.1400615e8
lea rdx, str.rarreg.
mov r8d, 7
mov rcx, rax
call fcn.1400883f8
cmp eax, ebx
jne 0x1400b50cf
lea rcx, [rsp + 0x30]
call fcn.1400b20c0
jmp 0x1400b5137
xor ecx, ecx
call fcn.14009e138
lea rcx, [0x140167808]
call fcn.140080b98
cmp esi, ebx
jle 0x1400b5113
lea r8, [rsp + 0x30]
mov r9d, 0x800
mov edx, ebx
mov rcx, rdi
call qword [sym.imp.SHELL32.dll_DragQueryFileW]
lea rdx, [rsp + 0x30]
lea rcx, [0x140167808]
call fcn.140080bc0
inc ebx
cmp ebx, esi
jl 0x1400b50e6
mov ecx, 0x10
call qword [sym.imp.USER32.dll_GetKeyState]
mov r8b, 1
xor ecx, ecx
mov r11w, ax
shr r11d, 0xf
and r11b, 1
mov dl, r11b
call fcn.1400a10b4
mov rcx, qword [rsp + 0x1030]
xor rcx, rsp
call fcn.1400c6350
lea r11, [rsp + 0x1040]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rsp, r11
pop rdi
ret

Function at 0x1400b54d0
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 8], rbx
push rdi
mov eax, 0x2040
call fcn.1400d8110
sub rsp, rax
mov rax, qword [0x1401006f0]
xor rax, rsp
mov qword [rsp + 0x2030], rax
lea r8, [rsp + 0x1030]
lea rdx, str.rarreg.key
lea rcx, [0x1400e04f4]
xor r9d, r9d
mov dword [rsp + 0x20], 0x1000
call fcn.14006d3dc
movsxd rdi, eax
test eax, eax
je 0x1400b5588
lea rdx, [rsp + 0x30]
lea rcx, str.Rar_RK
mov r8d, 0x800
call fcn.1400a279c
mov rbx, rax
test rax, rax
je 0x1400b5575
lea rcx, [rsp + 0x1030]
mov r8, rdi
mov r9, rax
mov edx, 1
call fcn.1400c8f54
mov rcx, rbx
call fcn.1400c8d40
lea rcx, [rsp + 0x30]
call fcn.1400b20c0
lea rcx, [rsp + 0x30]
call fcn.14003be94
lea rdx, str.rarreg.key
lea rcx, [0x1400e04f4]
call fcn.14006cfb8
mov rcx, qword [rsp + 0x2030]
xor rcx, rsp
call fcn.1400c6350
mov rbx, qword [rsp + 0x2050]
add rsp, 0x2040
pop rdi
ret
Function at 0x1400b55ac
Capabilities:
Read file on windows
Write file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
mov eax, 0x1070
call fcn.1400d8110
sub rsp, rax
mov rax, qword [0x1401006f0]
xor rax, rsp
mov qword [rsp + 0x1060], rax
lea rcx, [rsp + 0x34]
mov dword [rsp + 0x30], 0x50000
call qword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
lea r8, [rsp + 0x40]
lea rdx, str.VerInfo
lea rcx, [0x1400e14b8]
mov edi, 0xc
xor r9d, r9d
mov dword [rsp + 0x20], edi
call fcn.14006d3dc
lea esi, [rdi - 0xb]
mov ebx, 0x800
lea rcx, [rsp + 0x60]
mov r8b, sil
mov rdx, rbx
call fcn.1400619f4
lea rcx, [rsp + 0x60]
mov rdx, rbx
call fcn.14006119c
lea rdx, str.version.dat
lea rcx, [rsp + 0x60]
mov r8, rbx
call fcn.1400805dc
and dword [rsp + 0x50], 0
lea rdx, [0x1400e3698]
lea rcx, [rsp + 0x60]
call fcn.14003c204
mov rbx, rax
test rax, rax
je 0x1400b567f
lea rcx, [rsp + 0x50]
mov r9, rax
mov r8, rdi
mov rdx, rsi
call fcn.1400c9ab0
mov rcx, rbx
call fcn.1400c8d40
mov eax, dword [rsp + 0x30]
cmp dword [rsp + 0x40], eax
je 0x1400b5726
mov r9, rdi
cmp dword [rsp + 0x50], eax
je 0x1400b56ee
lea r8, [rsp + 0x30]
lea rdx, str.VerInfo
lea rcx, [0x1400e14b8]
call fcn.14006d374
lea rdx, [0x1400e1c4c]
lea rcx, [rsp + 0x60]
call fcn.14003c204
mov rbx, rax
test rax, rax
je 0x1400b56e2
lea rcx, [rsp + 0x30]
mov r9, rax
mov r8, rdi
mov rdx, rsi
call fcn.1400c8f54
mov rcx, rbx
call fcn.1400c8d40
and dword [0x14014897c], 0
jmp 0x1400b57f7
lea rcx, [rsp + 0x50]
lea rdx, [rsp + 0x40]
lea r8, [rsp + 0x50]
mov rax, qword [rcx]
mov qword [rdx], rax
mov eax, dword [rcx + 8]
lea rcx, [0x1400e14b8]
mov dword [rdx + 8], eax
lea rdx, str.VerInfo
call fcn.14006d374
mov eax, dword [rsp + 0x30]
cmp dword [rsp + 0x40], eax
jne 0x1400b5776
cmp dword [rsp + 0x50], eax
je 0x1400b5776
lea rcx, [rsp + 0x40]
lea rdx, [rsp + 0x50]
mov rax, qword [rcx]
mov qword [rdx], rax
mov eax, dword [rcx + 8]
lea rcx, [rsp + 0x60]
mov dword [rdx + 8], eax
lea rdx, [0x1400e1c4c]
call fcn.14003c204
mov rbx, rax
test rax, rax
je 0x1400b5776
lea rcx, [rsp + 0x40]
mov r9, rax
mov r8, rdi
mov rdx, rsi
call fcn.1400c8f54
mov rcx, rbx
call fcn.1400c8d40
mov eax, dword [rsp + 0x48]
mov ecx, dword [rsp + 0x38]
sub rcx, rax
mov eax, dword [rsp + 0x44]
shl rcx, 0x20
sub rcx, rax
mov eax, dword [rsp + 0x34]
add rcx, rax
movabs rax, 0xd6bf94d5e57a42bd
imul rcx
add rdx, rcx
sar rdx, 0x17
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movabs rax, 0x48d159e26af37c05
imul rdx
sar rdx, 0xa
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rdx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, 0x168
test edx, edx
cmovs edx, eax
mov dword [0x14014897c], edx
mov rcx, qword [rsp + 0x1060]
xor rcx, rsp
call fcn.1400c6350
lea r11, [rsp + 0x1070]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rsp, r11
pop rdi
ret
Function at 0x1400b8f3c
Capabilities:
Create process on windows

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
mov eax, 0x20a0
call fcn.1400d8110
sub rsp, rax
mov rax, qword [0x1401006f0]
xor rax, rsp
mov qword [rsp + 0x2090], rax
mov rbp, qword [rsp + 0x20f8]
mov rbx, qword [rsp + 0x2100]
mov r12, rdx
xor edx, edx
mov rdi, r8
lea rcx, [rsp + 0x20]
lea r8d, [rdx + 0x70]
mov rsi, r9
call fcn.1400c7170
cmp byte [rsp + 0x20f0], 0
mov eax, 0x500
lea ecx, [rax + 0x40]
mov dword [rsp + 0x20], 0x70
mov qword [rsp + 0x38], r12
cmove eax, ecx
mov rcx, r12
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x40], rsi
mov dword [rsp + 0x24], eax
call fcn.1400615e8
cmp rax, r12
jne 0x1400b8ff4
lea r8, str.._s
lea rcx, [rsp + 0x90]
mov r9, r12
mov edx, 0x1000
call fcn.140022b7c
lea r11, [rsp + 0x90]
mov qword [rsp + 0x38], r11
lea rcx, [rsp + 0x20]
mov dword [rsp + 0x50], 1
mov byte [0x140148967], 1
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
test eax, eax
jne 0x1400b902b
cmp qword [rsp + 0x30], 0
je 0x1400b902b
and qword [rsp + 0x30], 0
lea rcx, [rsp + 0x20]
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
mov byte [0x140148967], 0
test eax, eax
je 0x1400b90fb
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x483
je 0x1400b90fb
cmp byte [rsp + 0x20f0], 0
jne 0x1400b90f7
mov r8, qword [rsp + 0x88]
lea rdi, [0x140000000]
test r8, r8
je 0x1400b909f
movsxd rdx, dword [0x140190b80]
mov rax, qword [rsp + 0x58]
mov qword [rdi + rdx*8 + 0x190b00], rax
lea eax, [rdx + 1]
mov qword [rdi + rdx*8 + 0x190a80], r8
cdq
and edx, 0xf
add eax, edx
and eax, 0xf
sub eax, edx
mov dword [0x140190b80], eax
jmp 0x1400b90ee
xor ebx, ebx
mov rax, qword [rsp + 0x58]
cmp qword [rbx + rdi + 0x190b00], rax
jne 0x1400b90e1
mov rcx, qword [rbx + rdi + 0x190a80]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
jne 0x1400b90d9
mov r8, qword [rbx + rdi + 0x190a80]
mov qword [rsp + 0x88], r8
jmp 0x1400b90e1
mov r8, qword [rsp + 0x88]
add rbx, 8
cmp rbx, 0x80
jl 0x1400b90a1
test rbp, rbp
je 0x1400b90f7
mov qword [rbp], r8
mov al, 1
jmp 0x1400b90fd
xor al, al
mov rcx, qword [rsp + 0x2090]
xor rcx, rsp
call fcn.1400c6350
add rsp, 0x20a0
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x1400b911c
Capabilities:
Query environment variable

Disassembly:
push rbx
push rsi
push rdi
mov eax, 0x6110
call fcn.1400d8110
sub rsp, rax
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov rax, qword [0x1401006f0]
xor rax, rsp
mov qword [rsp + 0x6100], rax
mov rbx, rdx
mov rsi, rcx
mov rcx, r8
call fcn.1400615e8
mov r11, rax
xor eax, eax
or r8, 0xffffffffffffffff
mov rcx, r8
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea rdx, [rcx - 1]
mov rcx, r8
mov rdi, r11
repne scasw ax, word [rdi]
not rcx
lea rax, [rdx + rcx]
mov edi, 0x1000
cmp rax, rdi
jb 0x1400b9190
xor al, al
jmp 0x1400b92ea
mov r9, rdi
lea r8, [rsp + 0x4100]
mov rdx, r11
mov rcx, rbx
call fcn.1400611e8
lea rcx, [rsp + 0x40]
call fcn.140080d68
nop
mov dword [rsp + 0x20], edi
lea r9, [0x1400e04f4]
lea r8, [rsp + 0x1100]
lea rdx, str.ViewerIgnoreModifications
lea rcx, [0x1400e2048]
call fcn.14006d398
xor ebx, ebx
cmp word [rsp + 0x1100], bx
je 0x1400b91fb
xor r9d, r9d
xor r8d, r8d
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x1100]
call fcn.140080fc8
mov r8d, 0x800
lea rdx, [rsp + 0x3100]
lea rcx, [rsp + 0x40]
call fcn.140080da0
cmp al, bl
je 0x1400b92d9
mov r8d, 0x800
lea rdx, [rsp + 0x100]
lea rcx, [rsp + 0x3100]
call qword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
lea rdx, [0x1400ebaa0]
lea rcx, [rsp + 0x102]
call fcn.1400ca0e4
mov rdi, rax
cmp rax, rbx
je 0x1400b9282
mov word [rax], bx
add rdi, 4
cmp word [rdi], bx
jne 0x1400b9266
lea rdi, [0x1400e0250]
mov r8d, 4
mov rdx, rsi
lea rcx, [rsp + 0x100]
call fcn.1400530d0
cmp al, bl
je 0x1400b92a4
jmp 0x1400b928a
lea rdi, [rsp + 0x100]
mov r8d, 4
lea rdx, [rsp + 0x4100]
mov rcx, rdi
call fcn.1400530d0
cmp al, bl
jne 0x1400b92c6
mov r8d, 0x800
lea rdx, [rsp + 0x3100]
lea rcx, [rsp + 0x40]
call fcn.140080da0
cmp al, bl
jne 0x1400b921b
jmp 0x1400b92d9
mov rcx, qword [rsp + 0x40]
cmp rcx, rbx
je 0x1400b92d5
call fcn.1400c7040
mov al, 1
jmp 0x1400b92ea
mov rcx, qword [rsp + 0x40]
cmp rcx, rbx
je 0x1400b92e8
call fcn.1400c7040
xor al, al
mov rcx, qword [rsp + 0x6100]
xor rcx, rsp
call fcn.1400c6350
add rsp, 0x6110
pop rdi
pop rsi
pop rbx
ret