joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140033db0
Capabilities:
Print debug messages

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0xb0
mov r15, qword [0x1400c21a0]
mov rax, qword [r15]
xor rax, rsp
mov qword [rsp + 0xa8], rax
mov edi, 3
test rcx, rcx
je 0x140033e6e
mov rsi, rdx
mov rbx, rcx
lea rcx, section..data
call fcn.1400843e0
mov rcx, qword [0x1400ed4b8]
test rcx, rcx
je 0x140033e62
cmp rcx, 1
jne 0x140033e17
mov rax, qword [0x1400ed4c0]
cmp qword [rax + 8], rbx
jne 0x140033e62
jmp 0x140033e99
dec rcx
mov rax, qword [0x1400ed4c0]
xor edx, edx
jmp 0x140033e3b
inc r8
mov rdx, r8
cmp rdx, rcx
ja 0x140033e62
lea r8, [rdx + rcx]
shr r8, 1
mov r9, r8
shl r9, 4
cmp qword [rax + r9 + 8], rbx
je 0x140033e96
jbe 0x140033e30
cmp r8, rdx
je 0x140033e62
dec r8
mov rcx, r8
cmp rdx, rcx
jbe 0x140033e3b
lea rcx, section..data
call fcn.140084550
mov rax, qword [rsp + 0xa8]
xor rax, rsp
mov rcx, qword [r15]
cmp rcx, rax
jne 0x140033f72
mov eax, edi
add rsp, 0xb0
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret
add rax, r9
mov r14, qword [rax]
lea rcx, section..data
call fcn.140084550
test r14, r14
je 0x140033e6e
mov rcx, qword [r14 + 0x28]
test rcx, rcx
je 0x140033e6e
lea rdx, [rsp + 0x2c]
call qword [sym.imp.KERNEL32.dll_GetHandleInformation]
test eax, eax
je 0x140033e6e
mov edi, 0x16
test byte [r14 + 0x44], 4
jne 0x140033e6e
call fcn.140031d70
test rax, rax
je 0x140033ee4
mov rax, qword [rax + 0x1d8]
jmp 0x140033ee6
xor eax, eax
mov edi, 0x24
cmp rax, rbx
je 0x140033e6e
cmp dword [r14 + 0xbc], 0
mov rcx, qword [r14 + 0x28]
je 0x140033f0c
lea rax, [rcx + 1]
cmp rax, 2
jb 0x140033f1b
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [r14 + 0x28]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [r14 + 0x30]
test rcx, rcx
je 0x140033f30
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [r14 + 0x30], 0
test rsi, rsi
je 0x140033f44
mov rax, qword [r14 + 8]
mov qword [rsi], rax
lea rcx, [r14 + 0x38]
call fcn.1400846f0
lea rcx, [r14 + 0x68]
call fcn.140084880
cmp eax, 1
je 0x140033f77
mov qword [r14 + 0x68], 0xffffffffffffffff
mov rcx, r14
call fcn.140032bc0
xor edi, edi
jmp 0x140033e6e
call fcn.1400848e0
movups xmm0, xmmword [0x1400c218b]
movups xmmword [rsp + 0x8b], xmm0
movaps xmm0, xmmword [0x1400c2180]
movaps xmmword [rsp + 0x80], xmm0
movaps xmm0, xmmword [0x1400c2170]
movaps xmmword [rsp + 0x70], xmm0
movaps xmm0, xmmword [0x1400c2160]
movaps xmmword [rsp + 0x60], xmm0
movaps xmm0, xmmword [0x1400c2150]
movaps xmmword [rsp + 0x50], xmm0
movaps xmm0, xmmword [0x1400c2140]
movaps xmmword [rsp + 0x40], xmm0
movaps xmm0, xmmword [str.Error_cleaning_up_spin_keys_for_thread]
movaps xmmword [rsp + 0x30], xmm0
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
lea rdx, [rsp + 0x57]
mov ecx, eax
mov r8d, 0xa
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__ultoa]
mov eax, 0x27
mov rcx, rax
inc rax
cmp rcx, 0x69
ja 0x140034002
cmp byte [rsp + rcx + 0x30], 0
jne 0x140033fef
cmp rcx, 0x69
ja 0x14003400f
mov word [rsp + rax + 0x2f], 0xa
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
call sub.api_ms_win_crt_runtime_l1_1_0.dll_abort
int3
Function at 0x140083a70
Capabilities:
Write file on windows

