joyce8/EMBER2024-capa huggingface dataset:
Function at 0x14001c460
Capabilities:
Terminate process

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x30
mov rsi, rcx
call fcn.14000cf60
test al, al
je 0x14001c493
mov rcx, qword [rsi]
mov edx, 0x32
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rsi]
mov edx, 1
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
mov rdi, qword [rsi + 0x38]
mov qword [rsi + 0x38], 0
test rdi, rdi
je 0x14001c4b4
mov rcx, rdi
call fcn.14001c6b0
mov rcx, rdi
call sub.mozglue.dll_void___cdecl_operator_delete_void____ptr64_
mov rcx, qword [rsi + 0x58]
test rcx, rcx
jne 0x14001c648
mov rcx, qword [rsi + 0x50]
test rcx, rcx
je 0x14001c4d0
call qword [sym.imp.mozglue.dll_free]
mov rdi, qword [rsi + 0x38]
test rdi, rdi
jne 0x14001c68c
mov rax, qword [rsi + 0x28]
inc rax
cmp rax, 2
jae 0x14001c51f
mov rax, qword [rsi + 0x20]
inc rax
cmp rax, 2
jae 0x14001c582
mov rax, qword [rsi + 0x18]
inc rax
cmp rax, 2
jae 0x14001c5e5
mov rcx, rsi
add rsp, 0x30
pop rbx
pop rdi
pop rsi
pop r14
pop r15
jmp fcn.1400053c0
lea rdi, [rsi + 0x28]
call fcn.14000d450
mov rbx, rax
mov r14, qword [rsp + 0x58]
mov r15, qword [rdi]
call fcn.14000d460
mov rcx, qword [rax]
mov r10, qword [rcx + 0x10]
mov qword [rsp + 0x20], rbx
mov rcx, rax
mov rdx, r15
mov r8, rdi
mov r9, r14
mov rax, r10
call qword [0x14006a010]
mov rbx, qword [rdi]
call fcn.14000d460
mov rcx, qword [rax]
mov r8, qword [rcx]
mov rcx, rax
mov rdx, rbx
mov rax, r8
call qword [0x14006a010]
mov qword [rdi], 0
jmp 0x14001c4ea
lea rdi, [rsi + 0x20]
call fcn.14000d450
mov rbx, rax
mov r14, qword [rsp + 0x58]
mov r15, qword [rdi]
call fcn.14000d460
mov rcx, qword [rax]
mov r10, qword [rcx + 0x10]
mov qword [rsp + 0x20], rbx
mov rcx, rax
mov rdx, r15
mov r8, rdi
mov r9, r14
mov rax, r10
call qword [0x14006a010]
mov rbx, qword [rdi]
call fcn.14000d460
mov rcx, qword [rax]
mov r8, qword [rcx]
mov rcx, rax
mov rdx, rbx
mov rax, r8
call qword [0x14006a010]
mov qword [rdi], 0
jmp 0x14001c4fb
lea rdi, [rsi + 0x18]
call fcn.14000d450
mov rbx, rax
mov r14, qword [rsp + 0x58]
mov r15, qword [rdi]
call fcn.14000d460
mov rcx, qword [rax]
mov r10, qword [rcx + 0x10]
mov qword [rsp + 0x20], rbx
mov rcx, rax
mov rdx, r15
mov r8, rdi
mov r9, r14
mov rax, r10
call qword [0x14006a010]
mov rbx, qword [rdi]
call fcn.14000d460
mov rcx, qword [rax]
mov r8, qword [rcx]
mov rcx, rax
mov rdx, rbx
mov rax, r8
call qword [0x14006a010]
mov qword [rdi], 0
jmp 0x14001c50c
mov rdx, qword [rsi + 0x68]
sub rdx, rcx
cmp rdx, 0x1000
jb 0x14001c670
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x14001c6a1
add rdx, 0x27
mov rcx, rax
lea rdi, [rsi + 0x58]
call sub.mozglue.dll_void___cdecl_operator_delete_void____ptr64__unsigned_long_long_unsigned___int64__
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], 0
jmp 0x14001c4c1
mov rcx, rdi
call fcn.14001c6b0
mov rcx, rdi
call sub.mozglue.dll_void___cdecl_operator_delete_void____ptr64_
jmp 0x14001c4dd
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
Function at 0x14001cba0
Capabilities:
Get thread local storage value

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x150
mov rdi, rdx
mov rsi, rcx
mov rax, qword [0x140064030]
xor rax, rsp
mov qword [rsp + 0x148], rax
mov ecx, dword [0x140064088]
cmp ecx, 0xffffffff
je 0x14001cbd7
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test al, 3
jne 0x14001cbdc
call fcn.14001cd80
mov eax, dword [0x140066678]
mov ecx, dword [0x1400644c0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jle 0x14001cc36
lea rcx, [0x140066678]
call fcn.14002ef84
cmp dword [0x140066678], 0xffffffff
jne 0x14001cc36
mov ecx, 8
call sub.mozglue.dll_void____ptr64___cdecl_operator_new_unsigned_long_long_unsigned___int64__
mov qword [rax], 0
mov qword [0x140066670], rax
lea rcx, [0x140066678]
call fcn.14002ef24
mov rbx, qword [0x140066670]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
mov rax, qword [0x140064e60]
inc rax
xor ecx, ecx
lea rdx, [0x140064e70]
lea r8d, [rax + rcx]
movzx r8d, r8b
lea r9, [r8 + r8*2]
cmp dword [rdx + r9*8], 0
jne 0x14001ccd7
lea rax, [rdx + r9*8]
mov dword [rax], 1
mov qword [rax + 8], rdi
mov qword [0x140064e60], r8
mov dword [rsi], r8d
mov eax, dword [rax + 0x10]
mov dword [rsi + 4], eax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov eax, dword [rsi]
mov dword [rsp + 0x30], 0xffffffff
mov dword [rsp + 0x2c], eax
cmp eax, 0xffffffff
je 0x14001cce9
mov eax, dword [rsi]
mov dword [rsp + 0x30], 0x100
mov dword [rsp + 0x2c], eax
cmp eax, 0xff
jg 0x14001cd2e
mov rcx, qword [rsp + 0x148]
xor rcx, rsp
call fcn.1400300f0
nop
add rsp, 0x150
pop rbx
pop rdi
pop rsi
ret
inc rcx
cmp rcx, 0x100
jne 0x14001cc59
jmp 0x14001cc8a
lea r8, str.slot____kInvalidSlotValue
lea rcx, [rsp + 0x2c]
lea rdx, [rsp + 0x30]
call fcn.14003b320
test rax, rax
je 0x14001cca6
lea rdx, str._builds_worker_checkouts_gecko_security_sandbox_chromium_base_threading_thread_local_storage.cc
lea rdi, [rsp + 0x30]
mov rcx, rdi
mov r8d, 0x196
mov r9, rax
call fcn.14003afd0
mov rcx, rdi
call fcn.14003b070
jmp 0x14001cca6
lea r8, str.slot____kThreadLocalStorageSize
lea rcx, [rsp + 0x2c]
lea rdx, [rsp + 0x30]
call fcn.14003b320
test rax, rax
je 0x14001ccbb
lea rdx, str._builds_worker_checkouts_gecko_security_sandbox_chromium_base_threading_thread_local_storage.cc
lea rsi, [rsp + 0x30]
mov rcx, rsi
mov r8d, 0x197
mov r9, rax
call fcn.14003afd0
mov rcx, rsi
call fcn.14003b070
jmp 0x14001ccbb
Function at 0x140027410
Capabilities:
Get common file path

Disassembly:
push rsi
sub rsp, 0x240
mov rax, qword [0x140064030]
xor rax, rsp
mov qword [rsp + 0x238], rax
mov eax, dword [0x140064aa8]
mov ecx, dword [0x1400644c0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jle 0x140027490
lea rcx, [0x140064aa8]
call fcn.14002ef84
cmp dword [0x140064aa8], 0xffffffff
jne 0x140027490
lea rcx, str.kernel32
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea rdx, str.SetDefaultDllDirectories
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140064aa0], rax
lea rcx, [0x140064aa8]
call fcn.14002ef24
cmp qword [0x140064aa0], 0
je case.default.0x1400274c4
lea rsi, str.user32.dll
mov rcx, qword [rsp + 0x238]
xor rcx, rsp
call fcn.1400300f0
mov rcx, rsi
xor edx, edx
mov r8d, 0x800
add rsp, 0x240
pop rsi
jmp qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
lea rcx, [rsp + 0x20]
mov edx, 0x105
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea ecx, [rax - 1]
cmp ecx, 0xf9
ja 0x140027503
mov eax, eax
cmp word [rsp + rax*2 + 0x1e], 0x5c
je 0x140027505
cmp eax, 0xf9
ja 0x140027503
mov word [rsp + rax*2 + 0x20], 0x5c
inc rax
jmp 0x140027505
xor eax, eax
lea rsi, [rsp + rax*2]
add rsi, 0x20
lea rdx, str.user32.dll
mov r8d, 0xa
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy]
mov word [rsi + 0x14], 0
lea rcx, [rsp + 0x20]
xor edx, edx
mov r8d, 8
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, qword [rsp + 0x238]
xor rcx, rsp
call fcn.1400300f0
nop
add rsp, 0x240
pop rsi
ret
xchg edi, eax
sbb al, 0x7e
invalid
stc

