joyce8/EMBER2024-capa huggingface dataset:
Function at 0x100402130
Capabilities:
Get file attributes

Disassembly:
push rdi
push rsi
push rbx
sub rsp, 0x120
mov edi, edx
call sub.msys_gcrypt_20.dll_gcry_xstrdup
mov rbx, rax
test edi, edi
je 0x100402154
mov r8d, dword [0x1004c4400]
test r8d, r8d
jns 0x1004021c8
lea rdx, [rsp + 0x20]
mov rcx, rbx
call fcn.1004a5920
test eax, eax
je 0x100402180
xor esi, esi
mov rcx, rbx
call sub.msys_gcrypt_20.dll_gcry_free
mov eax, esi
add rsp, 0x120
pop rbx
pop rsi
pop rdi
ret
mov rcx, rbx
call fcn.10049eb20
lea rdx, [rsp + 0xa0]
mov rcx, rax
mov rsi, rax
call fcn.1004a5920
mov rcx, rsi
test eax, eax
jne 0x1004021b5
mov eax, dword [rsp + 0xb0]
and eax, 0xf000
cmp eax, 0x4000
je 0x100402200
call sub.msys_gcrypt_20.dll_gcry_free
mov esi, 1
jmp 0x100402167
call fcn.1004a6a90
mov rcx, rax
call sub.msys_2.0.dll_strlen
mov rsi, rax
call fcn.1004a6a90
mov r8, rsi
mov rdx, rbx
mov rcx, rax
call fcn.10049ef50
mov esi, dword [0x1004c4400]
test eax, eax
jne 0x100402154
jmp 0x100402167
call sub.msys_gcrypt_20.dll_gcry_free
mov eax, dword [rsp + 0x30]
and eax, 0xf000
test edi, edi
jne 0x100402260
mov esi, 1
cmp eax, 0x4000
jne 0x100402167
mov esi, dword [rsp + 0x38]
call sub.msys_2.0.dll_getuid
cmp esi, eax
je 0x10040230c
lea rcx, str.WARNING:_unsafe_ownership_on_homedir__s_n
mov dword [0x1004c4400], 1
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, rbx
mov rcx, rax
call sub.msys_gpg_error_0.dll_gpgrt_log_info
jmp 0x1004021ba
cmp eax, 0x8000
jne 0x1004021ba
mov esi, dword [rsp + 0x38]
call sub.msys_2.0.dll_getuid
cmp esi, eax
je 0x100402280
mov ecx, dword [rsp + 0x38]
test ecx, ecx
jne 0x1004022d4
mov esi, dword [rsp + 0xb8]
test byte [rsp + 0x30], 0x12
jne 0x100402348
call sub.msys_2.0.dll_getuid
cmp eax, esi
je 0x1004022a6
mov edx, dword [rsp + 0xb8]
test edx, edx
jne 0x1004022f0
test byte [rsp + 0xb0], 0x12
je 0x100402165
nop dword [rax]
lea rcx, str.WARNING:_unsafe_enclosing_directory_permissions_on_configuration_file__s_n
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, rbx
mov rcx, rax
call sub.msys_gpg_error_0.dll_gpgrt_log_info
jmp 0x1004021ba
lea rcx, str.WARNING:_unsafe_ownership_on_configuration_file__s_n
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, rbx
mov rcx, rax
call sub.msys_gpg_error_0.dll_gpgrt_log_info
jmp 0x1004021ba
lea rcx, str.WARNING:_unsafe_enclosing_directory_ownership_on_configuration_file__s_n
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, rbx
mov rcx, rax
call sub.msys_gpg_error_0.dll_gpgrt_log_info
jmp 0x1004021ba
test byte [rsp + 0x30], 0x12
jne 0x100402322
mov dword [0x1004c4400], 0
jmp 0x100402165
lea rcx, str.WARNING:_unsafe_permissions_on_homedir__s_n
mov dword [0x1004c4400], 1
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, rbx
mov rcx, rax
call sub.msys_gpg_error_0.dll_gpgrt_log_info
jmp 0x1004021ba
call sub.msys_2.0.dll_getuid
cmp eax, esi
je 0x10040235c
mov eax, dword [rsp + 0xb8]
test eax, eax
jne 0x1004022f0
test byte [rsp + 0xb0], 0x3f
je 0x100402165
lea rcx, str.WARNING:_unsafe_permissions_on_configuration_file__s_n
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, rbx
mov rcx, rax
call sub.msys_gpg_error_0.dll_gpgrt_log_info
jmp 0x1004022b8
Function at 0x100403100
Capabilities:
Terminate process