Disassembly:
push rsi
sub rsp, 0x30
mov rsi, rcx
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x50], r8
mov qword [rsp + 0x58], r9
lea rax, [rsp + 0x48]
mov qword [rsp + 0x28], rax
mov ecx, 2
call sub.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func
lea rcx, str.Mingw_w64_runtime_failure:_n
mov edx, 0x1b
mov r8d, 1
mov r9, rax
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fwrite
mov ecx, 2
call sub.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func
mov r8, qword [rsp + 0x28]
mov rcx, rax
mov rdx, rsi
call fcn.14008d810
call sub.api_ms_win_crt_runtime_l1_1_0.dll_abort
int3

Function at 0x1400848e0
Capabilities:
Terminate process

Disassembly:
sub rsp, 0x28
lea rdx, str._stack_smashing_detected_:_terminated_n
mov ecx, 2
mov r8d, 0x2c
call sub.api_ms_win_crt_stdio_l1_1_0.dll__write
mov ecx, 0x17
call sub.KERNEL32.dll_IsProcessorFeaturePresent
test eax, eax
je 0x140084910
mov ecx, 2
int 0x29
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
mov edx, 0xc0000409
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
int3
Function at 0x140084af0
Capabilities:
Check for time delay via gettickcount
Check for time delay via queryperformancecounter

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x38
mov ebx, edx
mov rsi, rcx
mov r15, qword [0x1400c21a0]
mov rax, qword [r15]
xor rax, rsp
mov qword [rsp + 0x30], rax
lea eax, [rbx + 1]
cmp eax, 1
ja 0x140084b4f
mov rax, qword [rsp + 0x30]
xor rax, rsp
mov rcx, qword [r15]
cmp rcx, rax
jne case.default.0x140084b48
mov rcx, rsi
mov edx, ebx
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rax, qword [0x1400ed570]
test rax, rax
je 0x140084b65
call rax
mov rdi, rax
xor r12d, r12d
jmp 0x140084bd9
lea rcx, [rsp + 0x28]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
test eax, eax
je 0x140084bca
mov r12, qword [rsp + 0x28]
test r12, r12
jle 0x140084bd1
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x140084bd1
mov rcx, qword [rsp + 0x20]
mov rax, r12
shr rax, 3
movabs rdx, 0x20c49ba5e353f7cf
mul rdx
mov r8, rdx
shr r8, 4
mov rax, rcx
or rax, r8
shr rax, 0x20
je 0x140084cf5
mov rax, rcx
cqo
idiv r8
mov rdi, rax
jmp 0x140084bd9
mov r12, 0xffffffffffffffff
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov edi, eax
mov rcx, rsi
mov edx, ebx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
jne 0x140084cd4
mov eax, ebx
add rdi, rax
mov rbp, qword [sym.imp.KERNEL32.dll_GetTickCount]
lea r14, [rsp + 0x20]
mov r13, qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rbx, qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
nop
mov rax, qword [0x1400ed570]
test rax, rax
je 0x140084c30
call rax
jmp 0x140084cb4
test r12, r12
je 0x140084c7a
test r12, r12
jle 0x140084cb0
mov rcx, r14
call r13
test eax, eax
je 0x140084cb0
mov rcx, qword [rsp + 0x20]
mov rax, r12
shr rax, 3
movabs rdx, 0x20c49ba5e353f7cf
mul rdx
mov r8, rdx
shr r8, 4
mov rax, rcx
or rax, r8
shr rax, 0x20
je 0x140084c95
mov rax, rcx
cqo
idiv r8
jmp 0x140084cb4
lea rcx, [rsp + 0x28]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
test eax, eax
je 0x140084c9e
mov r12, qword [rsp + 0x28]
test r12, r12
jg 0x140084c3a
jmp 0x140084cb0
mov eax, ecx
xor edx, edx
div r8d
jmp 0x140084cb4
mov r12, 0xffffffffffffffff
nop word cs:[rax + rax]
call rbp
mov eax, eax
cmp rdi, rax
jbe 0x140084ccf
mov edx, edi
sub edx, eax
mov rcx, rsi
call rbx
cmp eax, 0x102
je 0x140084c10
jmp 0x140084cd4
mov eax, 0x102
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
mov rdx, qword [r15]
cmp rdx, rcx
jne case.default.0x140084b48
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov eax, ecx
xor edx, edx
div r8d
jmp 0x140084bd7
call fcn.1400848e0
int3
Function at 0x140084d10
Capabilities:
Check for time delay via gettickcount
Check for time delay via queryperformancecounter

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x38
mov r15d, r9d
mov esi, r8d
mov rdi, rdx
mov ebx, ecx
mov r13, qword [0x1400c21a0]
mov rax, qword [r13]
xor rax, rsp
mov qword [rsp + 0x30], rax
lea eax, [r15 + 1]
cmp eax, 1
ja 0x140084d7e
mov rax, qword [rsp + 0x30]
xor rax, rsp
mov rcx, qword [r13]
cmp rcx, rax
jne case.default.0x140084d77
mov ecx, ebx
mov rdx, rdi
mov r8d, esi
mov r9d, r15d
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp qword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
mov rax, qword [0x1400ed570]
test rax, rax
je 0x140084d93
call rax
mov r14, rax
xor ebp, ebp
jmp 0x140084e08
lea rcx, [rsp + 0x28]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
test eax, eax
je 0x140084df8
mov rbp, qword [rsp + 0x28]
test rbp, rbp
jle 0x140084dff
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x140084dff
mov rcx, qword [rsp + 0x20]
mov rax, rbp
shr rax, 3
movabs rdx, 0x20c49ba5e353f7cf
mul rdx
mov r8, rdx
shr r8, 4
mov rax, rcx
or rax, r8
shr rax, 0x20
je 0x140084f2f
mov rax, rcx
cqo
idiv r8
mov r14, rax
jmp 0x140084e08
mov rbp, 0xffffffffffffffff
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov r14d, eax
mov ecx, ebx
mov rdx, rdi
mov r8d, esi
mov r9d, r15d
call qword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
cmp eax, 0x102
jne 0x140084f0d
mov eax, r15d
add r14, rax
mov r15, qword [sym.imp.KERNEL32.dll_GetTickCount]
mov r12, qword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
nop dword [rax + rax]
mov rax, qword [0x1400ed570]
test rax, rax
je 0x140084e60
call rax
jmp 0x140084ee5
test rbp, rbp
je 0x140084eaf
test rbp, rbp
jle 0x140084ee0
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x140084ee0
mov rcx, qword [rsp + 0x20]
mov rax, rbp
shr rax, 3
movabs rdx, 0x20c49ba5e353f7cf
mul rdx
mov r8, rdx
shr r8, 4
mov rax, rcx
or rax, r8
shr rax, 0x20
je 0x140084eca
mov rax, rcx
cqo
idiv r8
jmp 0x140084ee5
lea rcx, [rsp + 0x28]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
test eax, eax
je 0x140084ed3
mov rbp, qword [rsp + 0x28]
test rbp, rbp
jg 0x140084e6a
jmp 0x140084ee0
mov eax, ecx
xor edx, edx
div r8d
jmp 0x140084ee5
mov rbp, 0xffffffffffffffff
nop word [rax + rax]
call r15
mov eax, eax
cmp r14, rax
jbe 0x140084f08
mov r9d, r14d
sub r9d, eax
mov ecx, ebx
mov rdx, rdi
mov r8d, esi
call r12
cmp eax, 0x102
je 0x140084e40
jmp 0x140084f0d
mov eax, 0x102
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
mov rdx, qword [r13]
cmp rdx, rcx
jne case.default.0x140084d77
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov eax, ecx
xor edx, edx
div r8d
jmp 0x140084e05
call fcn.1400848e0
int3
Function at 0x1400853e0
Capabilities:
Terminate process

