Function at 0x4b8549
Capabilities:
Write file on windows

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x28
mov ebx, dword [esp + 0x50]
mov esi, dword [esp + 0x3c]
mov edi, dword [esp + 0x48]
mov dword [esp + 0x20], 0
push ebx
call sym._RSA_size
add esp, 0x10
cmp eax, dword [esp + 0x40]
je 0x4b8340
sub esp, 0xc
push 0x9a
push str..crypto_rsa_rsa_sign.c
push 0x77
push 0x77
push 4
call sym._ERR_put_error
xor eax, eax
add esp, 0x20
add esp, 0x1c
pop ebx
pop esi
pop edi
pop ebp
ret
test byte [ebx + 0x3c], 0x40
je 0x4b8354
mov eax, dword [ebx + 8]
mov eax, dword [eax + 0x30]
test eax, eax
jne 0x4b84e0
push eax
push 0xa4
push str..crypto_rsa_rsa_sign.c
mov ebp, dword [esp + 0x4c]
push ebp
call sym._CRYPTO_malloc
add esp, 0x10
test eax, eax
mov ebp, eax
je 0x4b8581
cmp esi, 0x72
je 0x4b83e0
sub esp, 0xc
push 1
push ebx
push ebp
push edi
mov edi, dword [esp + 0x5c]
push edi
call sym._RSA_public_decrypt
add esp, 0x20
test eax, eax
mov ebx, eax
jle 0x4b8405
cmp esi, 0x72
jne 0x4b8430
cmp eax, 0x24
jne 0x4b83c0
cld
mov esi, ebp
mov edi, dword [esp + 0x34]
mov ecx, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x4b851c
lea esi, [esi]
lea edi, [edi]
sub esp, 0xc
push 0xb5
push str..crypto_rsa_rsa_sign.c
push 0x68
jmp 0x4b83f9
cmp dword [esp + 0x38], 0x24
je 0x4b837b
sub esp, 0xc
push 0xab
push str..crypto_rsa_rsa_sign.c
push 0x83
push 0x77
push 4
call sym._ERR_put_error
add esp, 0x20
test ebp, ebp
je 0x4b8422
sub esp, 8
mov edx, dword [esp + 0x48]
push edx
push ebp
call sym._OPENSSL_cleanse
mov dword [esp], ebp
call sym._CRYPTO_free
add esp, 0x10
mov eax, dword [esp + 0x14]
add esp, 0x1c
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp + 0x18], ebp
push eax
push ebx
lea eax, [esp + 0x20]
push eax
push 0
call sym._d2i_X509_SIG
mov dword [esp + 0x1c], eax
add esp, 0x10
test eax, eax
je 0x4b8405
lea edx, [ebp + ebx]
cmp edx, dword [esp + 0x18]
jne 0x4b8529
mov ebx, dword [esp + 0xc]
mov eax, dword [ebx]
mov edx, dword [eax + 4]
test edx, edx
jne 0x4b84fc
sub esp, 0xc
mov ecx, dword [eax]
push ecx
call sym._OBJ_obj2nid
add esp, 0x10
cmp eax, esi
je 0x4b8558
cmp esi, 4
je 0x4b85a5
cmp esi, 3
jne 0x4b8499
cmp eax, 7
je 0x4b853d
sub esp, 0xc
push 0xe4
push str..crypto_rsa_rsa_sign.c
push 0x64
push 0x77
push 4
call sym._ERR_put_error
add esp, 0x20
mov eax, dword [esp + 0xc]
test eax, eax
je 0x4b8405
sub esp, 0xc
mov ebx, dword [esp + 0x18]
push ebx
call sym._X509_SIG_free
add esp, 0x10
jmp 0x4b8405
sub esp, 8
push ebx
mov ebx, dword [esp + 0x4c]
push ebx
push edi
mov ecx, dword [esp + 0x4c]
push ecx
mov edx, dword [esp + 0x4c]
push edx
push esi
call eax
jmp 0x4b8334
sub esp, 0xc
push edx
call sym._ASN1_TYPE_get
add esp, 0x10
cmp eax, 5
jne 0x4b85ad
mov edi, dword [esp + 0xc]
mov eax, dword [edi]
jmp 0x4b846c
mov dword [esp + 0x14], 1
jmp 0x4b8405
sub esp, 0xc
push 0xc0
push str..crypto_rsa_rsa_sign.c
push 0x68
jmp 0x4b84a8
mov esi, dword [sym.imp.msvcrt.dll__iob]
add esi, 0x40
push esi
push 0x34
push 1
push str.signature_has_problems__re_make_with_post_SSLeay045_n
call sym._fwrite
add esp, 0x10
mov edx, dword [esp + 0xc]
mov eax, dword [edx + 4]
mov edx, dword [esp + 0x38]
cmp dword [eax], edx
jne 0x4b8577
mov edi, dword [eax + 8]
cld
cmp edx, edx
mov esi, dword [esp + 0x34]
mov ecx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x4b85ba
sub esp, 0xc
push 0xeb
jmp 0x4b8531
sub esp, 0xc
push 0xa7
push str..crypto_rsa_rsa_sign.c
push 0x41
push 0x77
push 4
call sym._ERR_put_error
add esp, 0x20
mov eax, dword [esp + 0x14]
jmp 0x4b8426
cmp eax, 8
jmp 0x4b8493
sub esp, 0xc
push 0xc9
jmp 0x4b8531
mov dword [esp + 0x14], 1
jmp 0x4b84b4