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

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x30
mov ebx, r8d
mov esi, edx
mov rdi, rcx
mov rax, qword [0x14042f038]
xor rax, rsp
mov qword [rsp + 0x28], rax
cmp byte [rcx + 8], 0
je 0x1402cdd4f
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
mov edx, esi
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
test eax, eax
je 0x1402cdd54
test bl, bl
je 0x1402cdd2b
cmp byte [rdi + 8], 0
je 0x1402cddb0
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
mov edx, 0xea60
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, rdi
mov edx, esi
call fcn.140100890
mov sil, 1
mov rcx, qword [rsp + 0x28]
xor rcx, rsp
call fcn.14024c3c0
mov eax, esi
add rsp, 0x30
pop rbx
pop rdi
pop rsi
ret
mov rcx, qword [rdi]
jmp 0x1402cdcfd
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp byte [rdi + 8], 0
je 0x1402cdd7c
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
mov edx, 0xea60
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
je 0x1402cdd81
xor esi, esi
jmp 0x1402cdd38
mov rcx, qword [rdi]
jmp 0x1402cdd69
mov dword [rsp + 0x24], 0xaaaaaaaa
cmp byte [rdi + 8], 0
je 0x1402cddb8
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
lea rdx, [rsp + 0x24]
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
test eax, eax
je 0x1402cdd2b
mov esi, dword [rsp + 0x24]
jmp 0x1402cdd2b
mov rcx, qword [rdi]
jmp 0x1402cdd20
mov rcx, qword [rdi]
jmp 0x1402cdd98

Function at 0x1402cec70
Capabilities:
Delete registry key

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x80
mov rsi, rdx
mov rdi, rcx
mov rax, qword [0x14042f038]
xor rax, rsp
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0x70]
mov qword [rax], 0
mov r9d, 0x20019
or r9d, dword [rcx + 8]
mov rcx, qword [rcx]
mov qword [rsp + 0x20], rax
xor r8d, r8d
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov ebx, eax
test eax, eax
je 0x1402cecd6
mov rcx, qword [rsp + 0x78]
xor rcx, rsp
call fcn.14024c3c0
mov eax, ebx
add rsp, 0x80
pop rbx
pop rdi
pop rsi
ret
lea rax, [rsp + 0x6c]
mov dword [rax], 0
mov rcx, qword [rsp + 0x70]
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x38], rax
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], 0
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyW]
mov ebx, eax
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
test ebx, ebx
jne 0x1402cecbc
mov ebx, 0x91
cmp dword [rsp + 0x6c], 0
jne 0x1402cecbc
mov r8d, dword [rdi + 8]
mov rcx, qword [rdi]
mov rdx, rsi
xor r9d, r9d
call qword [sym.imp.ADVAPI32.dll_RegDeleteKeyExW]
mov ebx, eax
jmp 0x1402cecbc

Function at 0x1402ced50
Capabilities:
Query or enumerate registry value

Disassembly:
sub rsp, 0x38
mov rax, qword [rsp + 0x60]
mov rcx, qword [rcx]
mov qword [rsp + 0x28], r9
mov qword [rsp + 0x20], r8
xor r8d, r8d
mov r9, rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
nop
add rsp, 0x38
ret
Function at 0x1402ced80
Capabilities:
Query or enumerate registry value

Disassembly:
push rsi
push rdi
sub rsp, 0x58
mov rsi, r8
mov rax, qword [0x14042f038]
xor rax, rsp
mov qword [rsp + 0x50], rax
lea r9, [rsp + 0x4c]
mov dword [r9], ntohl
lea rax, [rsp + 0x40]
mov qword [rax], 0
lea r8, [rsp + 0x3c]
mov dword [r8], 8
mov rcx, qword [rcx]
mov qword [rsp + 0x28], r8
mov qword [rsp + 0x20], rax
xor r8d, r8d
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov edi, eax
test eax, eax
je 0x1402cedee
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.14024c3c0
mov eax, edi
add rsp, 0x58
pop rdi
pop rsi
ret
mov eax, dword [rsp + 0x4c]
and eax, 0xfffffff7
mov edi, 0x3f4
cmp eax, 3
jne 0x1402cedd8
cmp dword [rsp + 0x3c], 8
jne 0x1402cedd8
mov rax, qword [rsp + 0x40]
mov qword [rsi], rax
xor edi, edi
jmp 0x1402cedd8