Disassembly:
push rsi
sub rsp, 0x30
mov rsi, rcx
lea rcx, [0x1400ed128]
call fcn.140084890
mov rax, qword [rsi]
cmp dword [rax], 0xbab1f0ed
jne 0x14008541f
mov rax, qword [rsi]
cmp dword [rax + 4], 0
jle 0x14008541f
mov rax, qword [rsi]
dec dword [rax + 4]
lea rcx, [0x1400ed128]
add rsp, 0x30
pop rsi
jmp fcn.1400848d0
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov dword [rsp + 0x20], 0x28
lea rdx, str.Assertion_failed:___s___file__s__line__d_n
lea r8, str.___rwlock_t__rwl___valid__LIFE_RWLOCK______rwlock_t__rwl___busy___0_
lea r9, str..._mingw_w64_mingw_w64_libraries_winpthreads_src_rwlock.c
mov rcx, rax
call fcn.140084f50
mov ecx, 1
call sub.api_ms_win_crt_runtime_l1_1_0.dll_exit
int3

Function at 0x140089220
Capabilities:
Write file on windows

Disassembly:
push rsi
push rdi
sub rsp, 0x28
mov rsi, rcx
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x50], r8
mov qword [rsp + 0x58], r9
mov rdi, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov ecx, 2
call rdi
lea rcx, str.libcabi:
mov edx, 0xb
mov r8d, 1
mov r9, rax
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fwrite
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
mov ecx, 2
call rdi
mov r8, qword [rsp + 0x20]
mov rcx, rax
mov rdx, rsi
call fcn.14008d810
mov ecx, 2
call rdi
mov ecx, 0xa
mov rdx, rax
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fputc
call sub.api_ms_win_crt_runtime_l1_1_0.dll_abort
int3