Function at 0x140027f90
Capabilities:
Get system information on windows

Disassembly:
push rsi
sub rsp, 0x60
mov rax, qword [0x140064030]
xor rax, rsp
mov qword [rsp + 0x58], rax
mov eax, dword [0x140064d74]
mov ecx, dword [0x1400644c0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140027fe0
mov esi, dword [0x140064d70]
mov rcx, qword [rsp + 0x58]
xor rcx, rsp
call fcn.1400300f0
mov eax, esi
add rsp, 0x60
pop rsi
ret
lea rcx, [0x140064d74]
call fcn.14002ef84
cmp dword [0x140064d74], 0xffffffff
jne 0x140027fc5
lea rsi, [rsp + 0x28]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [rsi + 4]
mov dword [0x140064d70], eax
lea rcx, [0x140064d74]
call fcn.14002ef24
jmp 0x140027fc5
Function at 0x14002b2e0
Capabilities:
Check os version

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x140
mov rdi, r8
mov r14, rdx
mov rsi, rcx
mov rax, qword [0x140064030]
xor rax, rsp
mov qword [rsp + 0x138], rax
mov qword [r8], 0xffffffffffffffff
mov eax, dword [rcx + 0x18]
test al, 3
je 0x14002b357
lea rbx, [rsp + 0x24]
mov r8d, 0x110
mov rcx, rbx
xor edx, edx
call sub.ntdll.dll_memset
mov dword [rbx - 4], 0x114
lea rcx, [rsp + 0x20]
call sub.ntdll.dll_RtlGetVersion
test eax, eax
js 0x14002b49b
mov eax, dword [rsi + 0x18]
test al, 2
jne 0x14002b4a2
test al, 1
jne 0x14002b4bd
test al, 8
je 0x14002b36a
xor ebx, ebx
test byte [0x140064a98], 1
je 0x14002b4f1
test al, 0x40
je 0x14002b37d
xor ebx, ebx
test byte [0x140064a98], 4
je 0x14002b4f1
test al, al
jns 0x14002b390
xor ebx, ebx
test byte [0x140064a98], 8
je 0x14002b4f1
bt eax, 8
jae 0x14002b3a5
xor ebx, ebx
test byte [0x140064a98], 0x10
je 0x14002b4f1
test al, 0x10
je 0x14002b3b8
xor ebx, ebx
test byte [0x140064a98], 1
jne 0x14002b4f1
bt eax, 9
jae 0x14002b3cd
xor ebx, ebx
test byte [0x140064a98], 0x20
je 0x14002b4f1
mov rcx, qword [rsi + 0x10]
cmp rcx, 0xffffffffffffffff
je 0x14002b4d8
mov ebx, 2
cmp qword [r14 + 0x10], 0
je 0x14002b4f1
test al, 4
jne 0x14002b4df
mov rcx, r14
call fcn.14002b520
test rax, rax
je 0x14002b4f1
mov r14, rax
movzx ebp, word [rax]
cmp bp, 0x26
jb 0x14002b4f1
movaps xmm0, xmmword [0x140056d70]
lea rdx, [rsp + 0x20]
movaps xmmword [rdx + 0x10], xmm0
movaps xmm0, xmmword [0x140056d60]
movaps xmmword [rdx], xmm0
mov rcx, r14
add rcx, 6
mov r8d, 0x10
call qword [sym.imp.ntdll.dll_RtlCompareMemory]
cmp rax, 0x10
jne 0x14002b4f1
cmp word [r14 + 2], 0x34
jne 0x14002b4f1
mov eax, 2
sub eax, r14d
and eax, 3
add rax, 0x26
cmp ax, bp
jae 0x14002b4f1
cmp dword [rax + r14], 0xfeef04bd
jne 0x14002b4f1
mov ecx, dword [r14 + rax + 8]
mov eax, dword [r14 + rax + 0xc]
shl rcx, 0x20
or rax, rcx
mov qword [rdi], rax
xor ecx, ecx
cmp qword [rsi + 0x10], rax
setae cl
lea ebx, [rcx + rcx*2]
jmp 0x14002b4f1
mov ebx, 2
jmp 0x14002b4f1
xor ebx, ebx
cmp dword [rsp + 0x24], 6
ja 0x14002b4f1
jne 0x14002b34f
cmp dword [rsp + 0x28], 2
ja 0x14002b4f1
jmp 0x14002b34f
xor ebx, ebx
cmp dword [rsp + 0x24], 6
ja 0x14002b4f1
jne 0x14002b357
cmp dword [rsp + 0x28], 2
jae 0x14002b4f1
jmp 0x14002b357
mov ebx, 3
jmp 0x14002b4f1
mov rax, qword [r14 + 8]
mov eax, dword [rax + 8]
xor edx, edx
cmp rcx, rax
setae dl
lea ebx, [rdx + rdx*2]
mov rcx, qword [rsp + 0x138]
xor rcx, rsp
call fcn.1400300f0
mov eax, ebx
add rsp, 0x140
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
Function at 0x140030a80
Capabilities:
Parse pe header

Disassembly:
mov rax, qword [rcx + 8]
movzx ecx, word [rax]
cmp ecx, 0x5a4d
jne 0x140030ab7
movsxd rcx, dword [rax + 0x3c]
cmp dword [rax + rcx], 0x4550
jne 0x140030ab7
movzx edx, word [rax + rcx + 0x14]
cmp edx, 0xf0
jne 0x140030ab7
movzx eax, word [rax + rcx + 0x18]
cmp eax, 0x20b
sete al
ret
xor eax, eax
jmp 0x140030ab6

Function at 0x1400320f0
Capabilities:
Query environment variable

Disassembly:
push rsi
sub rsp, 0x60
mov rax, qword [0x140064030]
xor rax, rsp
mov qword [rsp + 0x58], rax
lea rcx, str.MOZ_ENABLE_HANDLE_VERIFIER
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
test rax, rax
jne 0x14003212f
call fcn.140032240
mov rcx, qword [rsp + 0x58]
xor rcx, rsp
call fcn.1400300f0
nop
add rsp, 0x60
pop rsi
ret
movaps xmm0, xmmword [str.kernel32ext_ms_win_ntuser_windowstation_l1_1_0]
movaps xmmword [rsp + 0x30], xmm0
movabs rax, 0x6c006c0064002e
mov qword [rsp + 0x40], rax
mov word [rsp + 0x48], 0
cmp qword [0x140066ac8], 0
jne 0x14003216d
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [0x140066ac8], rax
lea r9, [rsp + 0x28]
mov qword [r9], 0
lea rax, [0x140066b18]
lea r8, [rsp + 0x30]
mov qword [r8], rax
lea rsi, [0x140066aa8]
mov qword [r8 + 8], rsi
lea rax, [0x140058d9d]
mov qword [r8 + 0x10], rax
lea rax, [0x1400532c0]
mov qword [r8 + 0x18], rax
mov byte [r8 + 0x20], 0
lea rcx, [0x140066b20]
lea rdx, [0x140053360]
call qword [sym.imp.KERNEL32.dll_InitOnceExecuteOnce]
test eax, eax
je 0x140032116
cmp qword [rsp + 0x28], 0
je 0x140032116
lea r9, [rsp + 0x28]
mov qword [r9], 0
lea rax, [0x140066b28]
lea r8, [rsp + 0x30]
mov qword [r8], rax
mov qword [r8 + 8], rsi
lea rax, [0x140058d8d]
mov qword [r8 + 0x10], rax
lea rax, [0x1400532f0]
mov qword [r8 + 0x18], rax
mov byte [r8 + 0x20], 0
lea rcx, [0x140066b30]
lea rdx, [0x140053360]
call qword [sym.imp.KERNEL32.dll_InitOnceExecuteOnce]
test eax, eax
je 0x140032116
cmp qword [rsp + 0x28], 0
jne 0x14003211b
jmp 0x140032116
Function at 0x1400348d0
Capabilities:
Create thread

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0x228
mov rdi, rdx
mov rsi, rcx
mov rax, qword [0x140064030]
xor rax, rsp
mov qword [rsp + 0x220], rax
lea rbx, [rsp + 0x38]
mov rcx, rbx
call fcn.140024600
lea rdx, [rsp + 0x138]
mov rcx, rbx
call fcn.140034a90
lea rbx, [rsp + 0x138]
mov rcx, rbx
call fcn.140024600
lea r14, [rsp + 0x120]
mov rcx, rbx
mov rdx, r14
call fcn.140035c00
cmp byte [r14 + 0x10], 0
jne 0x140034a1b
cmp byte [rsp + 0x120], 0
je 0x140034a1b
lea rcx, str.MOZ_DISABLE_POISON_IO_INTERPOSER1
call sub.api_ms_win_crt_environment_l1_1_0.dll__putenv
mov ecx, 0x38
call qword [sym.imp.mozglue.dll_moz_xmalloc]
mov rbx, rax
movups xmm0, xmmword [rsi]
movups xmmword [rax], xmm0
xor r12d, r12d
mov ecx, 8
xor edx, edx
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
mov qword [rbx + 0x10], rax
lea r15, [rbx + 0x18]
test rdi, rdi
lea r14, [0x140059f83]
cmovne r14, rdi
mov qword [rbx + 0x18], r12
mov qword [rbx + 0x28], r12
mov qword [rbx + 0x30], 0xf
mov byte [rbx + 0x18], 0
mov rcx, r14
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov rdi, rax
cmp rax, 0xf
jbe 0x1400349cb
mov rcx, r15
mov rdx, rdi
mov r9, r14
call fcn.140028530
jmp 0x1400349e2
mov qword [rbx + 0x28], rdi
mov rcx, r15
mov rdx, r14
mov r8, rdi
call sub.ntdll.dll_memcpy
mov byte [rbx + rdi + 0x18], 0
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0x10000
lea r8, [0x140036dc0]
xor ecx, ecx
xor edx, edx
mov r9, rbx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
test rax, rax
jne 0x140034a5c
lea rcx, [rsp + 0x30]
call fcn.140038e80
lea rcx, [rsp + 0x138]
call fcn.140024c50
mov rcx, rsi
call fcn.140034b10
lea rcx, [rsp + 0x38]
call fcn.140024c50
mov rcx, qword [rsp + 0x220]
xor rcx, rsp
call fcn.1400300f0
nop
add rsp, 0x228
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
lea rsi, [rsp + 0x30]
mov qword [rsi], 0
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rsi
call fcn.140038e80
lea rcx, [rsp + 0x138]
call fcn.140024c50
jmp 0x140034a30
Function at 0x140039f50
Capabilities:
Print debug messages

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x860
mov qword [rsp + 0x888], rdx
mov qword [rsp + 0x890], r8
mov qword [rsp + 0x898], r9
mov rax, qword [0x140064030]
xor rax, rsp
mov qword [rsp + 0x858], rax
call qword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
test eax, eax
je 0x140039ff5
lea rsi, [rsp + 0x888]
mov qword [rsp + 0x28], rsi
lea rdi, [rsp + 0x30]
mov rcx, rdi
call qword [sym.imp.mozglue.dll_protected:_void___cdecl_mozilla::PrintfTarget::constructor_void____ptr64]
lea rax, [0x1400552b8]
mov qword [rdi], rax
lea rbx, [rsp + 0x50]
mov qword [rdi + 0x10], rbx
mov qword [rdi + 0x18], 0x800
lea rdx, str._n_nBROWSERBROWSERBROWSERBROWSER_n__debug_me____lu_n_n
mov rcx, rdi
mov r8, rsi
call qword [sym.imp.mozglue.dll_public:_bool___cdecl_mozilla::PrintfTarget::vprint_char_const____ptr64__char____ptr64____ptr64]
mov rax, qword [rdi + 8]
mov ecx, 0x7ff
cmp rax, rcx
cmovb rcx, rax
mov byte [rsp + rcx + 0x50], 0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__fileno]
cmp eax, 0xfffffffe
je 0x14003a063
mov ecx, eax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__dup]
lea rdx, [0x140059386]
mov ecx, eax
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll__fdopen]
test rax, rax
je 0x14003a063
mov rsi, rax
lea rdi, [rsp + 0x888]
mov qword [rsp + 0x50], rdi
call fcn.140015a50
mov rcx, qword [rax]
mov qword [rsp + 0x20], rdi
lea r8, str._n_nBROWSERBROWSERBROWSERBROWSER_n__debug_me____lu_n_n
mov rdx, rsi
xor r9d, r9d
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___stdio_common_vfprintf]
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rcx, qword [rsp + 0x858]
xor rcx, rsp
call fcn.1400300f0
nop
add rsp, 0x860
pop rbx
pop rdi
pop rsi
ret
Function at 0x140046dd0
Capabilities:
Create pipe

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x50
mov r14, qword [rsp + 0xc8]
mov rax, qword [0x140064030]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov qword [r14], 0xffffffffffffffff
mov esi, 5
cmp ecx, 3
jne 0x140046eb4
mov edi, dword [rsp + 0xc0]
mov r11d, dword [rsp + 0xb8]
mov ecx, dword [rsp + 0xb0]
mov eax, dword [rsp + 0xa8]
mov r10d, dword [rsp + 0xa0]
cmp qword [r8 + 0x18], 8
jb 0x140046e36
mov r8, qword [r8]
mov rsi, qword [rdx]
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x28], r11d
mov dword [rsp + 0x20], ecx
mov qword [rsp + 0x38], 0
mov rcx, r8
mov edx, r9d
mov r8d, r10d
mov r9d, eax
call qword [sym.imp.KERNEL32.dll_CreateNamedPipeW]
cmp rax, 0xffffffffffffffff
je 0x140046ecf
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
xor r15d, r15d
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r15d
mov dword [rsp + 0x30], 3
lea rbx, [rsp + 0x40]
mov rcx, rax
mov rdx, rdi
mov r8, rsi
mov r9, rbx
call qword [sym.imp.KERNEL32.dll_DuplicateHandle]
cmp eax, 1
sbb r15, r15
or r15, qword [rbx]
mov qword [r14], r15
xor eax, eax
cmp r15, 0xffffffffffffffff
sete al
lea esi, [rax + rax*4]
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.1400300f0
mov eax, esi
add rsp, 0x50
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret
mov r15, 0xffffffffffffffff
jmp 0x140046ea5