Disassembly:
sub rsp, 0x28
sub ecx, 0x282
cmp ecx, 6
ja case.default.0x100403121
lea rdx, [0x1004c9738]
movsxd rax, dword [rdx + rcx*4]
add rax, rdx
jmp rax
mov rax, qword [0x1004cef20]
or byte [0x100505380], 0x19
mov dword [0x1005051cc], 1
mov qword [0x1005052d8], rax
mov rax, qword [0x1004cef28]
mov dword [0x100505360], 0
mov qword [0x100505208], rax
mov rax, qword [0x1004cef30]
mov dword [0x1005050fc], 0
mov qword [0x10050510c], 0
mov dword [0x100505114], 0xffffffff
mov qword [0x1005051f8], rax
mov dword [0x100505200], 2
add rsp, 0x28
ret
mov dword [0x1005051cc], 3
add rsp, 0x28
ret
mov dword [0x1005051cc], 4
add rsp, 0x28
ret
mov rax, qword [0x1004cef20]
or byte [0x100505380], 0x19
mov dword [0x100505360], 0
mov qword [0x1005052d8], rax
mov rax, qword [0x1004cef28]
mov dword [0x1005050fc], 0
mov qword [0x100505208], rax
mov rax, qword [0x1004cef38]
mov qword [0x10050510c], 0
mov dword [0x100505114], 0xffffffff
mov dword [0x1005051f8], 3
mov dword [0x1005051cc], 5
mov qword [0x1005051fc], rax
add rsp, 0x28
ret
mov dword [0x1005051cc], 0
add rsp, 0x28
ret
mov rax, qword [0x1004cef20]
mov dword [0x1005051cc], 2
mov dword [0x100505360], 1
mov qword [0x1005052d8], rax
mov rax, qword [0x1004cef30]
mov qword [0x100505208], 0
mov qword [0x1005051f8], rax
movzx eax, byte [0x100505380]
mov dword [0x1005050fc], 0
mov qword [0x10050510c], 0
and eax, 0xffffffe7
mov dword [0x100505114], 0xffffffff
or eax, 0x10
mov dword [0x100505200], 2
mov byte [0x100505380], al
add rsp, 0x28
ret
lea rdx, str.set_compliance_option
mov ecx, 0x90a
call fcn.100402650
nop
nop