Function at 0x14008efc0
Capabilities:
Enumerate pe sections
Parse pe header

Disassembly:
mov rax, qword [0x1400c2008]
movzx edx, word [rax]
cmp edx, 0x5a4d
jne 0x14008f02c
movsxd rdx, dword [rax + 0x3c]
cmp dword [rax + rdx], 0x4550
jne 0x14008f02c
add rax, rdx
movzx edx, word [rax + 0x18]
cmp edx, 0x20b
jne 0x14008f02c
movzx edx, word [rax + 6]
test edx, edx
je 0x14008f02c
sub rcx, qword [0x1400c2008]
movzx r8d, word [rax + 0x14]
add rax, r8
add rax, 0x18
jmp 0x14008f018
add rax, 0x28
dec edx
je 0x14008f02c
mov r8d, dword [rax + 0xc]
cmp rcx, r8
jb 0x14008f010
add r8d, dword [rax + 8]
cmp rcx, r8
jae 0x14008f010
jmp 0x14008f02e
xor eax, eax
ret

Function at 0x14008f030
Capabilities:
Parse pe header

Disassembly:
mov rcx, qword [0x1400c2008]
movzx edx, word [rcx]
xor eax, eax
cmp edx, 0x5a4d
jne 0x14008f065
movsxd rdx, dword [rcx + 0x3c]
cmp dword [rcx + rdx], 0x4550
jne 0x14008f065
movzx r8d, word [rcx + rdx + 0x18]
cmp r8d, 0x20b
jne 0x14008f065
movzx eax, word [rcx + rdx + 6]
ret

