joyce8/EMBER2024-capa huggingface dataset:
Function at 0x100405130
Capabilities:
Write file on windows

Disassembly:
push rsi
push rbx
sub rsp, 0x28
mov rbx, rcx
mov rcx, qword [0x100453100]
mov rsi, rdx
test rcx, rcx
je 0x1004051d0
mov rax, qword [0x100453128]
test rax, rax
je 0x10040516d
mov eax, dword [rax + 0x10]
mov edx, eax
and edx, 0xfffffffb
cmp edx, 1
je 0x100405190
test eax, eax
je 0x10040520e
mov rcx, rbx
call fcn.100405040
mov qword [rax + 0x30], rsi
mov qword [rax + 0x130], rbx
add rsp, 0x28
pop rbx
pop rsi
ret
call fcn.100405040
mov rdx, qword [0x10044c2f0]
lea rcx, [0x100434ead]
pxor xmm0, xmm0
mov qword [rax + 8], rcx
mov qword [rax], rdx
mov rdx, qword [0x100435750]
mov byte [rax + 0x1c], 0
mov qword [rax + 0x10], rdx
mov dword [rax + 0x18], 0
movups xmmword [rax + 0x30], xmm0
jmp 0x10040516d
lea rcx, [0x10043503f]
call fcn.10040d6f0
mov qword [0x100453100], rax
mov rcx, rax
test rax, rax
jne 0x10040514c
lea r9, str.entry_and___NULL
lea r8, str.get_new_pred_chk_op
mov edx, 0x5fc
lea rcx, str.tree.c
call sub.msys_2.0.dll___assert_func
lea rcx, str.oops____invalid_default_insertion_of_and_
call sub.msys_intl_8.dll_libintl_gettext
xor edx, edx
mov ecx, 1
mov r8, rax
call sub.msys_2.0.dll_error
nop
nop word [rax + rax]
Function at 0x100406ba0
Capabilities:
Terminate process

Disassembly:
push rsi
push rbx
sub rsp, 0x28
mov rsi, qword [rcx + 0x18]
mov rbx, rcx
test rsi, rsi
je 0x100406bd9
call fcn.100405130
mov rdx, qword [rbx + 8]
mov qword [rax], rsi
mov qword [rax + 8], rdx
mov qword [rax + 0x38], 0
mov qword [rax + 0x10], 1
add rsp, 0x28
pop rbx
pop rsi
ret
call fcn.100406980
nop
nop

Function at 0x100406be0
Capabilities:
Terminate process