Function at 0x1004032e0
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x20
mov ebx, ecx
test ecx, ecx
jne 0x1004032fb
xor ecx, ecx
call sub.msys_gpg_error_0.dll_gpgrt_get_errorcount
test eax, eax
je 0x100403343
mov ebx, 2
mov edx, 0x2000001
lea rcx, str.gpg_exit
call fcn.10043c3a0
mov ecx, 0x2e
call sub.msys_gcrypt_20.dll_gcry_control
mov eax, dword [0x100505048]
test ah, 0x10
jne 0x1004033b5
test al, 0x80
jne 0x100403387
test eax, eax
jne 0x10040337b
call fcn.1004b3290
mov ecx, 0x19
call sub.msys_gcrypt_20.dll_gcry_control
mov ecx, ebx
call sub.msys_2.0.dll_exit
mov ebx, dword [0x100505008]
test ebx, ebx
jne 0x100403374
cmp qword [0x100505370], 0
je 0x100403360
cmp dword [0x100505004], 0
je 0x100403374
cmp qword [0x100505378], 0
je 0x10040330c
mov ebx, dword [section..bss]
test ebx, ebx
je 0x10040330c
mov ebx, 1
jmp 0x1004032fb
mov ecx, 0xe
call sub.msys_gcrypt_20.dll_gcry_control
jmp 0x10040332d
call fcn.10041e9b0
call fcn.10043eb90
call fcn.1004471c0
mov ecx, 0x17
call sub.msys_gcrypt_20.dll_gcry_control
mov ecx, 0xd
call sub.msys_gcrypt_20.dll_gcry_control
mov eax, dword [0x100505048]
jmp 0x100403329
lea rcx, str.stop
call sub.msys_gpg_error_0.dll_gpgrt_log_clock
mov eax, dword [0x100505048]
jmp 0x100403325
Function at 0x100420890
Capabilities:
Get file attributes

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xb8
mov rdi, rcx
mov rbp, rdx
mov rsi, r8
mov r9, rdx
xor r8d, r8d
xor ecx, ecx
mov edx, 2
mov dword [rsp + 0x2c], 0
call fcn.1004ae550
test eax, eax
jne 0x1004209a8
mov r9, rdi
xor r8d, r8d
mov edx, 2
xor ecx, ecx
call fcn.1004ae550
mov r9, rsi
xor r8d, r8d
mov edx, 2
xor ecx, ecx
call fcn.1004ae550
lea r8, [rsp + 0x2c]
mov rdx, rdi
mov rcx, rsi
mov dword [rsp + 0x2c], 1
call fcn.1004a54a0
mov ebx, eax
test eax, eax
je 0x100420928
mov eax, dword [rsp + 0x2c]
test eax, eax
jne 0x1004209cc
mov eax, ebx
add rsp, 0xb8
pop rbx
pop rsi
pop rdi
pop rbp
ret
mov rdx, rsi
xor r8d, r8d
mov rcx, rbp
call fcn.1004a54a0
mov edx, dword [rsp + 0x2c]
mov ebx, eax
test edx, edx
jne 0x1004209f0
test ebx, ebx
jne 0x1004209e0
lea rdx, [rsp + 0x30]
mov rcx, rdi
mov dword [rsp + 0x40], 0x180
call fcn.1004a5920
test eax, eax
jne 0x100420975
mov edx, dword [rsp + 0x40]
mov rcx, rsi
call sub.msys_2.0.dll_chmod
test eax, eax
je 0x100420914
call sub.msys_2.0.dll___errno
mov ecx, dword [rax]
call sub.msys_2.0.dll_strerror
mov rdx, rsi
lea rcx, str.WARNING:_unable_to_restore_permissions_to__s:__s
mov r8, rax
call sub.msys_gpg_error_0.dll_gpgrt_log_error
mov eax, ebx
add rsp, 0xb8
pop rbx
pop rsi
pop rdi
pop rbp
ret
call sub.msys_gpg_error_0.dll_gpg_err_code_from_syserror
movzx ebx, ax
or ebx, 0x2000000
test eax, eax
mov eax, 0
cmove ebx, eax
mov eax, dword [rsp + 0x2c]
test eax, eax
je 0x100420914
call fcn.1004b32e0
mov eax, ebx
add rsp, 0xb8
pop rbx
pop rsi
pop rdi
pop rbp
ret
mov rcx, rsi
call fcn.10042d020
jmp 0x100420908
call fcn.1004b32e0
mov dword [rsp + 0x2c], 0
jmp 0x100420944
Function at 0x10042ed50
Capabilities:
Query environment variable

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x30
mov rdi, rcx
lea rcx, [0x1004d8a50]
mov ebp, edx
call sub.msys_2.0.dll_getenv
mov rbx, rax
test rax, rax
je 0x10042ee38
movzx eax, byte [rdi]
and eax, 0xffffffdf
sub eax, 0x41
cmp al, 0x19
ja 0x10042ed92
cmp byte [rdi + 1], 0x3a
je 0x10042ee38
mov rcx, rbx
lea r13, [rsp + 0x28]
lea r12, [0x1004d8a55]
call sub.msys_2.0.dll_strlen
mov rcx, rdi
mov rsi, rax
call sub.msys_2.0.dll_strlen
lea rcx, [rsi + rax + 2]
call sub.msys_gcrypt_20.dll_gcry_xmalloc
mov rcx, rbx
mov ebx, 0xffffffff
mov rsi, rax
call sub.msys_gcrypt_20.dll_gcry_xstrdup
mov qword [rsp + 0x28], rax
mov r14, rax
jmp 0x10042edff
mov rcx, rsi
call sub.msys_2.0.dll_stpcpy
mov rdx, rdi
mov byte [rax], 0x2f
lea rcx, [rax + 1]
call sub.msys_2.0.dll_strcpy
mov edx, ebp
mov rcx, rsi
call sub.msys_2.0.dll_access
mov ebx, eax
test eax, eax
je 0x10042ee12
mov rdx, r12
mov rcx, r13
call sub.msys_2.0.dll_strsep
mov rdx, rax
test rax, rax
jne 0x10042edd8
mov rcx, r14
call sub.msys_gcrypt_20.dll_gcry_free
mov rcx, rsi
call sub.msys_gcrypt_20.dll_gcry_free
mov eax, ebx
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
mov edx, ebp
mov rcx, rdi
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
jmp sub.msys_2.0.dll_access
Function at 0x100431500
Capabilities:
Get file attributes