Function at 0x1402cee20
Capabilities:
Set registry value

Disassembly:
sub rsp, 0x38
mov eax, dword [rsp + 0x60]
mov rcx, qword [rcx]
mov dword [rsp + 0x28], r9d
mov qword [rsp + 0x20], r8
xor r8d, r8d
mov r9d, eax
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
nop
add rsp, 0x38
ret
Function at 0x1402dfe80
Capabilities:
Encode data using xor
Hash data with crc32

Disassembly:
push rsi
sub rsp, 0x20
lea rax, [0x140448cc0]
xor ecx, ecx
mov edx, 0xedb88320
mov r9d, ecx
shr r9d, 1
mov r8d, ecx
and r8d, 1
neg r8d
and r8d, edx
xor r8d, r9d
mov r10d, r8d
shr r10d, 1
mov r9d, ecx
shl r9d, 0x1e
sar r9d, 0x1f
and r9d, edx
xor r9d, r10d
mov r10d, r9d
shr r10d, 6
mov r11d, ecx
shl r11d, 0x1d
sar r11d, 0x1f
and r11d, 0x76dc419
mov esi, ecx
shl esi, 0x1c
sar esi, 0x1f
and esi, 0xedb8832
xor esi, r11d
mov r11d, ecx
shl r11d, 0x1b
sar r11d, 0x1f
and r11d, 0x1db71064
xor r11d, esi
mov esi, ecx
shl esi, 0x1a
sar esi, 0x1f
and esi, 0x3b6e20c8
xor esi, r11d
xor esi, r10d
shl r8d, 0x1a
sar r8d, 0x1f
and r8d, 0x76dc4190
xor r8d, esi
shl r9d, 0x1a
sar r9d, 0x1f
and r9d, edx
xor r9d, r8d
mov dword [rax], r9d
inc rcx
add rax, 4
cmp rcx, 0x100
jne 0x1402dfe93
mov eax, 0x100
lea rcx, [0x140448cc0]
mov edx, dword [rcx + rax*4 - 0x400]
movzx r8d, dl
shr edx, 8
xor edx, dword [rcx + r8*4]
mov dword [rcx + rax*4], edx
inc rax
cmp rax, 0x800
jne 0x1402dff56
lea rax, [0x14024b4c0]
mov qword [0x14044acc0], rax
mov qword [0x140448cb8], rax
lea rsi, [0x14024b3d0]
mov qword [0x14044acc8], rsi
call fcn.1403416d0
test eax, eax
jne 0x1402dffa9
mov qword [0x140448cb8], rsi
add rsp, 0x20
pop rsi
ret

Function at 0x1402e1d00
Capabilities:
Terminate process

