Function at 0x4634e0
Capabilities:
Read file on windows

Disassembly:
sub esp, 0xc
push ebp
mov ebp, dword [esp + 0x14]
push esi
push edi
push eax
xor edi, edi
call fcn.004592a0
push 0x619c50
push eax
call fcn.005ec2cc
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x46351d
push str.Unable_to_open_public_key_file
push 0xfffffffffffffff0
push ebp
call fcn.00465c70
add esp, 0xc
pop edi
pop esi
pop ebp
add esp, 0xc
ret
push esi
call fcn.005f5ee3
add esp, 4
test eax, eax
jne 0x463561
lea ebx, [ebx]
push esi
push 1
lea eax, [esp + 0x17]
push 1
push eax
call fcn.005f6105
add esp, 0x10
cmp eax, 1
jne 0x463561
mov al, byte [esp + 0xf]
cmp al, 0xd
je 0x463561
cmp al, 0xa
je 0x463561
push esi
inc edi
call fcn.005f5ee3
add esp, 4
test eax, eax
je 0x463530
push esi
call fcn.005f5ee3
add esp, 4
test eax, eax
je 0x46356f
dec edi
push esi
call fcn.005f9c69
add esp, 4
cmp edi, 1
ja 0x46359a
push esi
call fcn.005e7e28
push str.Invalid_data_in_public_key_file
push 0xfffffffffffffff0
push ebp
call fcn.00465c70
add esp, 0x10
pop edi
pop esi
pop ebp
add esp, 0xc
ret
mov ecx, dword [ebp + 4]
push ebx
push ebp
push edi
call ecx
add esp, 8
mov ebx, eax
push esi
test ebx, ebx
jne 0x4635c9
call fcn.005e7e28
push str.Unable_to_allocate_memory_for_public_key_data
push 0xfffffffffffffffa
push ebp
call fcn.00465c70
add esp, 0x10
pop ebx
pop edi
pop esi
pop ebp
add esp, 0xc
ret
push edi
push 1
push ebx
call fcn.005f6105
add esp, 0x10
cmp eax, edi
je 0x4635fe
mov edx, dword [ebp + 0xc]
push ebp
push ebx
call edx
push esi
call fcn.005e7e28
push str.Unable_to_read_public_key_from_file
push 0xfffffffffffffff0
push ebp
call fcn.00465c70
add esp, 0x18
pop ebx
pop edi
pop esi
pop ebp
add esp, 0xc
ret
push esi
call fcn.005e7e28
add esp, 4
test edi, edi
je 0x46362d
jmp 0x463610
movzx eax, byte [ebx + edi - 1]
push eax
call fcn.005e7200
add esp, 4
test eax, eax
je 0x463629
sub edi, 1
jne 0x463610
jmp 0x46362d
test edi, edi
jne 0x46364c
mov ecx, dword [ebp + 0xc]
push ebp
push ebx
call ecx
push str.Missing_public_key_data
push 0xfffffffffffffff0
push ebp
call fcn.00465c70
add esp, 0x14
pop ebx
pop edi
pop esi
pop ebp
add esp, 0xc
ret
push edi
push 0x20
push ebx
call fcn.005e21e0
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x46367d
mov edx, dword [ebp + 0xc]
push ebp
push ebx
call edx
push str.Invalid_public_key_data
push 0xfffffffffffffff0
push ebp
call fcn.00465c70
add esp, 0x14
pop ebx
pop edi
pop esi
pop ebp
add esp, 0xc
ret
inc esi
mov eax, edi
sub eax, esi
lea ecx, [eax + ebx + 1]
push ecx
push 0x20
push esi
call fcn.005e21e0
add esp, 0xc
test eax, eax
jne 0x463699
lea eax, [edi + ebx]
sub eax, esi
push eax
push esi
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x20]
push eax
push ebp
call sym.Setup.exe_libssh2_base64_decode
add esp, 0x14
test eax, eax
je 0x4636d3
mov ecx, dword [ebp + 0xc]
push ebp
push ebx
call ecx
push str.Invalid_key_data__not_base64_encoded
push 0xfffffffffffffff0
push ebp
call fcn.00465c70
add esp, 0x14
pop ebx
pop edi
pop esi
pop ebp
add esp, 0xc
ret
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x14]
sub esi, ebx
mov dword [edx], ebx
mov edx, dword [esp + 0x2c]
dec esi
mov dword [eax], esi
mov eax, dword [esp + 0x18]
pop ebx
mov dword [edx], ecx
mov ecx, dword [esp + 0x2c]
pop edi
pop esi
mov dword [ecx], eax
xor eax, eax
pop ebp
add esp, 0xc
ret