Disassembly:
push rsi
push rbx
sub rsp, 0xa8
xor r8d, r8d
lea rdx, str.openpgp_revocs.d
call fcn.10049eb90
lea rdx, [rsp + 0x20]
mov rcx, rax
mov rbx, rax
call fcn.1004a5920
test eax, eax
jne 0x100431540
mov rax, rbx
add rsp, 0xa8
pop rbx
pop rsi
ret
call sub.msys_2.0.dll___errno
cmp dword [rax], 2
jne 0x10043152c
lea rdx, [0x1004d8e07]
mov rcx, rbx
call fcn.1004a55c0
test eax, eax
jne 0x100431588
mov rax, qword [0x1004f7480]
mov eax, dword [rax + 4]
test eax, eax
jne 0x10043152c
lea rcx, [0x1004d8e31]
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, rbx
mov rcx, rax
call sub.msys_gpg_error_0.dll_gpgrt_log_info
jmp 0x10043152c
call sub.msys_2.0.dll___errno
mov ecx, dword [rax]
call sub.msys_2.0.dll_strerror
lea rcx, [0x1004d8e10]
mov rsi, rax
call sub.msys_intl_8.dll_libintl_gettext
mov r8, rsi
mov rdx, rbx
mov rcx, rax
call sub.msys_gpg_error_0.dll_gpgrt_log_error
jmp 0x10043152c

Function at 0x10043c5f0
Capabilities:
Terminate process

Disassembly:
mov rax, qword [0x1004f7480]
cmp dword [rax + 0x2cc], 0xffffffff
je 0x10043c610
xor r8d, r8d
xor edx, edx
jmp fcn.10043bd90
mov rcx, rdx
jmp fcn.1004b1780
Function at 0x100480f80
Capabilities:
Resolve function by parsing pe exports

Disassembly:
jmp 0x100484c20
push rdi
push rsi
push rbx
sub rsp, 0x20
xor edx, edx
mov rbx, rcx
call fcn.100482070
mov eax, dword [0x100507660]
or eax, dword [0x100507630]
jne 0x100484c59
mov rsi, qword [0x1004f7480]
mov eax, dword [rsi + 0x180]
lea edx, [rax - 6]
cmp edx, 1
jbe 0x100484c68
cmp eax, 1
jbe 0x100484c68
add rsp, 0x20
pop rbx
pop rsi
pop rdi
ret
mov dword [0x100507630], 1
call fcn.100486720
mov rdi, rax
test rax, rax
jne 0x100484cc0
mov ecx, dword [0x100507634]
test ecx, ecx
je 0x100484c59
mov edx, dword [rsi + 0x2f4]
mov eax, dword [rsi + 4]
test edx, edx
je 0x100484cd0
mov dword [0x100507634], 1
test eax, eax
jne 0x100484c59
lea rcx, str.please_do_a___check_trustdb_n
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
add rsp, 0x20
pop rbx
pop rsi
pop rdi
jmp sub.msys_gpg_error_0.dll_gpgrt_log_info
call fcn.1004a82c0
mov eax, eax
cmp rax, rdi
jb 0x100484c7f
jmp 0x100484c89
test eax, eax
je 0x100484ce8
xor edx, edx
mov rcx, rbx
add rsp, 0x20
pop rbx
pop rsi
pop rdi
jmp 0x1004827a0
lea rcx, str.checking_the_trustdb_n
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
call sub.msys_gpg_error_0.dll_gpgrt_log_info
jmp 0x100484cd4