Function at 0x140049270
Capabilities:
Read file via mapping

Disassembly:
push rsi
push rdi
sub rsp, 0x38
mov edi, edx
mov rsi, rcx
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
mov dword [rsp + 0x20], edx
mov qword [rsp + 0x28], 0
mov rcx, 0xffffffffffffffff
xor edx, edx
mov r8d, 0x8000004
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CreateFileMappingW]
mov rcx, rsi
mov rdx, rax
call fcn.14000d350
mov rcx, qword [rsi]
lea rax, [rcx + 1]
cmp rax, 2
jb 0x1400492da
mov eax, edi
mov qword [rsp + 0x20], rax
mov edx, 6
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov qword [rsi + 8], rax
mov rax, rsi
add rsp, 0x38
pop rdi
pop rsi
ret
Function at 0x14004c050
Capabilities:
Create thread

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x38
mov rax, r8
mov r8, rdx
mov rdi, rcx
mov rsi, qword [rsp + 0x90]
mov edx, dword [rsp + 0x80]
mov r10, qword [rsp + 0x88]
mov qword [rsi], 0
mov rcx, qword [rcx]
mov qword [rsp + 0x30], r10
mov dword [rsp + 0x28], edx
mov qword [rsp + 0x20], r9
xor r14d, r14d
xor edx, edx
mov r9, rax
call qword [sym.imp.KERNEL32.dll_CreateRemoteThread]
test rax, rax
je 0x14004c0e8
mov rbx, rax
mov rdi, qword [rdi]
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], r14d
mov dword [rsp + 0x30], 3
mov rcx, rax
mov rdx, rbx
mov r8, rdi
mov r9, rsi
call qword [sym.imp.KERNEL32.dll_DuplicateHandle]
xor ecx, ecx
test eax, eax
sete cl
lea eax, [rcx + rcx*4]
add rsp, 0x38
pop rbx
pop rdi
pop rsi
pop r14
ret
add rsp, 0x38
pop rbx
pop rdi
pop rsi
pop r14
jmp qword [sym.imp.KERNEL32.dll_GetLastError]