Disassembly:
push rsi
push rdi
sub rsp, 0x168
mov rsi, rcx
mov rax, qword [0x14042f038]
xor rax, rsp
mov qword [rsp + 0x160], rax
mov rax, qword [0x14044ae98]
test rax, rax
je 0x1402e1e05
cmp eax, 2
jne 0x1402e1d7c
mov ecx, 2
call fcn.1401ee3d0
test al, al
je 0x1402e1dd5
lea rdx, str....._third_partycrashpadcrashpadclientcrashpad_client_win.cc
lea rsi, [rsp + 0x28]
mov rcx, rsi
mov r8d, 0x8e
mov r9d, 2
call fcn.1400ee420
lea rcx, [rsp + 0x38]
lea rdx, str.crash_server_failed_to_launch__self_terminating
mov r8d, 0x2f
jmp 0x1402e1e56
mov eax, 1
lock xadd qword [0x14044aed0], rax
test rax, rax
jle 0x1402e1d9c
mov ecx, 0xffffffff
xor edx, edx
call qword [sym.imp.KERNEL32.dll_SleepEx]
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov dword [0x14044ae50], eax
mov qword [0x14044ae48], rsi
mov rcx, qword [0x1404335d0]
call qword [sym.imp.KERNEL32.dll_SetEvent]
mov ecx, 0xea60
call qword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, 2
call fcn.1401ee3d0
test al, al
jne 0x1402e1e24
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
mov edx, 0xffff7001
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
mov rcx, qword [rsp + 0x160]
xor rcx, rsp
call fcn.14024c3c0
xor eax, eax
add rsp, 0x168
pop rdi
pop rsi
ret
mov rdi, qword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, 1
call rdi
mov rax, qword [0x14044ae98]
test rax, rax
je 0x1402e1e0c
jmp 0x1402e1d2e
lea rdx, str....._third_partycrashpadcrashpadclientcrashpad_client_win.cc
lea rsi, [rsp + 0x28]
mov rcx, rsi
mov r8d, ILCreateFromPathW
mov r9d, 2
call fcn.1400ee420
lea rcx, [rsp + 0x38]
lea rdx, str.crash_server_did_not_respond__self_terminating
mov r8d, 0x2e
call fcn.1402885e0
mov rcx, rsi
call fcn.1400ee910
jmp 0x1402e1dd5
Function at 0x1402e2a50
Capabilities:
Prepare http request

Disassembly:
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x68
mov rdi, rcx
mov rax, qword [0x14042f038]
xor rax, rsp
mov qword [rsp + 0x60], rax
movzx ebp, byte [rcx + 0xd0]
shl ebp, 0x17
or ebp, 0x100
lea rax, [rcx + 0xf8]
movzx ecx, byte [rcx + 0x10f]
mov r8d, ecx
and r8d, 0x7f
test cl, cl
cmovs rax, qword [rdi + 0xf8]
mov rsi, rdx
lea rdx, [rsp + 0x38]
mov qword [rdx], rax
cmovs r8, qword [rdi + 0x100]
mov qword [rdx + 8], r8
lea rbx, [rsp + 0x48]
mov rcx, rbx
call fcn.14034a4a0
cmp byte [rbx + 0x17], 0
jns 0x1402e2ac8
mov rbx, qword [rsp + 0x48]
mov rcx, qword [rdi + 0x28]
mov rdx, qword [rdi + 0x110]
mov dword [rsp + 0x30], ebp
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov r8, rbx
xor r9d, r9d
call qword [sym.imp.WINHTTP.dll_WinHttpOpenRequest]
lea rcx, [0x1403b5a78]
mov qword [rsi], rcx
mov qword [rsi + 8], rax
mov byte [rsi + 0x10], 0
cmp byte [rsp + 0x5f], 0
jns 0x1402e2b0e
mov rcx, qword [rsp + 0x48]
call fcn.14024ac18
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.14024c3c0
mov rax, rsi
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
ret

Function at 0x1402e35a0
Capabilities:
Receive http response

Disassembly:
push rsi
sub rsp, 0x30
mov rsi, rcx
mov rdx, qword [rcx + 0x160]
mov r8, qword [rcx + 0x168]
mov rax, r8
sub rax, rdx
cmp rax, 0x3fff
ja 0x1402e3607
lea rcx, [rsi + 0x160]
mov edx, 0x4000
sub rdx, rax
call fcn.1401d5d50
mov rdx, qword [rsi + 0x160]
mov r8, qword [rsi + 0x168]
cmp rdx, r8
je 0x1402e3629
sub r8d, edx
mov rcx, qword [rsi + 0x40]
xor r9d, r9d
call qword [sym.imp.WINHTTP.dll_WinHttpReadData]
test eax, eax
je 0x1402e361f
xor eax, eax
add rsp, 0x30
pop rsi
ret
cmp rax, 0x4000
je 0x1402e35e6
lea r8, [rdx + 0x4000]
mov qword [rsi + 0x168], r8
jmp 0x1402e35eb
add rsp, 0x30
pop rsi
jmp fcn.14034a590
lea rax, str.front___called_on_an_empty_vector
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s
lea rdx, str....._buildtools_third_partylibc_trunkinclude_vector
lea r9, str._empty__
mov r8d, 0x22b
call fcn.14028c680
int3