Function at 0x100480f90
Capabilities:
Resolve function by parsing pe exports

Disassembly:
jmp 0x1004849c0
mov r8d, dword [0x100507634]
test r8d, r8d
je 0x1004849e7
mov rax, qword [0x1004f7480]
mov edx, dword [rax + 0x258]
test edx, edx
jne 0x1004849f0
mov eax, dword [rax + 0x2f4]
test eax, eax
je 0x1004849f8
ret
jmp fcn.1004847b0
jmp fcn.100484880
Function at 0x100484880
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push rsi
push rbx
sub rsp, 0x28
xor edx, edx
mov rbx, rcx
call fcn.100482070
mov rdx, qword [0x1004f7480]
mov eax, dword [rdx + 0x180]
lea ecx, [rax - 6]
cmp ecx, 1
jbe 0x1004848aa
cmp eax, 1
ja 0x1004848d0
mov ecx, dword [rdx + 0x6c]
test ecx, ecx
je 0x1004848b8
mov eax, dword [rdx + 0x70]
test eax, eax
je 0x1004848f0
xor edx, edx
mov rcx, rbx
add rsp, 0x28
pop rbx
pop rsi
jmp 0x1004827a0
cmp eax, 7
ja case.0x1004848e7.0
lea rdx, [0x1004e8674]
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
call fcn.100486720
mov rsi, rax
test rax, rax
je 0x100484920
call fcn.1004a82c0
mov eax, eax
cmp rax, rsi
jae 0x1004848b8
mov ecx, esi
call fcn.1004a8e60
lea rcx, str.next_trustdb_check_due_at__s_n
mov rbx, rax
jmp 0x10048494e
lea rcx, str.no_need_for_a_trustdb_check_n
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
add rsp, 0x28
pop rbx
pop rsi
jmp sub.msys_gpg_error_0.dll_gpgrt_log_info
lea rbx, str.tofu
lea rcx, str.no_need_for_a_trustdb_check_with__s_trust_model_n
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, rbx
mov rcx, rax
add rsp, 0x28
pop rbx
pop rsi
jmp sub.msys_gpg_error_0.dll_gpgrt_log_info
lea rbx, str.external
jmp 0x100484947
lea rbx, str.tofupgp
jmp 0x100484947
lea rbx, str.always
jmp 0x100484947
lea rbx, str.direct
jmp 0x100484947
lea rbx, [0x1004e7de9]
jmp 0x100484947

Function at 0x1004849c0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
jmp 0x1004849c0
mov r8d, dword [0x100507634]
test r8d, r8d
je 0x1004849e7
mov rax, qword [0x1004f7480]
mov edx, dword [rax + 0x258]
test edx, edx
jne 0x1004849f0
mov eax, dword [rax + 0x2f4]
test eax, eax
je 0x1004849f8
ret
jmp fcn.1004847b0
jmp fcn.100484880

Function at 0x100484c20
Capabilities:
Resolve function by parsing pe exports