Function at 0x14008f0e0
Capabilities:
Parse pe header

Disassembly:
mov rax, qword [0x1400c2008]
movzx ecx, word [rax]
cmp ecx, 0x5a4d
jne 0x14008f10c
movsxd rcx, dword [rax + 0x3c]
cmp dword [rax + rcx], 0x4550
jne 0x14008f10c
movzx ecx, word [rax + rcx + 0x18]
cmp ecx, 0x20b
je 0x14008f10e
xor eax, eax
ret
Function at 0x140090760
Capabilities:
Query environment variable

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x90
movaps xmmword [rsp + 0x80], xmm12
movaps xmmword [rsp + 0x70], xmm11
movaps xmmword [rsp + 0x60], xmm10
movaps xmmword [rsp + 0x50], xmm9
movaps xmmword [rsp + 0x40], xmm8
movaps xmmword [rsp + 0x30], xmm7
movaps xmmword [rsp + 0x20], xmm6
mov rdi, rdx
mov rsi, rcx
cmp byte [0x142254823], 1
jne 0x1400907b3
cmp byte [0x142254822], 0
jne 0x1400907d2
jmp 0x140090804
lea rcx, str.LIBUNWIND_PRINT_APIS
call sub.api_ms_win_crt_environment_l1_1_0.dll_getenv
mov byte [0x142254823], 1
test rax, rax
setne byte [0x142254822]
je 0x140090804
mov rbx, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov ecx, 2
call rbx
lea rdx, str.libunwind:___unw_init_local_cursor_p__context_p__n
mov rcx, rax
mov r8, rsi
mov r9, rdi
call fcn.140084f50
mov ecx, 2
call rbx
mov rcx, rax
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fflush
lea rax, [0x1400c9530]
mov qword [rsi], rax
lea rax, [0x142253e79]
mov qword [rsi + 8], rax
lea rax, [rsi + 0x580]
lea rcx, [rsi + 0xb0]
xorps xmm0, xmm0
movaps xmmword [rsi + 0x10], xmm0
movaps xmmword [rsi + 0x20], xmm0
movaps xmmword [rsi + 0x30], xmm0
movaps xmmword [rsi + 0x40], xmm0
movaps xmmword [rsi + 0x50], xmm0
movaps xmmword [rsi + 0x60], xmm0
movaps xmmword [rsi + 0x70], xmm0
movaps xmmword [rsi + 0x80], xmm0
movaps xmmword [rsi + 0x90], xmm0
mov qword [rsi + 0xa0], 0
movaps xmmword [rsi + 0x580], xmm0
movaps xmmword [rsi + 0x590], xmm0
movaps xmmword [rsi + 0x5a0], xmm0
movaps xmmword [rsi + 0x5b0], xmm0
movaps xmmword [rsi + 0x5c0], xmm0
movaps xmmword [rsi + 0x5d0], xmm0
movaps xmmword [rsi + 0x5e0], xmm0
movaps xmmword [rsi + 0x5f0], xmm0
movaps xmmword [rsi + 0x600], xmm0
movaps xmmword [rsi + 0x610], xmm0
movaps xmmword [rsi + 0x620], xmm0
movaps xmmword [rsi + 0x630], xmm0
movaps xmmword [rsi + 0x640], xmm0
movups xmmword [rsi + 0x649], xmm0
mov qword [rsi + 0x80], rcx
mov qword [rsi + 0x98], rax
mov rbx, qword [rdi]
mov r14, qword [rdi + 8]
mov r15, qword [rdi + 0x80]
movups xmm6, xmmword [rdi + 0x10]
movdqu xmm0, xmmword [rdi + 0x30]
pshufd xmm7, xmm0, 0x4e
movdqu xmm0, xmmword [rdi + 0x20]
pshufd xmm8, xmm0, 0x4e
movups xmm9, xmmword [rdi + 0x40]
movups xmm10, xmmword [rdi + 0x50]
movups xmm11, xmmword [rdi + 0x60]
movups xmm12, xmmword [rdi + 0x70]
call qword [sym.imp.KERNEL32.dll_RtlCaptureContext]
mov dword [rsi + 0xe0], 0x10000b
mov qword [rsi + 0x128], rbx
movaps xmmword [rsi + 0x130], xmm6
mov qword [rsi + 0x140], r14
movdqu xmmword [rsi + 0x148], xmm7
movdqu xmmword [rsi + 0x158], xmm8
movups xmmword [rsi + 0x168], xmm9
movups xmmword [rsi + 0x178], xmm10
movups xmmword [rsi + 0x188], xmm11
movups xmmword [rsi + 0x198], xmm12
mov qword [rsi + 0x1a8], r15
mov rax, qword [rsi]
mov rcx, rsi
xor edx, edx
call qword [rax + 0x68]
xor eax, eax
movaps xmm6, xmmword [rsp + 0x20]
movaps xmm7, xmmword [rsp + 0x30]
movaps xmm8, xmmword [rsp + 0x40]
movaps xmm9, xmmword [rsp + 0x50]
movaps xmm10, xmmword [rsp + 0x60]
movaps xmm11, xmmword [rsp + 0x70]
movaps xmm12, xmmword [rsp + 0x80]
add rsp, 0x90
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret
Function at 0x1400909b0
Capabilities:
Query environment variable