Disassembly:
push rsi
push rbx
sub rsp, 0x28
mov rsi, qword [rcx + 0x18]
mov rbx, rcx
test rsi, rsi
je 0x100406c1b
xor edx, edx
call fcn.100405130
mov rdx, qword [rbx + 8]
mov qword [rax], rsi
mov qword [rax + 8], rdx
mov qword [rax + 0x38], 0
mov qword [rax + 0x10], 1
add rsp, 0x28
pop rbx
pop rsi
ret
call fcn.100406980
nop
nop word cs:[rax + rax]
nop dword [rax]
Function at 0x1004074c0
Capabilities:
Get file attributes

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
mov rbp, qword [0x10044c4a0]
mov rbx, rcx
mov ecx, dword [rbp + 0x18]
mov rsi, rdx
cmp ecx, 0xfffffffe
je 0x100407301
test ecx, ecx
js 0x10040736a
mov eax, dword [rbp]
test eax, eax
jne 0x100407351
xor r9d, r9d
mov r8, rsi
mov rdx, rbx
call fcn.100431af0
mov edi, eax
test eax, eax
jne 0x100407330
mov eax, edi
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
ret
call sub.msys_2.0.dll___errno
mov eax, dword [rax]
cmp eax, 2
je 0x100407341
cmp eax, 0x14
jne 0x10040731c
mov rax, qword [0x10044c2e0]
test byte [rax + 0x40], 2
jne 0x100407390
mov ecx, dword [rbp + 0x18]
mov r9d, 2
mov r8, rsi
mov rdx, rbx
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
jmp fcn.100431af0
lea r9, str.state.cwd_dir_fd___0
lea r8, str.optionh_stat
mov edx, 0x25c
lea rcx, str.util.c
call sub.msys_2.0.dll___assert_func
nop dword [rax]
call sub.msys_2.0.dll___getreent
mov r8, rbx
lea rdx, str.fallback_stat__:_stat__s__failed__falling_back_on_lstat___n
mov rcx, qword [rax + 0x18]
call sub.msys_2.0.dll_fprintf
jmp 0x10040734e
sub rsp, 0x28
mov rax, qword [0x10044c4a0]
mov eax, dword [rax + 0x18]
mov r8, rdx
test eax, eax
jns 0x10040748a
cmp eax, 0xfffffffe
jne 0x10040749e
mov rdx, rcx
mov r9d, 2
mov ecx, eax
add rsp, 0x28
jmp fcn.100431af0
lea r9, str._state.cwd_dir_fd___0____state.cwd_dir_fdAT_FDCWD_
lea r8, str.optionp_stat
mov edx, 0x28c
lea rcx, str.util.c
call sub.msys_2.0.dll___assert_func
nop
nop
push rsi
push rbx
sub rsp, 0x28
add qword [0x100453140], 1
mov rbx, rcx
mov rsi, rdx
call sub.msys_2.0.dll___getreent
mov r8, rbx
lea rdx, str.debug_stat___s__n
mov rcx, qword [rax + 0x18]
call sub.msys_2.0.dll_fprintf
mov rax, qword [0x10044c2e0]
mov eax, dword [rax + 0x48]
cmp eax, 1
je 0x100407548
cmp eax, 2
je 0x100407530
test eax, eax
jne 0x100407578
mov rax, qword [0x10044c4a0]
mov ecx, dword [rax + 0x18]
test ecx, ecx
jns 0x100407517
cmp ecx, 0xfffffffe
jne 0x100407559
mov r9d, 2
mov r8, rsi
mov rdx, rbx
add rsp, 0x28
pop rbx
pop rsi
jmp fcn.100431af0
mov rdx, rsi
mov rcx, rbx
add rsp, 0x28
pop rbx
pop rsi
jmp 0x1004072e0
mov rdx, rsi
mov rcx, rbx
add rsp, 0x28
pop rbx
pop rsi
jmp fcn.1004073b0
lea r9, str._state.cwd_dir_fd___0____state.cwd_dir_fdAT_FDCWD_
lea r8, str.optionp_stat
mov edx, 0x28c
lea rcx, str.util.c
call sub.msys_2.0.dll___assert_func
lea r9, [0x100436039]
lea r8, str.debug_stat
mov edx, 0x2a4
lea rcx, str.util.c
call sub.msys_2.0.dll___assert_func
nop
nop dword [rax + rax]
Function at 0x100407b60
Capabilities:
Query environment variable

Disassembly:
push rbx
sub rsp, 0x30
mov rbx, rcx
lea rcx, [0x1004361f0]
call sub.msys_2.0.dll_getenv
test rax, rax
setne byte [rbx + 0x11]
call fcn.100406f70
mov dword [rbx + 0x5c], 0
xor ecx, ecx
mov byte [rbx + 0x58], al
call sub.msys_2.0.dll_isatty
mov byte [rbx + 0xf], 0
test eax, eax
setne byte [rbx + 0x10]
cmp byte [rbx + 0x11], 0
je 0x100407ba5
mov byte [rbx + 0x10], 0
mov ecx, 1
mov qword [rbx + 4], 0xffffffffffffffff
xor edx, edx
mov word [rbx], cx
lea rcx, [rsp + 0x20]
call sub.msys_2.0.dll_gettimeofday
test eax, eax
jne 0x100407c50
imul rdx, qword [rsp + 0x28], 0x3e8
mov rax, qword [rsp + 0x20]
mov qword [rbx + 0x18], rax
sub rax, 0x15180
lea rcx, str.FIND_BLOCK_SIZE
mov qword [rbx + 0x28], rax
xor eax, eax
cmp byte [rbx + 0x11], 1
mov word [rbx + 0xd], ax
sbb eax, eax
and eax, 0x200
mov qword [rbx + 0x20], rdx
add eax, 0x200
mov qword [rbx + 0x30], rdx
mov edx, 1
mov byte [rbx + 0x38], 0
mov dword [rbx + 0x3c], eax
mov qword [rbx + 0x40], 0
mov word [rbx + 0x68], dx
call sub.msys_2.0.dll_getenv
test rax, rax
jne 0x100407c64
mov byte [rbx + 0xc], 0
xor ecx, ecx
call fcn.10040d650
mov dword [rbx + 0x6c], 8
mov qword [rbx + 0x70], 0
mov byte [rbx + 0x78], 0
add rsp, 0x30
pop rbx
ret
xor ecx, ecx
call sub.msys_2.0.dll_time
cmp rax, 0xffffffffffffffff
je 0x100407c7f
xor edx, edx
jmp 0x100407bd7
lea rcx, str.The_environment_variable_FIND_BLOCK_SIZE_is_not_supported__the_only_thing_that_affects_the_block_size_is_the_POSIXLY_CORRECT_environment_variable
call sub.msys_intl_8.dll_libintl_gettext
xor edx, edx
mov ecx, 1
mov r8, rax
call sub.msys_2.0.dll_error
lea r9, str.t____time_t__1
lea r8, [0x1004362b2]
mov edx, 0x3d1
lea rcx, str.util.c
call sub.msys_2.0.dll___assert_func
nop
nop
Function at 0x100407f90
Capabilities:
Get file attributes