Disassembly:
jmp 0x100484c20
push rdi
push rsi
push rbx
sub rsp, 0x20
xor edx, edx
mov rbx, rcx
call fcn.100482070
mov eax, dword [0x100507660]
or eax, dword [0x100507630]
jne 0x100484c59
mov rsi, qword [0x1004f7480]
mov eax, dword [rsi + 0x180]
lea edx, [rax - 6]
cmp edx, 1
jbe 0x100484c68
cmp eax, 1
jbe 0x100484c68
add rsp, 0x20
pop rbx
pop rsi
pop rdi
ret
mov dword [0x100507630], 1
call fcn.100486720
mov rdi, rax
test rax, rax
jne 0x100484cc0
mov ecx, dword [0x100507634]
test ecx, ecx
je 0x100484c59
mov edx, dword [rsi + 0x2f4]
mov eax, dword [rsi + 4]
test edx, edx
je 0x100484cd0
mov dword [0x100507634], 1
test eax, eax
jne 0x100484c59
lea rcx, str.please_do_a___check_trustdb_n
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
add rsp, 0x20
pop rbx
pop rsi
pop rdi
jmp sub.msys_gpg_error_0.dll_gpgrt_log_info
call fcn.1004a82c0
mov eax, eax
cmp rax, rdi
jb 0x100484c7f
jmp 0x100484c89
test eax, eax
je 0x100484ce8
xor edx, edx
mov rcx, rbx
add rsp, 0x20
pop rbx
pop rsi
pop rdi
jmp 0x1004827a0
lea rcx, str.checking_the_trustdb_n
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
call sub.msys_gpg_error_0.dll_gpgrt_log_info
jmp 0x100484cd4
Function at 0x100489150
Capabilities:
Get file attributes

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xd8
mov rbx, qword [rcx + 0x20]
mov qword [rsp + 0x48], 0
mov rsi, rcx
mov edi, edx
test rbx, rbx
je 0x10048935c
mov r9d, dword [rbx + 0x7c]
mov eax, dword [rbx + 0x78]
test r9d, r9d
jne 0x100489290
test eax, eax
jne 0x100489240
lea rax, str.begin_immediate_transaction_
mov rcx, qword [rbx]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x48]
lea rdx, [rbx + 0x18]
mov dword [rsp + 0x30], 0xdead001
mov qword [rsp + 0x20], rax
call fcn.10048f210
test eax, eax
jne 0x1004892d0
mov dword [rbx + 0x78], 1
call fcn.1004a8130
mov rcx, qword [rbx + 8]
lea rdx, [rsp + 0x50]
mov qword [rbx + 0x80], rax
call fcn.1004a5920
test eax, eax
je 0x1004892b8
nop
test edi, edi
jne 0x10048922f
mov eax, dword [rbx + 0x7c]
test eax, eax
js 0x10048937c
add eax, 1
mov rcx, qword [rbx]
xor r8d, r8d
xor edx, edx
mov dword [rbx + 0x7c], eax
lea r9, [rsp + 0x48]
mov dword [rsp + 0x28], eax
lea rax, str.savepoint_inner_d_
mov qword [rsp + 0x20], rax
call fcn.10048f1b0
test eax, eax
jne 0x1004892d0
xor eax, eax
add rsp, 0xd8
pop rbx
pop rsi
pop rdi
pop rbp
ret
mov rbp, qword [rbx + 0x80]
call fcn.1004a8130
cmp rbp, rax
je 0x100489290
mov r8d, dword [rsi + 0x28]
test r8d, r8d
je 0x10048939c
mov rcx, qword [rbx + 8]
lea rdx, [rsp + 0x50]
call fcn.1004a5920
test eax, eax
jne 0x100489282
mov rax, qword [rbx + 0x10]
cmp qword [rsp + 0xa0], rax
jne 0x100489340
call fcn.1004a8130
mov qword [rbx + 0x80], rax
nop
mov ecx, dword [rbx + 0x78]
test ecx, ecx
jne 0x1004891f0
mov edx, dword [rsi + 0x28]
mov eax, dword [rbx + 0x7c]
test edx, edx
jne 0x100489310
test eax, eax
jne 0x1004891f0
jmp 0x10048918e
mov rax, qword [rsp + 0xa0]
mov qword [rbx + 0x10], rax
jmp 0x1004891f0
mov rbx, qword [rsp + 0x48]
lea rcx, str.error_beginning_transaction_on_TOFU_database:__s_n
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
mov rdx, rbx
call sub.msys_gpg_error_0.dll_gpgrt_log_error
mov rcx, qword [rsp + 0x48]
call sub.msys_sqlite3_0.dll_sqlite3_free
mov eax, 0x2000001
add rsp, 0xd8
pop rbx
pop rsi
pop rdi
pop rbp
ret
test eax, eax
je 0x10048918e
lea r9, str.begin_transaction
mov r8d, 0xe0
lea rdx, str.tofu.c
lea rcx, str.dbs__in_transaction__0
call sub.msys_gpg_error_0.dll__gpgrt_log_assert
nop dword [rax + rax]
mov rcx, rsi
mov edx, 2
call fcn.1004883c0
mov ecx, 0x186a0
call fcn.1004a5110
jmp 0x100489290
lea r9, str.begin_transaction
mov r8d, 0xb0
lea rdx, str.tofu.c
lea rcx, [0x1004e9ec6]
call sub.msys_gpg_error_0.dll__gpgrt_log_assert
lea r9, str.begin_transaction
mov r8d, 0xf7
lea rdx, str.tofu.c
lea rcx, str.dbs__in_transaction___0
call sub.msys_gpg_error_0.dll__gpgrt_log_assert
lea r9, str.begin_transaction
mov r8d, 0xc3
lea rdx, str.tofu.c
lea rcx, str.ctrl__tofu.batch_updated_wanted
call sub.msys_gpg_error_0.dll__gpgrt_log_assert
nop
nop dword [rax]
Function at 0x1004987c0
Capabilities:
Write file on windows