Disassembly:
sub rsp, 0x28
cmp byte [0x142254823], 1
jne 0x1400909cc
cmp byte [0x142254822], 0
setne al
add rsp, 0x28
ret
lea rcx, str.LIBUNWIND_PRINT_APIS
call sub.api_ms_win_crt_environment_l1_1_0.dll_getenv
test rax, rax
setne al
setne byte [0x142254822]
mov byte [0x142254823], 1
add rsp, 0x28
ret

Function at 0x140090a00
Capabilities:
Query environment variable

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x28
mov rsi, r8
mov edi, edx
mov rbx, rcx
cmp byte [0x142254823], 1
jne 0x140090a25
cmp byte [0x142254822], 0
jne 0x140090a44
jmp 0x140090a7d
lea rcx, str.LIBUNWIND_PRINT_APIS
call sub.api_ms_win_crt_environment_l1_1_0.dll_getenv
mov byte [0x142254823], 1
test rax, rax
setne byte [0x142254822]
je 0x140090a7d
mov r14, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov ecx, 2
call r14
mov qword [rsp + 0x20], rsi
lea rdx, str.libunwind:___unw_get_reg_cursor_p__regNum_d__value_p__n
mov rcx, rax
mov r8, rbx
mov r9d, edi
call fcn.140084f50
mov ecx, 2
call r14
mov rcx, rax
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fflush
mov rax, qword [rbx]
mov rcx, rbx
mov edx, edi
call qword [rax + 0x10]
mov ecx, eax
mov eax, 0xffffe672
test cl, cl
je 0x140090aa3
mov rax, qword [rbx]
mov rcx, rbx
mov edx, edi
call qword [rax + 0x18]
mov qword [rsi], rax
xor eax, eax
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r14
ret