Disassembly:
push rdi
push rsi
push rbx
sub rsp, 0xa0
mov rdi, rcx
mov ecx, 0x20
mov rsi, rdx
call sub.msys_2.0.dll_malloc
mov rbx, rax
test rax, rax
je 0x100408078
mov rcx, rsi
call sub.msys_2.0.dll_strdup
mov qword [rbx + 0x10], rax
test rax, rax
je 0x1004080b9
mov rdx, qword [rdi]
mov rcx, rsi
call fcn.1004106e0
mov qword [rbx + 0x18], rax
mov rcx, rax
test rax, rax
je 0x100408070
call sub.msys_2.0.dll_fileno
mov esi, eax
test eax, eax
js 0x10040809a
mov edx, 1
mov ecx, eax
call fcn.100410110
lea rdx, [rsp + 0x20]
mov ecx, esi
call sub.msys_2.0.dll_fstat
test eax, eax
js 0x100408070
mov eax, dword [rsp + 0x20]
mov rcx, qword [rdi + 8]
mov rdx, rbx
mov dword [rbx], eax
mov rax, qword [rsp + 0x28]
mov qword [rbx + 8], rax
call fcn.100413070
mov rsi, rax
test rax, rax
je 0x100408050
mov rcx, rbx
call fcn.100407e90
mov rax, qword [rsi + 0x18]
add rsp, 0xa0
pop rbx
pop rsi
pop rdi
ret
mov rcx, qword [rdi + 8]
mov rdx, rbx
call fcn.100413910
test rax, rax
je 0x100408080
mov rax, qword [rbx + 0x18]
add rsp, 0xa0
pop rbx
pop rsi
pop rdi
ret
mov rcx, rbx
call fcn.100407e90
xor eax, eax
jmp 0x100408040
call sub.msys_2.0.dll___errno
mov rcx, rbx
mov esi, dword [rax]
call fcn.100407e90
call sub.msys_2.0.dll___errno
mov dword [rax], esi
xor eax, eax
jmp 0x100408040
lea r9, [0x100436600]
lea r8, str.sharefile_fopen
mov edx, 0xa6
lea rcx, str.sharefile.c
call sub.msys_2.0.dll___assert_func
mov rcx, rbx
call fcn.100410780
xor eax, eax
jmp 0x100408040
Function at 0x10040d9b0
Capabilities:
Query environment variable

Disassembly:
push rsi
push rbx
sub rsp, 0x48
mov rbx, rcx
mov rsi, rdx
call sub.msys_2.0.dll_getenv
test rax, rax
je 0x10040d9f7
lea rdx, [rsp + 0x30]
lea r9, [rsp + 0x38]
mov r8d, 0xa
mov rcx, rax
mov qword [rsp + 0x20], 0
call fcn.10042b670
test eax, eax
jne 0x10040da00
mov eax, 1
cmp qword [rsp + 0x38], rsi
jb 0x10040d9f9
xor eax, eax
add rsp, 0x48
pop rbx
pop rsi
ret
lea rcx, str.Environment_variable__s_is_not_set_to_a_valid_decimal_number
call sub.msys_intl_8.dll_libintl_gettext
mov rsi, rax
call sub.msys_2.0.dll___errno
mov r9, rbx
mov r8, rsi
mov ecx, 1
mov edx, dword [rax]
call sub.msys_2.0.dll_error
nop
nop word [rax + rax]