Function at 0x14030e2f0
Capabilities:
Get common file path

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x268
mov rsi, rdx
mov edi, ecx
mov rax, qword [0x14042f038]
xor rax, rsp
mov qword [rsp + 0x260], rax
lea rbx, [rsp + 0x50]
mov r8d, 0x208
mov rcx, rbx
mov dl, 0xaa
call fcn.14024e4f0
mov word [rbx], 0
mov qword [rsp + 0x20], rbx
xor ecx, ecx
mov edx, edi
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
mov edi, eax
test eax, eax
js 0x14030e37f
lea r14, [rsp + 0x28]
mov qword [r14], rbx
mov rcx, rbx
call fcn.140272ba4
mov qword [r14 + 8], rax
lea rbx, [rsp + 0x38]
mov rcx, rbx
mov rdx, r14
call fcn.1401ed0e0
mov rcx, rsi
mov rdx, rbx
call fcn.1400eb210
mov rcx, rbx
call fcn.1401ed260
test edi, edi
setns bl
mov rcx, qword [rsp + 0x260]
xor rcx, rsp
call fcn.14024c3c0
mov eax, ebx
add rsp, 0x268
pop rbx
pop rdi
pop rsi
pop r14
ret
Function at 0x14030e8b0
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0x38
mov rax, qword [0x14042f038]
xor rax, rsp
mov qword [rsp + 0x30], rax
movups xmm0, xmmword [rdx]
movaps xmmword [rsp + 0x20], xmm0
mov rdi, qword [rcx + 0x50]
mov r12, qword [rcx + 0x58]
mov ebx, 1
cmp rdi, r12
je 0x14030e944
mov rsi, r8
mov r14, rcx
lea r15, [rsp + 0x20]
mov rcx, rdi
mov rdx, r15
call fcn.14030f710
test al, al
jne 0x14030e90c
add rdi, 0x70
cmp rdi, r12
jne 0x14030e8f1
mov rdi, r12
cmp rdi, qword [r14 + 0x58]
je 0x14030e944
cmp byte [rdi + 0x27], 0
jns 0x14030e91e
mov rcx, qword [rdi + 0x10]
jmp 0x14030e922
lea rcx, [rdi + 0x10]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov ecx, eax
shr ecx, 3
and ecx, 2
cmp eax, 0xffffffff
mov ebx, 1
cmovne ebx, ecx
test ebx, ebx
jne 0x14030e944
mov qword [rsi], rdi
xor ebx, ebx
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.14024c3c0
mov eax, ebx
add rsp, 0x38
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret

Function at 0x14030ead0
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x40
mov rax, qword [0x14042f038]
xor rax, rsp
mov qword [rsp + 0x38], rax
movups xmm0, xmmword [rdx]
movaps xmmword [rsp + 0x20], xmm0
mov r14, qword [rcx + 0x50]
mov r12, qword [rcx + 0x58]
mov esi, 1
cmp r14, r12
je 0x14030eb58
mov rdi, r9
mov ebp, r8d
mov rbx, rcx
lea r15, [rsp + 0x20]
mov rcx, r14
mov rdx, r15
call fcn.14030f710
test al, al
jne 0x14030eb30
add r14, 0x70
cmp r14, r12
jne 0x14030eb15
mov r14, r12
cmp r14, qword [rbx + 0x58]
je 0x14030eb58
mov eax, dword [r14 + 0x68]
cmp eax, ebp
jne 0x14030eb4b
cmp byte [r14 + 0x27], 0
jns 0x14030eb76
mov rcx, qword [r14 + 0x10]
jmp 0x14030eb7a
xor ecx, ecx
cmp eax, 1
sete cl
lea esi, [rcx + rcx*2]
inc esi
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.14024c3c0
mov eax, esi
add rsp, 0x40
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
lea rcx, [r14 + 0x10]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x14030eb58
shr eax, 3
and eax, 2
mov esi, eax
jne 0x14030eb58
mov byte [rbx + 0x48], 1
mov qword [rdi], r14
xor esi, esi
jmp 0x14030eb58
Function at 0x140311500
Capabilities:
Create process on windows

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0xb8
mov rsi, rcx
mov rax, qword [0x14042f038]
xor rax, rsp
mov qword [rsp + 0xb0], rax
movabs r14, 0xaaaaaaaaaaaaaaaa
lea rdi, [rsp + 0x50]
mov qword [rdi + 0x50], r14
movaps xmm0, xmmword [0x1403be790]
movaps xmmword [rdi + 0x40], xmm0
movaps xmmword [rdi + 0x30], xmm0
movaps xmmword [rdi + 0x20], xmm0
movaps xmmword [rdi + 0x10], xmm0
movaps xmmword [rdi], xmm0
lea rdx, str.PinShortcutToTaskbar
lea r8, str.....chromeinstallerutil_taskbar_util.cc
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov r9d, 0x79
call fcn.1401ee3a0
mov rcx, rdi
mov rdx, rbx
xor r8d, r8d
call fcn.1401fb430
call fcn.140206f90
cmp eax, 0xd
jge 0x1403115e7
cmp byte [rsi + 0x17], 0
jns 0x140311590
mov rsi, qword [rsi]
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
lea rdx, str.taskbarpin
xor ecx, ecx
mov r8, rsi
xor r9d, r9d
call qword [sym.imp.SHELL32.dll_ShellExecuteW]
cmp rax, 0x21
setge sil
lea rcx, [rsp + 0x50]
call fcn.1401fb490
mov rcx, qword [rsp + 0xb0]
xor rcx, rsp
call fcn.14024c3c0
mov eax, esi
add rsp, 0xb8
pop rbx
pop rdi
pop rsi
pop r14
ret
lea rdi, [rsp + 0x30]
mov qword [rdi], r14
mov rcx, rdi
call fcn.140311800
cmp qword [rdi], 0
je 0x14031166f
cmp byte [rsi + 0x17], 0
jns 0x140311606
mov rsi, qword [rsi]
mov rcx, rsi
call qword [sym.imp.SHELL32.dll_ILCreateFromPathW]
mov rdi, rax
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
mov rax, qword [rax + 0x80]
xor edx, edx
mov r8, rdi
mov r9d, 4
call qword [case.0x1402ceac0.0]
test eax, eax
setns sil
test rdi, rdi
je 0x140311646
mov rcx, rdi
call qword [sym.imp.SHELL32.dll_ILFree]
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1403115be
mov qword [rsp + 0x30], 0
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x1402ceac0.0]
jmp 0x1403115be
xor esi, esi
jmp 0x1403115be
Function at 0x140327c40
Capabilities:
Hash data using sha512