Function at 0x1400524b0
Capabilities:
Terminate process

Disassembly:
push rsi
sub rsp, 0x20
mov rsi, rcx
call fcn.14000cf60
test al, al
je 0x1400524d2
mov rcx, qword [rsi]
xor edx, edx
add rsp, 0x20
pop rsi
jmp qword [sym.imp.KERNEL32.dll_TerminateProcess]
nop
add rsp, 0x20
pop rsi
ret

Function at 0x140053e10
Capabilities:
Get system information on windows

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0x58
mov rsi, rcx
mov rax, qword [0x140064030]
xor rax, rsp
mov qword [rsp + 0x50], rax
mov eax, dword [0x140064d74]
mov ecx, dword [0x1400644c0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140053eb3
mov r14, qword [rsi + 0x10]
test r14, r14
je 0x140053e8f
mov r15, qword [rsi + 8]
shl r14, 4
add r14, r15
mov edi, dword [0x140064d70]
lea rbx, [rsp + 0x20]
mov r12, qword [sym.imp.KERNEL32.dll_VirtualProtect]
mov r8d, dword [r15]
mov rcx, qword [r15 + 8]
mov rdx, rdi
mov r9, rbx
call r12
add r15, 0x10
cmp r15, r14
jne 0x140053e76
mov qword [rsi + 0x10], 0
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.1400300f0
nop
add rsp, 0x58
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
lea rcx, [0x140064d74]
call fcn.14002ef84
cmp dword [0x140064d74], 0xffffffff
jne 0x140053e50
lea rdi, [rsp + 0x20]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [rdi + 4]
mov dword [0x140064d70], eax
lea rcx, [0x140064d74]
call fcn.14002ef24
jmp 0x140053e50
Function at 0x409a84
Capabilities:
Get http content length

Disassembly:
push rbx
sub rsp, 0x90
mov qword [rsp + 0x30], 0xfffffffffffffffe
lea rcx, [rsp + 0x38]
call fcn.004044f8
cmp qword [rax + 0x20], 0x10
jb 0x409aad
mov rcx, qword [rax + 8]
jmp 0x409ab1
lea rcx, [rax + 8]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x0046a840], rax
cmp qword [rsp + 0x58], 0x10
jb 0x409ad0
mov rcx, qword [rsp + 0x40]
call fcn.00409e8c
lea rcx, [rsp + 0x60]
call fcn.00404f10
mov rbx, rax
lea rcx, [rsp + 0x38]
call fcn.00403900
nop
cmp qword [rbx + 0x20], 0x10
jb 0x409af5
mov rbx, qword [rbx + 8]
jmp 0x409af9
add rbx, 8
cmp qword [rax + 0x20], 0x10
jb 0x409b06
mov rdx, qword [rax + 8]
jmp 0x409b0a
lea rdx, [rax + 8]
mov rcx, qword [0x0046a840]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 1]
mov rcx, rbx
call rax
mov qword [0x0046a850], rax
cmp qword [rsp + 0x58], 0x10
jb 0x409b47
mov rcx, qword [rsp + 0x40]
call fcn.00409e8c
mov qword [rsp + 0x58], SafeArrayGetDim
mov qword [rsp + 0x50], 0
mov byte [rsp + 0x40], 0
cmp qword [rsp + 0x80], 0x10
jb 0x409b73
mov rcx, qword [rsp + 0x68]
call fcn.00409e8c
lea rcx, [rsp + 0x60]
call fcn.00405928
cmp qword [rax + 0x20], 0x10
jb 0x409b8a
mov rdx, qword [rax + 8]
jmp 0x409b8e
lea rdx, [rax + 8]
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0x80000000
xor r9d, r9d
xor r8d, r8d
mov rcx, qword [0x0046a850]
call qword [sym.imp.WININET.dll_InternetOpenUrlA]
mov qword [0x0046a848], rax
cmp qword [rsp + 0x80], 0x10
jb 0x409bd5
mov rcx, qword [rsp + 0x68]
call fcn.00409e8c
mov rax, qword [0x0046a848]
mov dword [0x0046a874], 4
mov qword [rsp + 0x20], 0
lea r9, [0x0046a874]
lea r8, [0x0046a870]
mov edx, 0x20000005
mov rcx, rax
call qword [sym.imp.WININET.dll_HttpQueryInfoA]
mov ecx, dword [0x0046a870]
call fcn.00409e94
mov qword [0x0046a868], rax
lea rcx, [rsp + 0x60]
call fcn.00407cf4
nop
cmp qword [rax + 0x20], 0x10
jb 0x409c2e
mov rdx, qword [rax + 8]
jmp 0x409c32
lea rdx, [rax + 8]
mov rcx, qword [0x0046a840]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea r9, [0x0046a878]
mov r8d, dword [0x0046a870]
mov rdx, qword [0x0046a868]
mov rcx, qword [0x0046a848]
call rax
nop
cmp qword [rsp + 0x80], 0x10
jb 0x409c73
mov rcx, qword [rsp + 0x68]
call fcn.00409e8c
lea rcx, [rsp + 0x60]
call fcn.00402df8
nop
cmp qword [rax + 0x20], 0x10
jb 0x409c8b
mov rdx, qword [rax + 8]
jmp 0x409c8f
lea rdx, [rax + 8]
mov ebx, dword [0x0046a870]
mov rcx, qword [0x0046a830]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r9d, 0x40
mov r8d, 0x1000
mov rdx, rbx
xor ecx, ecx
call rax
mov qword [0x0046a858], rax
cmp qword [rsp + 0x80], 0x10
jb 0x409cd8
mov rcx, qword [rsp + 0x68]
call fcn.00409e8c
mov rax, qword [0x0046a858]
mov r8d, dword [0x0046a870]
mov rdx, qword [0x0046a868]
mov rcx, rax
add rsp, 0x90
pop rbx
jmp fcn.00432010