Function at 0x140090ab0
Capabilities:
Query environment variable

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x70
mov rbx, r8
mov edi, edx
mov rsi, rcx
cmp byte [0x142254823], 1
jne 0x140090ad6
cmp byte [0x142254822], 0
jne 0x140090af5
jmp 0x140090b2e
lea rcx, str.LIBUNWIND_PRINT_APIS
call sub.api_ms_win_crt_environment_l1_1_0.dll_getenv
mov byte [0x142254823], 1
test rax, rax
setne byte [0x142254822]
je 0x140090b2e
mov r14, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov ecx, 2
call r14
mov qword [rsp + 0x20], rbx
lea rdx, str.libunwind:___unw_set_reg_cursor_p__regNum_d__value0x_llx__n
mov rcx, rax
mov r8, rsi
mov r9d, edi
call fcn.140084f50
mov ecx, 2
call r14
mov rcx, rax
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fflush
mov rax, qword [rsi]
mov rcx, rsi
mov edx, edi
call qword [rax + 0x10]
mov ebp, 0xffffe672
test al, al
je 0x140090b9f
mov rax, qword [rsi]
mov rcx, rsi
mov edx, edi
mov r8, rbx
call qword [rax + 0x20]
xor ebp, ebp
cmp edi, 0xffffffff
jne 0x140090b9f
mov rax, qword [rsi]
lea rdx, [rsp + 0x28]
mov rcx, rsi
call qword [rax + 0x48]
mov rax, qword [rsi]
xor ebp, ebp
mov rcx, rsi
xor edx, edx
call qword [rax + 0x68]
cmp qword [rsp + 0x48], 0
je 0x140090b9f
mov rax, qword [rsi]
mov rcx, rsi
mov edx, 0xfffffffe
call qword [rax + 0x18]
add rax, qword [rsp + 0x48]
mov r9, qword [rsi]
mov rcx, rsi
mov edx, 0xfffffffe
mov r8, rax
call qword [r9 + 0x20]
mov eax, ebp
add rsp, 0x70
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
Function at 0x140090d20
Capabilities:
Query environment variable

Disassembly:
push rsi
push rdi
sub rsp, 0x28
mov rsi, rcx
cmp byte [0x142254823], 1
jne 0x140090d3d
cmp byte [0x142254822], 0
jne 0x140090d5c
jmp 0x140090d8b
lea rcx, str.LIBUNWIND_PRINT_APIS
call sub.api_ms_win_crt_environment_l1_1_0.dll_getenv
mov byte [0x142254823], 1
test rax, rax
setne byte [0x142254822]
je 0x140090d8b
mov rdi, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov ecx, 2
call rdi
lea rdx, str.libunwind:___unw_step_cursor_p__n
mov rcx, rax
mov r8, rsi
call fcn.140084f50
mov ecx, 2
call rdi
mov rcx, rax
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fflush
mov rax, qword [rsi]
mov rax, qword [rax + 0x40]
mov rcx, rsi
xor edx, edx
add rsp, 0x28
pop rdi
pop rsi
jmp rax

Function at 0x140090e20
Capabilities:
Query environment variable

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x20
mov rsi, rdx
mov rdi, rcx
cmp byte [0x142254823], 1
jne 0x140090e41
cmp byte [0x142254822], 0
jne 0x140090e60
jmp 0x140090e92
lea rcx, str.LIBUNWIND_PRINT_APIS
call sub.api_ms_win_crt_environment_l1_1_0.dll_getenv
mov byte [0x142254823], 1
test rax, rax
setne byte [0x142254822]
je 0x140090e92
mov rbx, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov ecx, 2
call rbx
lea rdx, str.libunwind:___unw_get_proc_info_cursor_p__info_p__n
mov rcx, rax
mov r8, rdi
mov r9, rsi
call fcn.140084f50
mov ecx, 2
call rbx
mov rcx, rax
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fflush
mov rax, qword [rdi]
mov rcx, rdi
mov rdx, rsi
call qword [rax + 0x48]
xor ecx, ecx
cmp qword [rsi + 8], 0
mov eax, 0xffffe66b
cmovne eax, ecx
add rsp, 0x20
pop rbx
pop rdi
pop rsi
ret

Function at 0x140090ec0
Capabilities:
Query environment variable