Disassembly:
movabs rax, 0x6a09e667f3bcc908
mov qword [rcx], rax
movabs rax, 0xbb67ae8584caa73b
mov qword [rcx + 8], rax
movabs rax, 0x3c6ef372fe94f82b
mov qword [rcx + 0x10], rax
movabs rax, 0xa54ff53a5f1d36f1
mov qword [rcx + 0x18], rax
movabs rax, 0x510e527fade682d1
mov qword [rcx + 0x20], rax
movabs rax, 0x9b05688c2b3e6c1f
mov qword [rcx + 0x28], rax
movabs rax, 0x1f83d9abfb41bd6b
mov qword [rcx + 0x30], rax
movabs rax, 0x5be0cd19137e2179
mov qword [rcx + 0x38], rax
movabs rax, 0x4000000000
mov qword [rcx + 0xd0], rax
xorps xmm0, xmm0
movups xmmword [rcx + 0x40], xmm0
mov eax, 1
ret
Function at 0x14032bba0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0x88
mov rbx, r8
mov rsi, rdx
mov rdi, rcx
mov edx, dword [rsp + 0xe0]
mov rax, qword [0x14042f038]
xor rax, rsp
mov qword [rsp + 0x80], rax
movsxd r8, dword [rcx + 0x18]
lea ecx, [rdx + 4]
mov r11, rcx
shr r11, 6
xor eax, eax
mov r10d, 0
cmp r11, r8
jae 0x14032bbfc
mov r10, qword [r9 + r11*8]
shr r10, cl
shl r10d, 5
and r10d, 0x20
lea ecx, [rdx + 3]
mov r11, rcx
shr r11, 6
cmp r11, r8
jae 0x14032bc18
mov rax, qword [r9 + r11*8]
shr rax, cl
shl eax, 4
and eax, 0x10
or eax, r10d
lea ecx, [rdx + 2]
mov r14, rcx
shr r14, 6
xor r10d, r10d
mov r11d, 0
cmp r14, r8
jae 0x14032bc42
mov r11, qword [r9 + r14*8]
shr r11, cl
shl r11d, 3
and r11d, 8
or eax, r11d
lea ecx, [rdx + 1]
mov r11, rcx
shr r11, 6
cmp r11, r8
jae 0x14032bc63
mov r10, qword [r9 + r11*8]
shr r10, cl
shl r10d, 2
and r10d, 4
or eax, r10d
mov ecx, edx
mov r11, rcx
shr r11, 6
xor r10d, r10d
cmp r11, r8
jae 0x14032bc85
mov r10, qword [r9 + r11*8]
shr r10, cl
add r10d, r10d
and r10d, 2
or eax, r10d
test edx, edx
je 0x14032bcab
dec edx
mov r10, rdx
shr r10, 6
xor ecx, ecx
cmp r10, r8
jae 0x14032bca9
mov r8, qword [r9 + r10*8]
xor ecx, ecx
bt r8, rdx
setb cl
or eax, ecx
mov r14d, eax
shr r14, 5
lea ecx, [r14 - 1]
neg r14
and ecx, eax
xor eax, 0x3f
mov r15d, r14d
and r15d, eax
or r15d, ecx
mov rax, r15
shr rax, 1
and r15d, 1
add r15, rax
xor r12d, r12d
mov r8d, 0xd8
mov rcx, rsi
xor edx, edx
call fcn.14024e4f0
mov r8, r12
xor r8, r15
dec r8
sar r8, 0x3f
mov qword [rsp + 0x20], rsi
mov rcx, rdi
mov rdx, rsi
mov r9, rbx
call fcn.140328aa0
inc r12
add rbx, 0xd8
cmp r12, 0x11
jne 0x14032bce7
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x70], rax
movaps xmm0, xmmword [0x1403be790]
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x50], xmm0
movaps xmmword [rsp + 0x40], xmm0
movaps xmmword [rsp + 0x30], xmm0
add rsi, 0x48
mov ecx, dword [rdi + 0x40]
test ecx, ecx
jle 0x14032bd5e
xor edx, edx
xor eax, eax
or rax, qword [rsi + rdx*8]
inc rdx
cmp rcx, rdx
jne 0x14032bd50
jmp 0x14032bd60
xor eax, eax
test rcx, rcx
je 0x14032bdf0
movsxd rcx, ecx
mov rdx, qword [rdi + 0x38]
xor r8d, r8d
lea r9, [rsp + 0x30]
sub r10, r10
jmp 0x14032bd80
mov r10, qword [rdx + r8*8]
sbb r10, qword [rsi + r8*8]
mov qword [r9 + r8*8], r10
lea r8, [r8 + 1]
dec rcx
jne 0x14032bd80
sbb r10, r10
mov ecx, dword [rdi + 0x40]
test ecx, ecx
jle 0x14032bdbb
xor edx, edx
mov r8, rax
test rax, rax
je 0x14032bdae
mov r8, qword [rsp + rdx*8 + 0x30]
mov qword [rsp + rdx*8 + 0x30], r8
inc rdx
cmp rcx, rdx
jne 0x14032bda1
test rcx, rcx
je 0x14032bdf0
and r14d, 1
mov rax, r14
neg rax
dec r14
movsxd rcx, ecx
xor edx, edx
mov r8, qword [rsp + rdx*8 + 0x30]
and r8, rax
mov r9, qword [rsi + rdx*8]
and r9, r14
or r9, r8
mov qword [rsi + rdx*8], r9
inc rdx
cmp rcx, rdx
jne 0x14032bdd2
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.14024c3c0
nop
add rsp, 0x88
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
Function at 0x140347b30
Capabilities:
Get system information on windows

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x180
mov rdi, rdx
mov rsi, rcx
mov rax, qword [0x14042f038]
xor rax, rsp
mov qword [rsp + 0x178], rax
mov qword [rcx + 8], rdx
mov eax, dword [0x140451b98]
mov ecx, dword [0x140441a2c]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140347dc7
mov rax, qword [0x140451b90]
test rax, rax
jne 0x140347c18
mov byte [rsi + 0x81], 0
movaps xmm0, xmmword [0x1403be790]
lea rbx, [rsp + 0x30]
movaps xmmword [rbx + 0x20], xmm0
movaps xmmword [rbx + 0x10], xmm0
movaps xmmword [rbx], xmm0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
cmp word [rbx], 9
sete byte [rsi + 0x80]
cmp byte [rsi + 0x81], 0
setne dl
lea rax, [rsi + 0x30]
lea r9, [rsi + 0x28]
mov qword [rsp + 0x20], rax
mov rcx, rdi
mov r8, rsi
call fcn.140347e10
test al, al
jne 0x140347cb5
mov ecx, 2
call fcn.1401ee3d0
test al, al
jne 0x140347ccf
xor esi, esi
mov rcx, qword [rsp + 0x178]
xor rcx, rsp
call fcn.14024c3c0
mov eax, esi
add rsp, 0x180
pop rbx
pop rdi
pop rsi
ret
lea rdx, [rsp + 0x174]
mov dword [rdx], 0xaaaaaaaa
mov rcx, rdi
call qword [case.0x1402ceac0.0]
test eax, eax
jne 0x140347c92
mov ecx, 2
call fcn.1401ee3d0
test al, al
je 0x140347b8b
call sub.KERNEL32.dll_GetLastError
mov dword [rsp + 0x20], eax
lea rdx, str....._third_partycrashpadcrashpadutilwinprocess_info.cc
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov r8d, 0x4b
mov r9d, 2
call fcn.1402c61f0
lea rcx, [rsp + 0x40]
lea rdx, [0x1403dceb8]
mov r8d, reloc.WS2_32.dll_ntohl
call fcn.1402885e0
mov rcx, rbx
call fcn.1402c6270
jmp 0x140347b8b
cmp dword [rsp + 0x174], 0
setne byte [rsi + 0x81]
je 0x140347b92
mov byte [rsi + 0x80], 0
mov dl, 1
jmp 0x140347bc7
cmp byte [rsi + 0x80], 0
mov rdx, qword [rsi + 0x28]
mov rcx, rdi
mov r8, rsi
jne 0x140347d13
call fcn.1403486c0
jmp 0x140347d18
lea rdx, str....._third_partycrashpadcrashpadutilwinprocess_info.cc
lea rsi, [rsp + 0x30]
mov rcx, rsi
mov r8d, 0x21e
mov r9d, 2
call fcn.1400ee420
lea rcx, [rsp + 0x40]
lea rdx, str.GetProcessBasicInformation_failed
mov r8d, 0x21
call fcn.1402885e0
mov rcx, rsi
call fcn.1400ee910
jmp 0x140347bf9
call fcn.140348040
test al, al
je 0x140347d7e
mov dl, byte [rsi + 0x80]
mov rcx, rdi
mov r8, rsi
call fcn.140165670
mov sil, 1
test al, al
jne 0x140347bfb
mov ecx, 2
call fcn.1401ee3d0
test al, al
je 0x140347bf9
lea rdx, str....._third_partycrashpadcrashpadutilwinprocess_info.cc
lea rsi, [rsp + 0x30]
mov rcx, rsi
mov r8d, 0x22c
mov r9d, 2
call fcn.1400ee420
lea rcx, [rsp + 0x40]
lea rdx, str.ReadMemoryInfo_failed
mov r8d, 0x15
jmp 0x140347d01
mov ecx, 2
call fcn.1401ee3d0
test al, al
je 0x140347bf9
lea rdx, str....._third_partycrashpadcrashpadutilwinprocess_info.cc
lea rsi, [rsp + 0x30]
mov rcx, rsi
mov r8d, 0x227
mov r9d, 2
call fcn.1400ee420
lea rcx, [rsp + 0x40]
lea rdx, str.ReadProcessData_failed
mov r8d, 0x16
jmp 0x140347d01
lea rcx, [0x140451b98]
call fcn.14024ad30
cmp dword [0x140451b98], 0xffffffff
jne 0x140347b7b
lea rcx, [0x1403c62bc]
lea rdx, str.::IsWow64Process
xor r8d, r8d
call fcn.140166b80
mov qword [0x140451b90], rax
lea rcx, [0x140451b98]
call fcn.14024adc8
jmp 0x140347b7b
Function at 0x14034a5c0
Capabilities:
Read http header

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x60
mov rsi, r9
mov rdi, r8
mov ebx, edx
mov r14, rcx
mov rax, qword [0x14042f038]
xor rax, rsp
mov qword [rsp + 0x58], rax
lea r12, [rsp + 0x54]
mov dword [r12], 0
mov qword [rsp + 0x20], r12
mov qword [rsp + 0x28], 0
xor r9d, r9d
call qword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
cmovle ecx, eax
mov ebp, 0x80004005
cmovne ebp, ecx
cmp ebp, 0x8007007a
jne 0x14034a6be
movabs rax, 0xaaaaaaaaaaaaaaaa
lea r15, [rsp + 0x30]
mov qword [r15 + 0x10], rax
movaps xmm0, xmmword [0x1403be790]
movaps xmmword [r15], xmm0
mov edx, dword [rsp + 0x54]
shr rdx, 1
mov rcx, r15
call fcn.1401f9d90
mov r9, qword [r15]
cmp r9, qword [r15 + 8]
je 0x14034a72e
mov qword [rsp + 0x20], r12
mov qword [rsp + 0x28], 0
mov rcx, r14
mov edx, ebx
mov r8, rdi
call qword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
test eax, eax
jne 0x14034a6dc
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
cmovle ecx, eax
mov ebp, 0x80004005
cmovne ebp, ecx
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14034a6be
mov qword [rsp + 0x38], rcx
call fcn.14024ac18
mov rcx, qword [rsp + 0x58]
xor rcx, rsp
call fcn.14024c3c0
mov eax, ebp
add rsp, 0x60
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
mov eax, dword [rsp + 0x54]
shr rax, 1
mov rdx, qword [rsp + 0x30]
mov r8, qword [rsp + 0x38]
mov rcx, r8
sub rcx, rdx
sar rcx, 1
cmp rcx, rax
jae 0x14034a721
sub rax, rcx
lea rdi, [rsp + 0x30]
mov rcx, rdi
mov rdx, rax
call fcn.1400acd80
mov rdx, qword [rdi]
mov r8, qword [rdi + 8]
mov rcx, rsi
call fcn.14034a760
xor ebp, ebp
jmp 0x14034a6aa
jbe 0x14034a715
lea r8, [rdx + rax*2]
mov qword [rsp + 0x38], r8
jmp 0x14034a715
lea rax, str.front___called_on_an_empty_vector
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s
lea rdx, str....._buildtools_third_partylibc_trunkinclude_vector
lea r9, str._empty__
mov r8d, 0x22b
call fcn.14028c680
int3

Function at 0x14034a920
Capabilities:
Read http header

Disassembly:
push rsi
sub rsp, 0x40
mov rax, qword [0x14042f038]
xor rax, rsp
mov qword [rsp + 0x38], rax
or edx, 0x20000000
lea rax, [rsp + 0x34]
mov dword [rax], 4
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0
call qword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
xor esi, esi
test eax, eax
jne 0x14034a97b
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
cmovle ecx, eax
mov esi, 0x80004005
cmovne esi, ecx
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.14024c3c0
mov eax, esi
add rsp, 0x40
pop rsi
ret