Function at 0x10040e5d0
Capabilities:
Set current directory

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x38
lea rbp, [rsp + 0x20]
mov rdi, rcx
mov rbx, rdx
mov rsi, r8
mov rcx, rbp
call fcn.10042a300
test eax, eax
jne 0x10040e66d
mov rcx, rdi
call fcn.10042a360
test eax, eax
jne 0x10040e661
mov rcx, rsi
call rbx
mov ebx, eax
test eax, eax
js 0x10040e630
mov rcx, rbp
call fcn.10042a360
test eax, eax
jne 0x10040e661
mov rcx, rbp
call fcn.10042a380
mov eax, ebx
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
ret
call sub.msys_2.0.dll___errno
mov rcx, rbp
mov esi, dword [rax]
call fcn.10042a360
test eax, eax
jne 0x10040e661
mov rcx, rbp
call fcn.10042a380
test esi, esi
je 0x10040e61d
call sub.msys_2.0.dll___errno
mov dword [rax], esi
mov eax, ebx
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
ret
call sub.msys_2.0.dll___errno
mov ecx, dword [rax]
call fcn.100417330
call sub.msys_2.0.dll___errno
mov ecx, dword [rax]
call fcn.100417300
nop
nop word [rax + rax]
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x38
mov ebx, ecx
mov rsi, rdx
mov rdi, r8
cmp ecx, 0xfffffffe
je 0x10040e6f0
lea rbp, [rsp + 0x20]
mov rcx, rbp
call fcn.10042a300
test eax, eax
jne 0x10040e75e
mov ecx, ebx
call fcn.100431a10
test eax, eax
jne 0x10040e738
mov rcx, rdi
call rsi
mov ebx, eax
test eax, eax
js 0x10040e700
mov rcx, rbp
call fcn.10042a360
test eax, eax
jne 0x10040e76a
mov rcx, rbp
call fcn.10042a380
mov eax, ebx
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
ret
mov rcx, r8
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
jmp rdx
call sub.msys_2.0.dll___errno
mov rcx, rbp
mov esi, dword [rax]
call fcn.10042a360
test eax, eax
jne 0x10040e76a
mov rcx, rbp
call fcn.10042a380
test esi, esi
je 0x10040e6dc
call sub.msys_2.0.dll___errno
mov dword [rax], esi
mov eax, ebx
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
ret
call sub.msys_2.0.dll___errno
mov rcx, rbp
mov ebx, dword [rax]
call fcn.10042a380
call sub.msys_2.0.dll___errno
mov dword [rax], ebx
mov ebx, 0xffffffff
mov eax, ebx
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
ret
call sub.msys_2.0.dll___errno
mov ecx, dword [rax]
call fcn.100417300
call sub.msys_2.0.dll___errno
mov ecx, dword [rax]
call fcn.100417330
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
Function at 0x10040e680
Capabilities:
Set current directory

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x38
lea rbp, [rsp + 0x20]
mov rdi, rcx
mov rbx, rdx
mov rsi, r8
mov rcx, rbp
call fcn.10042a300
test eax, eax
jne 0x10040e66d
mov rcx, rdi
call fcn.10042a360
test eax, eax
jne 0x10040e661
mov rcx, rsi
call rbx
mov ebx, eax
test eax, eax
js 0x10040e630
mov rcx, rbp
call fcn.10042a360
test eax, eax
jne 0x10040e661
mov rcx, rbp
call fcn.10042a380
mov eax, ebx
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
ret
call sub.msys_2.0.dll___errno
mov rcx, rbp
mov esi, dword [rax]
call fcn.10042a360
test eax, eax
jne 0x10040e661
mov rcx, rbp
call fcn.10042a380
test esi, esi
je 0x10040e61d
call sub.msys_2.0.dll___errno
mov dword [rax], esi
mov eax, ebx
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
ret
call sub.msys_2.0.dll___errno
mov ecx, dword [rax]
call fcn.100417330
call sub.msys_2.0.dll___errno
mov ecx, dword [rax]
call fcn.100417300
nop
nop word [rax + rax]
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x38
mov ebx, ecx
mov rsi, rdx
mov rdi, r8
cmp ecx, 0xfffffffe
je 0x10040e6f0
lea rbp, [rsp + 0x20]
mov rcx, rbp
call fcn.10042a300
test eax, eax
jne 0x10040e75e
mov ecx, ebx
call fcn.100431a10
test eax, eax
jne 0x10040e738
mov rcx, rdi
call rsi
mov ebx, eax
test eax, eax
js 0x10040e700
mov rcx, rbp
call fcn.10042a360
test eax, eax
jne 0x10040e76a
mov rcx, rbp
call fcn.10042a380
mov eax, ebx
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
ret
mov rcx, r8
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
jmp rdx
call sub.msys_2.0.dll___errno
mov rcx, rbp
mov esi, dword [rax]
call fcn.10042a360
test eax, eax
jne 0x10040e76a
mov rcx, rbp
call fcn.10042a380
test esi, esi
je 0x10040e6dc
call sub.msys_2.0.dll___errno
mov dword [rax], esi
mov eax, ebx
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
ret
call sub.msys_2.0.dll___errno
mov rcx, rbp
mov ebx, dword [rax]
call fcn.10042a380
call sub.msys_2.0.dll___errno
mov dword [rax], ebx
mov ebx, 0xffffffff
mov eax, ebx
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
ret
call sub.msys_2.0.dll___errno
mov ecx, dword [rax]
call fcn.100417300
call sub.msys_2.0.dll___errno
mov ecx, dword [rax]
call fcn.100417330
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop

Function at 0x10040ed20
Capabilities:
Query environment variable

Disassembly:
sub rsp, 0x28
lea rcx, str.GNU_FINDUTILS_FD_LEAK_CHECK
call sub.msys_2.0.dll_getenv
test rax, rax
setne al
add rsp, 0x28
ret
Function at 0x100410890
Capabilities:
Get file attributes

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
mov eax, dword [rcx + 0x48]
mov rsi, rcx
mov rbx, rdx
lea rbp, [rdx + 0x70]
test al, 2
jne 0x1004108c0
test al, 1
je 0x100410960
cmp qword [rdx + 0x58], 0
jne 0x100410960
nop dword [rax]
mov rdx, qword [rbx + 0x30]
mov ecx, dword [rsi + 0x2c]
xor r9d, r9d
mov r8, rbp
call fcn.100431af0
test eax, eax
js 0x100410910
mov eax, dword [rbx + 0x80]
and eax, 0xf000
cmp eax, 0x4000
je 0x100410990
cmp eax, 0xa000
je 0x100410a10
cmp eax, 0x8000
sete al
movzx eax, al
lea eax, [rax + rax*4 + 3]
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
ret
call sub.msys_2.0.dll___errno
cmp dword [rax], 2
je 0x1004109d8
call sub.msys_2.0.dll___errno
lea rdi, [rbp + 8]
mov rcx, rbp
and rdi, 0xfffffffffffffff8
mov eax, dword [rax]
mov qword [rbx + 0x70], 0
sub rcx, rdi
sub ecx, 0xffffff80
mov dword [rbx + 0x40], eax
xor eax, eax
shr ecx, 3
mov qword [rbp + 0x78], 0
rep stosq qword [rdi], rax
mov eax, 0xa
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
ret
test r8b, r8b
jne 0x1004108c0
mov rdx, qword [rbx + 0x30]
mov ecx, dword [rsi + 0x2c]
mov r9d, 2
mov r8, rbp
call fcn.100431af0
test eax, eax
jns 0x1004108d6
jmp 0x10041091e
cmp byte [rbx + 0xf0], 0x2e
mov eax, 1
jne 0x100410906
cmp byte [rbx + 0xf1], 0
je 0x1004109c3
mov edx, dword [rbx + 0xf0]
and edx, 0xffff00
cmp edx, 0x2e00
jne 0x100410906
cmp qword [rbx + 0x58], 1
sbb eax, eax
and eax, 0xfffffffc
add eax, 5
jmp 0x100410906
mov rdx, qword [rbx + 0x30]
mov ecx, dword [rsi + 0x2c]
mov r9d, 2
mov r8, rbp
call fcn.100431af0
test eax, eax
js 0x10041091e
call sub.msys_2.0.dll___errno
mov dword [rax], 0
mov eax, 0xd
jmp 0x100410906
mov eax, 0xc
jmp 0x100410906

Function at 0x100410de0
Capabilities:
Set current directory

