Function at 0x100416250
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x68
mov dword [rsp + 0x51], 0x6e676973
mov rbx, rcx
mov edi, edx
mov byte [rsp + 0x55], 0
mov dword [rsp + 0x56], 0x72636e65
mov byte [rsp + 0x5a], 0
mov dword [rsp + 0x5b], 0x68747561
mov byte [rsp + 0x5f], 0
cmp edx, 2
ja 0x100416724
movsxd rsi, edx
mov rax, qword [rcx + 0x20]
lea r9, [rsp + 0x48]
lea r12d, [rdi + 0xc1]
mov rdx, rsi
lea r8, [rsp + 0x40]
shl rdx, 5
mov dword [rdx + rax + 0x108], 1
mov rdx, rsi
shl rdx, 5
mov dword [rax + rdx + 0x118], 0
mov edx, r12d
mov qword [rsp + 0x20], 0
call fcn.100415410
mov rbp, rax
test rax, rax
je 0x100416690
mov r14, qword [rsp + 0x48]
test r14, r14
je 0x100416630
mov r13, qword [0x10046ada0]
mov r9d, dword [r13 + 4]
test r9d, r9d
jne 0x1004164d0
mov r12, qword [rsp + 0x40]
movzx ecx, byte [r12]
call fcn.10044ee70
mov dword [rsp + 0x34], eax
movzx eax, byte [r12]
cmp al, 1
je 0x100416440
lea edx, [rax - 0x12]
cmp dl, 1
jbe 0x100416340
cmp al, 0x16
jne 0x10041644e
mov rcx, rsi
lea edx, [r14 - 1]
lea r15, [r12 + 1]
shl rcx, 5
add rcx, qword [rbx + 0x20]
mov dword [rcx + 0x120], eax
mov rax, qword [rbx + 8]
mov dword [rcx + 0x124], 0
cmp dword [rax + 0x18], 2
je 0x100416658
movzx eax, byte [r12 + r14 - 1]
lea r8d, [rax - 1]
cmp r8b, 0xfd
ja 0x100416500
movsxd rdx, edx
mov rcx, r15
call fcn.100414880
mov r9, rax
test r9, r9
je 0x1004166a8
mov r15, qword [rbx + 0x20]
mov rax, rsi
lea rdx, [0x1004607af]
shl rax, 5
mov dword [rax + r15 + 0x108], 0
mov rax, rsi
shl rax, 5
mov qword [r15 + rax + 0x118], r9
movzx eax, byte [r12]
cmp al, 0x16
je 0x1004165bf
cmp al, 0x12
je 0x1004165b8
mov r8d, dword [r13 + 4]
test r8d, r8d
je 0x1004164f0
mov rax, rsi
lea r8, [0x100460667]
shl rax, 5
test byte [r15 + rax + 0x124], 1
je 0x10041641a
cmp edi, 1
lea r8, str.__eddsa_
lea rax, str.__djb_tweak_
cmove r8, rax
mov rdx, r9
lea rcx, str.ECC__curve_s_s_n
mov qword [rsp + 0x38], r9
xor edi, edi
call sub.msys_gpg_error_0.dll_gpgrt_log_printf
mov r15, qword [rbx + 0x20]
mov r9, qword [rsp + 0x38]
xor edx, edx
jmp 0x100416465
lea rax, [r14 - 5]
cmp rax, 1
jbe 0x100416520
mov ecx, dword [r13 + 4]
test ecx, ecx
jne 0x100416610
mov r15, qword [rbx + 0x20]
xor edi, edi
xor r9d, r9d
xor edx, edx
mov ecx, dword [rsp + 0x34]
mov r8, r9
call fcn.10044eea0
mov rdx, rax
lea rax, [rsi + 8]
shl rax, 5
mov qword [r15 + rax + 0x10], rdx
mov edx, dword [r13 + 4]
test edx, edx
jne 0x1004164a8
mov rcx, rbp
call sub.msys_gcrypt_20.dll_gcry_free
mov eax, edi
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
add rax, qword [rbx + 0x20]
lea rdx, [rsi + rsi*4]
lea rcx, str.Key_Algo__s_..:__s_n
mov r8, qword [rax + 0x10]
lea rdx, [rsp + rdx + 0x51]
call sub.msys_gpg_error_0.dll_gpgrt_log_info
jmp 0x100416489
lea rax, [rsi + rsi*4]
lea rcx, str.Key_Attr__s_..:
lea rdx, [rsp + rax + 0x51]
call sub.msys_gpg_error_0.dll_gpgrt_log_info
jmp 0x100416310
xor edi, edi
xor edx, edx
jmp 0x100416465
lea edx, [r14 - 2]
cmp al, 0xff
jne 0x100416386
mov dword [rcx + 0x124], 2
jmp 0x100416386
movzx edx, word [r12 + 1]
mov r15, qword [rbx + 0x20]
mov rax, rsi
shl rax, 5
mov r11d, dword [r13 + 4]
rol dx, 8
add rax, r15
movzx edx, dx
mov dword [rax + 0x118], edx
movzx r8d, word [r12 + 3]
mov dword [rax + 0x120], 0
rol r8w, 8
movzx r8d, r8w
mov dword [rax + 0x11c], r8d
cmp r14, 5
je 0x1004165f0
movzx ecx, byte [r12 + 5]
test cl, cl
je 0x1004165f0
lea r9d, [rcx - 1]
cmp r9b, 2
jbe 0x1004166e8
lea r9, [0x100460711]
test r11d, r11d
je 0x100416603
lea rcx, str.RSA__n_u__e_u__fmt_s_n
mov dword [rsp + 0x38], edx
xor edi, edi
call sub.msys_gpg_error_0.dll_gpgrt_log_printf
mov r15, qword [rbx + 0x20]
mov edx, dword [rsp + 0x38]
xor r9d, r9d
jmp 0x100416465
lea rdx, [0x1004607b7]
mov rcx, r9
mov qword [rsp + 0x38], r9
call sub.msys_2.0.dll_strcmp
mov r9, qword [rsp + 0x38]
test eax, eax
jne 0x1004163df
mov rax, rsi
shl rax, 5
or dword [r15 + rax + 0x124], 1
jmp 0x1004163df
mov dword [rax + 0x120], 1
test r11d, r11d
jne 0x1004166d8
xor edi, edi
xor r9d, r9d
jmp 0x100416465
lea r8, [0x100460667]
mov rdx, r14
mov rcx, r12
call fcn.1004549e8
jmp 0x10041645a
lea rcx, str.error_reading_DO_0x_02X_n
mov edx, r12d
call sub.msys_gpg_error_0.dll_gpgrt_log_error
mov rcx, rbp
call sub.msys_gcrypt_20.dll_gcry_free
mov edi, 0x600006c
jmp 0x100416491
movsxd rdx, edx
mov rcx, r15
call fcn.100414880
mov r9, rax
test rax, rax
jne 0x10041639d
lea edx, [r14 - 2]
mov rcx, r15
movsxd rdx, edx
call fcn.100414880
mov r9, rax
jmp 0x100416394
mov edx, r12d
lea rcx, str.error_reading_DO_0x_02X_n
call sub.msys_gpg_error_0.dll_gpgrt_log_error
jmp 0x100416647
lea rdx, [r14 - 1]
mov rcx, r15
mov qword [rsp + 0x38], r9
lea r8, str.Curve_with_OID_not_supported:
call fcn.1004549e8
mov edi, 0x600006c
mov r15, qword [rbx + 0x20]
xor edx, edx
mov r9, qword [rsp + 0x38]
jmp 0x100416465
lea r9, [0x100460709]
jmp 0x100416593
add ecx, 1
mov dword [rax + 0x120], ecx
test r11d, r11d
je 0x100416603
lea r9, [0x10046070d]
cmp ecx, 3
je 0x100416593
cmp ecx, 4
lea r9, str.crtn
lea rax, str.stdn
cmovne r9, rax
jmp 0x100416593
lea r9, str.parse_algorithm_attribute
mov r8d, 0x18a1
lea rdx, str.app_openpgp.c
lea rcx, str.keyno__0__keyno___2
call sub.msys_gpg_error_0.dll__gpgrt_log_assert
nop
nop word cs:[rax + rax]