Disassembly:
push rsi
push rbx
sub rsp, 0x38
mov rbx, rdx
lea rdx, [rsp + 0x28]
mov rsi, r8
call fcn.100498440
mov rdx, qword [rsp + 0x28]
mov rcx, rax
mov eax, 0x8000043
cmp rdx, 0x500000
ja 0x100498807
test rbx, rbx
je 0x100498810
mov r9, rbx
mov r8d, 1
call sub.msys_gpg_error_0.dll_gpgrt_fwrite
cmp rax, 1
jne 0x100498824
xor eax, eax
add rsp, 0x38
pop rbx
pop rsi
ret
mov r9, rsi
mov r8d, 1
call sub.msys_2.0.dll_fwrite
cmp rax, 1
je 0x100498805
call sub.msys_gpg_error_0.dll_gpg_err_code_from_syserror
mov ecx, eax
movzx eax, ax
or eax, 0x8000000
mov edx, eax
xor eax, eax
test ecx, ecx
cmovne eax, edx
add rsp, 0x38
pop rbx
pop rsi
ret
Function at 0x10049d800
Capabilities:
Query environment variable

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x30
mov rbp, rcx
mov esi, edx
mov edi, r8d
mov r12, r9
test r9, r9
je 0x10049d8c0
test rcx, rcx
je 0x10049d8c0
mov rbx, qword [0x100507750]
test rbx, rbx
jne 0x10049d840
jmp 0x10049d860
mov rbx, qword [rbx]
test rbx, rbx
je 0x10049d860
cmp dword [rbx + 8], esi
jne 0x10049d838
cmp dword [rbx + 0xc], edi
jne 0x10049d838
lea rdx, [rbx + 0x18]
mov rcx, rbp
call sub.msys_2.0.dll_strcmp
test eax, eax
jne 0x10049d838
mov rax, qword [rbx + 0x10]
jmp 0x10049d8b5
mov rcx, rbp
call sub.msys_2.0.dll_strlen
lea rcx, [rax + 0x20]
call sub.msys_gcrypt_20.dll_gcry_xmalloc
mov rdx, rbp
mov rbx, rax
lea rcx, [rax + 0x18]
call sub.msys_2.0.dll_strcpy
mov dword [rbx + 8], esi
lea rdx, [rsp + 0x80]
mov rcx, r12
mov dword [rbx + 0xc], edi
mov qword [rsp + 0x28], rdx
call fcn.10049f1c0
mov qword [rbx + 0x10], rax
test rax, rax
je 0x10049d8d2
mov rdx, qword [0x100507750]
mov qword [0x100507750], rbx
mov qword [rbx], rdx
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
lea rax, [0x1004f0480]
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
call sub.msys_2.0.dll___errno
mov ecx, dword [rax]
call sub.msys_2.0.dll_strerror
lea rcx, str.map_static_strings_failed:__s_n
mov rdx, rax
call sub.msys_gpg_error_0.dll_gpgrt_log_fatal
nop
nop
nop
sub rsp, 0x28
mov rcx, rdx
call sub.msys_2.0.dll_getenv
lea rdx, [0x1004f0640]
test rax, rax
cmove rax, rdx
add rsp, 0x28
ret