Disassembly:
push rsi
push rbx
sub rsp, 0x28
mov eax, dword [rcx + 0x48]
mov rbx, rcx
test al, 4
je 0x100410e38
xor esi, esi
add rbx, 0x60
jmp 0x100410e0c
mov rcx, rbx
call fcn.100414890
test eax, eax
jns 0x100410e28
mov rcx, rbx
call fcn.100414840
test al, al
je 0x100410e00
mov eax, esi
add rsp, 0x28
pop rbx
pop rsi
ret
mov ecx, eax
call sub.msys_2.0.dll_close
jmp 0x100410e0c
test ah, 2
je 0x100410e50
mov r8d, 1
mov edx, 0xfffffffe
call fcn.100410cd0
jmp 0x100410df0
mov ecx, dword [rcx + 0x28]
xor esi, esi
call fcn.100431a10
test eax, eax
setne sil
jmp 0x100410df2
Function at 0x100410e70
Capabilities:
Get file attributes
Set current directory

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xa0
mov ebp, dword [rcx + 0x48]
mov eax, ebp
and eax, 4
mov rdi, rcx
mov r12, rdx
mov esi, r8d
mov rbx, r9
test r9, r9
je 0x100410ea0
cmp byte [r9], 0x2e
je 0x100410f10
test eax, eax
jne 0x100410f70
test esi, esi
js 0x100411096
mov ebp, esi
xor r13d, r13d
lea rdx, [rsp + 0x20]
mov ecx, ebp
call sub.msys_2.0.dll_fstat
test eax, eax
jne 0x100410eeb
mov eax, dword [rsp + 0x20]
cmp dword [r12 + 0x70], eax
jne 0x100410ee0
mov rax, qword [rsp + 0x28]
cmp qword [r12 + 0x78], rax
je 0x100410f88
call sub.msys_2.0.dll___errno
mov dword [rax], 2
mov ebx, 0xffffffff
test esi, esi
js 0x100410ff0
mov eax, ebx
add rsp, 0xa0
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
cmp byte [r9 + 1], 0x2e
jne 0x100410ea0
cmp byte [r9 + 2], 0
jne 0x100410ea0
test eax, eax
jne 0x100410f70
test r8d, r8d
jns 0x100411088
test ebp, 0x200
jne 0x100410fb0
mov r8d, ebp
mov r13d, 1
shl r8d, 0x10
and r8d, 0x100000
or r8d, 0x64c000
mov edx, r8d
mov rcx, rbx
call fcn.1004104f0
mov ebp, eax
test ebp, ebp
jns 0x100410eb5
mov ebx, 0xffffffff
jmp 0x100410ef8
and ebp, 0x200
je 0x100410f7c
test esi, esi
jns 0x100410fa0
xor ebx, ebx
jmp 0x100410ef8
test byte [rdi + 0x49], 2
jne 0x100411068
mov ecx, ebp
call fcn.100431a10
mov ebx, eax
jmp 0x100410ef0
mov ecx, esi
xor ebx, ebx
call sub.msys_2.0.dll_close
jmp 0x100410ef8
lea r14, [rcx + 0x60]
mov rcx, r14
call fcn.100414840
mov r13d, eax
test al, al
je 0x100411010
mov r8d, ebp
mov ecx, dword [rdi + 0x2c]
shl r8d, 0x10
and r8d, 0x100000
or r8d, 0x64c000
mov rdx, rbx
call fcn.100417360
mov ebp, eax
jmp 0x100410f5b
call sub.msys_2.0.dll___errno
mov ecx, ebp
mov esi, dword [rax]
call sub.msys_2.0.dll_close
call sub.msys_2.0.dll___errno
mov dword [rax], esi
jmp 0x100410ef8
mov rcx, r14
call fcn.100414890
mov ebp, eax
test eax, eax
js 0x100411030
mov esi, eax
mov r13d, 1
jmp 0x100410eb5
mov ebp, dword [rdi + 0x48]
mov r13d, 1
mov eax, ebp
and eax, 0x200
mov r8d, ebp
mov ecx, dword [rdi + 0x2c]
shl r8d, 0x10
and r8d, 0x100000
or r8d, 0x64c000
test eax, eax
je 0x100410f4e
jmp 0x100410fdb
xor r13d, 1
mov edx, ebp
mov rcx, rdi
xor ebx, ebx
movzx r8d, r13b
call fcn.100410cd0
jmp 0x100410ef8
mov ebp, r8d
mov r13d, 1
jmp 0x100410eb5
mov eax, ebp
xor r13d, r13d
and eax, 0x200
jmp 0x100411040
Function at 0x100411ed0
Capabilities:
Set current directory

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
mov rsi, rcx
mov rcx, qword [rcx]
test rcx, rcx
je 0x100411f20
cmp qword [rcx + 0x58], 0
jns 0x100411eff
jmp 0x10041202f
call fcn.100410780
cmp qword [rbx + 0x58], 0
js 0x100411f18
mov rcx, rbx
mov rbx, qword [rcx + 0x10]
test rbx, rbx
jne 0x100411ef0
mov rbx, qword [rcx + 8]
call fcn.100410780
cmp qword [rbx + 0x58], 0
jns 0x100411efc
mov rcx, rbx
call fcn.100410780
mov rbx, qword [rsi + 8]
test rbx, rbx
je 0x100411f59
call sub.msys_2.0.dll___errno
mov ebp, dword [rax]
mov rdi, rbx
mov rbx, qword [rbx + 0x10]
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x100411f45
call sub.msys_2.0.dll_closedir
mov rcx, rdi
call fcn.100410780
test rbx, rbx
jne 0x100411f30
call sub.msys_2.0.dll___errno
mov dword [rax], ebp
mov rcx, qword [rsi + 0x10]
call fcn.100410780
mov rcx, qword [rsi + 0x20]
call fcn.100410780
mov eax, dword [rsi + 0x48]
test ah, 2
je 0x100411ff8
mov ecx, dword [rsi + 0x2c]
test ecx, ecx
jns 0x10041200b
xor edi, edi
lea rbx, [rsi + 0x60]
jmp 0x100411f9c
mov rcx, rbx
call fcn.100414890
test eax, eax
jns 0x100411fe8
mov rcx, rbx
call fcn.100414840
test al, al
je 0x100411f90
mov rcx, qword [rsi + 0x50]
test rcx, rcx
je 0x100411fb6
call fcn.1004134a0
test dword [rsi + 0x48], 0x102
mov rcx, qword [rsi + 0x58]
je 0x100412028
test rcx, rcx
je 0x100411fcd
call fcn.1004134a0
mov rcx, rsi
call fcn.100410780
test edi, edi
jne 0x100412058
mov eax, edi
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
ret
mov ecx, eax
call sub.msys_2.0.dll_close
jmp 0x100411f9c
test al, 4
jne 0x100411f82
mov ecx, dword [rsi + 0x28]
call fcn.100431a10
test eax, eax
jne 0x100412037
mov ecx, dword [rsi + 0x28]
call sub.msys_2.0.dll_close
test eax, eax
je 0x100411f82
call sub.msys_2.0.dll___errno
mov edi, dword [rax]
jmp 0x100411f84
call fcn.100410780
jmp 0x100411fcd
mov rbx, rcx
jmp 0x100411f18
call sub.msys_2.0.dll___errno
mov ecx, dword [rsi + 0x28]
mov edi, dword [rax]
call sub.msys_2.0.dll_close
test edi, edi
jne 0x100411f84
test eax, eax
je 0x100411f84
jmp 0x100412018
call sub.msys_2.0.dll___errno
mov dword [rax], edi
mov edi, 0xffffffff
jmp 0x100411fd9
Function at 0x10041a050
Capabilities:
Query environment variable

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x20
xor esi, esi
mov rdi, rcx
lea rcx, [0x100439ab2]
mov rbp, rdx
mov r12, r8
call sub.msys_2.0.dll_getenv
mov rcx, rax
call fcn.10042a650
mov rbx, rax
test rax, rax
je 0x10041a09c
mov rcx, rdi
mov r9, rax
mov r8, r12
mov rdx, rbp
call fcn.100419330
mov rcx, rbx
mov esi, eax
call fcn.10042a8f0
mov eax, esi
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret

Function at 0x10041a0b0
Capabilities:
Write file on windows

Disassembly:
push rdi
push rsi
push rbx
sub rsp, 0x20
mov rbx, rcx
test rcx, rcx
je 0x10041a13d
mov edx, 0x2f
call sub.msys_2.0.dll_strrchr
mov rsi, rax
test rax, rax
je 0x10041a11b
lea rdi, [rax + 1]
mov rax, rdi
sub rax, rbx
cmp rax, 6
jle 0x10041a11b
lea rcx, [rsi - 6]
mov r8d, 7
lea rdx, str._.libs_
call sub.msys_2.0.dll_strncmp
test eax, eax
jne 0x10041a11b
cmp byte [rsi + 1], 0x6c
jne 0x10041a138
cmp byte [rdi + 1], 0x74
jne 0x10041a138
cmp byte [rdi + 2], 0x2d
jne 0x10041a138
mov rax, qword [sym.imp.msys_2.0.dll_program_invocation_short_name]
lea rbx, [rsi + 4]
mov qword [rax], rbx
mov rax, qword [sym.imp.msys_2.0.dll_program_invocation_name]
mov qword [0x100453820], rbx
mov qword [rax], rbx
add rsp, 0x20
pop rbx
pop rsi
pop rdi
ret
mov rbx, rdi
jmp 0x10041a11b
call sub.msys_2.0.dll___getreent
mov r8d, 0x37
mov edx, 1
lea rcx, str.A_NULL_argv_0__was_passed_through_an_exec_system_call._n
mov r9, qword [rax + 0x18]
call fcn.100431b00
call sub.msys_2.0.dll_abort
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
Function at 0x10042a3b0
Capabilities:
Set current directory