Disassembly:
push rsi
push rdi
sub rsp, 0x28
mov rsi, rcx
cmp byte [0x142254823], 1
jne 0x140090edd
cmp byte [0x142254822], 0
jne 0x140090efc
jmp 0x140090f2b
lea rcx, str.LIBUNWIND_PRINT_APIS
call sub.api_ms_win_crt_environment_l1_1_0.dll_getenv
mov byte [0x142254823], 1
test rax, rax
setne byte [0x142254822]
je 0x140090f2b
mov rdi, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov ecx, 2
call rdi
lea rdx, str.libunwind:___unw_resume_cursor_p__n
mov rcx, rax
mov r8, rsi
call fcn.140084f50
mov ecx, 2
call rdi
mov rcx, rax
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fflush
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x50]
mov eax, 0xffffe674
add rsp, 0x28
pop rdi
pop rsi
ret
Function at 0x140090f40
Capabilities:
Query environment variable

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x30
mov rsi, r9
mov rdi, r8
mov rbx, rdx
mov r14, rcx
cmp byte [0x142254823], 1
jne 0x140090f6b
cmp byte [0x142254822], 0
jne 0x140090f8a
jmp 0x140090fc2
lea rcx, str.LIBUNWIND_PRINT_APIS
call sub.api_ms_win_crt_environment_l1_1_0.dll_getenv
mov byte [0x142254823], 1
test rax, rax
setne byte [0x142254822]
je 0x140090fc2
mov r15, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov ecx, 2
call r15
mov dword [rsp + 0x20], edi
lea rdx, str.libunwind:___unw_get_proc_name_cursor_p__buf_p__bufLen_lu__n
mov rcx, rax
mov r8, r14
mov r9, rbx
call fcn.140084f50
mov ecx, 2
call r15
mov rcx, rax
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fflush
mov rax, qword [r14]
mov rcx, r14
mov rdx, rbx
mov r8, rdi
mov r9, rsi
call qword [rax + 0x60]
xor ecx, ecx
test al, al
mov eax, 0xffffe674
cmovne eax, ecx
add rsp, 0x30
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret

Function at 0x140091190
Capabilities:
Query environment variable

Disassembly:
sub rsp, 0x28
cmp byte [0x142254821], 1
jne 0x1400911ac
cmp byte [0x142254820], 0
setne al
add rsp, 0x28
ret
lea rcx, str.LIBUNWIND_PRINT_UNWINDING
call sub.api_ms_win_crt_environment_l1_1_0.dll_getenv
test rax, rax
setne al
setne byte [0x142254820]
mov byte [0x142254821], 1
add rsp, 0x28
ret

Function at 0x140091410
Capabilities:
Query environment variable

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x28
mov rsi, r8
mov edi, edx
mov rbx, rcx
call fcn.1400909b0
test al, al
je 0x140091463
mov r14, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov ecx, 2
call r14
mov qword [rsp + 0x20], rsi
lea rdx, str.libunwind:__Unwind_SetGR_context_p__reg_d__value0x_0llx__n
mov rcx, rax
mov r8, rbx
mov r9d, edi
call fcn.140084f50
mov ecx, 2
call r14
mov rcx, rax
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fflush
mov rcx, rbx
mov edx, edi
mov r8, rsi
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r14
jmp fcn.140090ab0

Function at 0x140091510
Capabilities:
Query environment variable

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x20
mov rsi, rdx
mov rdi, rcx
call fcn.1400909b0
test al, al
je 0x140091558
mov rbx, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov ecx, 2
call rbx
lea rdx, str.libunwind:__Unwind_SetIP_context_p__value0x_0llx__n
mov rcx, rax
mov r8, rdi
mov r9, rsi
call fcn.140084f50
mov ecx, 2
call rbx
mov rcx, rax
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fflush
mov rcx, rdi
mov edx, 0xffffffff
mov r8, rsi
add rsp, 0x20
pop rbx
pop rdi
pop rsi
jmp fcn.140090ab0