Function at 0x10049d8f0
Capabilities:
Query environment variable

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x30
mov rbp, rcx
mov esi, edx
mov edi, r8d
mov r12, r9
test r9, r9
je 0x10049d8c0
test rcx, rcx
je 0x10049d8c0
mov rbx, qword [0x100507750]
test rbx, rbx
jne 0x10049d840
jmp 0x10049d860
mov rbx, qword [rbx]
test rbx, rbx
je 0x10049d860
cmp dword [rbx + 8], esi
jne 0x10049d838
cmp dword [rbx + 0xc], edi
jne 0x10049d838
lea rdx, [rbx + 0x18]
mov rcx, rbp
call sub.msys_2.0.dll_strcmp
test eax, eax
jne 0x10049d838
mov rax, qword [rbx + 0x10]
jmp 0x10049d8b5
mov rcx, rbp
call sub.msys_2.0.dll_strlen
lea rcx, [rax + 0x20]
call sub.msys_gcrypt_20.dll_gcry_xmalloc
mov rdx, rbp
mov rbx, rax
lea rcx, [rax + 0x18]
call sub.msys_2.0.dll_strcpy
mov dword [rbx + 8], esi
lea rdx, [rsp + 0x80]
mov rcx, r12
mov dword [rbx + 0xc], edi
mov qword [rsp + 0x28], rdx
call fcn.10049f1c0
mov qword [rbx + 0x10], rax
test rax, rax
je 0x10049d8d2
mov rdx, qword [0x100507750]
mov qword [0x100507750], rbx
mov qword [rbx], rdx
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
lea rax, [0x1004f0480]
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
call sub.msys_2.0.dll___errno
mov ecx, dword [rax]
call sub.msys_2.0.dll_strerror
lea rcx, str.map_static_strings_failed:__s_n
mov rdx, rax
call sub.msys_gpg_error_0.dll_gpgrt_log_fatal
nop
nop
nop
sub rsp, 0x28
mov rcx, rdx
call sub.msys_2.0.dll_getenv
lea rdx, [0x1004f0640]
test rax, rax
cmove rax, rdx
add rsp, 0x28
ret
Function at 0x10049f2e0
Capabilities:
Terminate process
Write file on windows

Disassembly:
sub rsp, 0x38
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x50], r8
mov qword [rsp + 0x58], r9
test rcx, rcx
je 0x10049f318
lea rdx, [rsp + 0x48]
mov qword [rsp + 0x28], rdx
call fcn.10049f1c0
test rax, rax
je 0x10049f326
add rsp, 0x38
ret
lea rcx, [0x1004f0640]
call sub.msys_gcrypt_20.dll_gcry_xstrdup
jmp 0x10049f307
call sub.msys_2.0.dll___errno
cmp dword [rax], 0x16
je 0x10049f35a
call sub.msys_2.0.dll___getreent
mov r8d, 0x16
mov edx, 1
lea rcx, str._nfatal:_out_of_memory_n
mov r9, qword [rax + 0x18]
call sub.msys_2.0.dll_fwrite
mov ecx, 2
call sub.msys_2.0.dll_exit
call sub.msys_2.0.dll___getreent
mov r8d, 0x25
mov edx, 1
lea rcx, str._nfatal:_too_many_args_for_xstrconcat_n
mov r9, qword [rax + 0x18]
call sub.msys_2.0.dll_fwrite
jmp 0x10049f350
Function at 0x1004a2280
Capabilities:
Get file attributes

Disassembly:
push rsi
push rbx
sub rsp, 0x128
mov rsi, rdx
mov rbx, rcx
call fcn.10049ec50
mov edx, eax
mov eax, 1
test edx, edx
jne 0x1004a22b0
add rsp, 0x128
pop rbx
pop rsi
ret
lea rdx, [rsp + 0x20]
mov rcx, rbx
call fcn.1004bd2b0
test eax, eax
je 0x1004a22d0
xor eax, eax
add rsp, 0x128
pop rbx
pop rsi
ret
lea rdx, [rsp + 0xa0]
mov rcx, rsi
call fcn.1004bd2b0
test eax, eax
jne 0x1004a22c1
mov eax, dword [rsp + 0xa0]
cmp dword [rsp + 0x20], eax
jne 0x1004a22c1
mov rax, qword [rsp + 0xa8]
cmp qword [rsp + 0x28], rax
sete al
movzx eax, al
jmp 0x1004a229f