Disassembly:
push rbp
mov eax, 0xfe8
push rdi
push rsi
push rbx
call fcn.100431810
sub rsp, rax
mov ebx, ecx
mov r8, rdx
cmp ecx, 0xfffffffe
je 0x10042a4c0
movzx eax, byte [rdx]
cmp al, 0x2f
je 0x10042a4c0
cmp al, 0x5c
je 0x10042a4c0
or eax, 0x20
movsx eax, al
sub eax, 0x61
cmp eax, 0x19
ja 0x10042a3fa
cmp byte [rdx + 1], 0x3a
je 0x10042a4c0
lea rsi, [rsp + 0x20]
mov edx, ebx
mov rcx, rsi
call fcn.10042f360
mov rdi, rax
test rax, rax
je 0x10042a450
call sub.msys_2.0.dll___errno
mov dword [rax], 0x86
call sub.msys_2.0.dll___errno
mov ebp, dword [rax]
cmp rdi, rsi
je 0x10042a430
mov rcx, rdi
call fcn.100410780
cmp ebp, 0x14
jbe 0x10042a4d0
cmp ebp, 0x58
je 0x10042a450
cmp ebp, 0x5f
jne 0x10042a4e1
nop word [rax + rax]
mov rcx, rsi
call fcn.10042a300
test eax, eax
jne 0x10042a538
test ebx, ebx
js 0x10042a46e
cmp dword [rsp + 0x20], ebx
je 0x10042a520
mov ecx, ebx
call fcn.100431a10
test eax, eax
jne 0x10042a500
call sub.msys_2.0.dll___errno
mov dword [rax], 0x86
call sub.msys_2.0.dll___errno
mov rcx, rsi
mov ebx, dword [rax]
call fcn.10042a360
test eax, eax
jne 0x10042a544
mov rcx, rsi
call fcn.10042a380
test ebx, ebx
jne 0x10042a4f0
mov eax, 0xffffffff
add rsp, 0xfe8
pop rbx
pop rsi
pop rdi
pop rbp
ret
call sub.msys_2.0.dll___errno
mov dword [rax], 0x86
jmp 0x10042a4ab
mov rax, 0xffffffffffefdff9
bt rax, rbp
jae 0x10042a450
call sub.msys_2.0.dll___errno
mov dword [rax], ebp
jmp 0x10042a4ab
call sub.msys_2.0.dll___errno
mov dword [rax], ebx
jmp 0x10042a4ab
call sub.msys_2.0.dll___errno
mov rcx, rsi
mov ebx, dword [rax]
call fcn.10042a380
call sub.msys_2.0.dll___errno
mov dword [rax], ebx
jmp 0x10042a4ab
mov rcx, rsi
call fcn.10042a380
call sub.msys_2.0.dll___errno
mov dword [rax], 9
jmp 0x10042a4ab
call sub.msys_2.0.dll___errno
mov ecx, dword [rax]
call fcn.100417300
call sub.msys_2.0.dll___errno
mov ecx, dword [rax]
call fcn.100417330
nop
nop word cs:[rax + rax]
nop dword [rax]
jmp fcn.10042a3b0