Function at 0x422aa0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x38
mov edi, dword [ebp + 0x24]
push edi
call fcn.0041be10
add esp, 0x10
mov esi, eax
cmp eax, dword [ebp + 0x20]
je 0x422af0
sub esp, 0xc
push 0xaf
push str.external_openssl_crypto_rsa_rsa_sign.c
push 0x77
push 0x91
push 4
call fcn.00424150
mov dword [ebp - 0x28], 0
add esp, 0x20
mov eax, dword [ebp - 0x28]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
cmp dword [ebp + 8], 0x72
mov eax, dword [ebp + 0x14]
sete bl
test eax, eax
setne byte [ebp - 0x29]
test bl, bl
je 0x422b46
cmp byte [ebp - 0x29], 0
je 0x422b46
sub esp, 0xc
push 1
push edi
mov eax, dword [ebp + 0x14]
push eax
mov eax, dword [ebp + 0x1c]
push eax
mov eax, dword [ebp + 0x20]
push eax
call fcn.0041baa0
add esp, 0x20
mov dword [ebp - 0x28], 0
test eax, eax
jle 0x422ae1
mov edx, dword [ebp + 0x18]
mov dword [edx], eax
mov dword [ebp - 0x28], 1
mov eax, dword [ebp - 0x28]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
push eax
push 0xbd
push str.external_openssl_crypto_rsa_rsa_sign.c
push esi
call fcn.00424980
add esp, 0x10
mov dword [ebp - 0x24], eax
test eax, eax
je 0x422d00
test bl, bl
jne 0x422bd0
sub esp, 0xc
push 1
push edi
mov eax, dword [ebp - 0x24]
push eax
mov edi, dword [ebp + 0x1c]
push edi
push esi
call fcn.0041baa0
add esp, 0x20
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x28], 0
test eax, eax
jle 0x422bfe
cmp dword [ebp + 8], 0x5f
je 0x422ca1
mov dword [ebp - 0x28], 0
test bl, bl
je 0x422c42
cmp dword [ebp - 0x20], 0x24
je 0x422c25
sub esp, 0xc
push 0xde
push str.external_openssl_crypto_rsa_rsa_sign.c
push 0x68
push 0x91
push 4
call fcn.00424150
add esp, 0x20
jmp 0x422bfe
cmp dword [ebp + 0x10], 0x24
je 0x422b69
sub esp, 0xc
push 0xc4
push str.external_openssl_crypto_rsa_rsa_sign.c
push 0x83
push 0x91
push 4
call fcn.00424150
mov dword [ebp - 0x28], 0
add esp, 0x20
push esi
push esi
mov ebx, dword [ebp + 0x20]
push ebx
mov ecx, dword [ebp - 0x24]
push ecx
call fcn.00427d10
mov eax, dword [ebp - 0x24]
pop edx
push eax
call fcn.00424ab0
mov eax, dword [ebp - 0x28]
add esp, 0x10
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
cld
mov ecx, 0x24
mov esi, dword [ebp - 0x24]
mov edi, dword [ebp + 0xc]
repe cmpsb byte [esi], byte es:[edi]
jne 0x422bad
mov dword [ebp - 0x28], 1
jmp 0x422bfe
mov edx, dword [ebp - 0x24]
lea eax, [ebp - 0x10]
mov dword [ebp - 0x10], edx
push ebx
mov ecx, dword [ebp - 0x20]
push ecx
push eax
push 0
call fcn.00431aa0
add esp, 0x10
mov ebx, eax
test eax, eax
je 0x422bfe
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
add eax, edx
cmp eax, dword [ebp - 0x10]
je 0x422d14
sub esp, 0xc
push 0xe9
push str.external_openssl_crypto_rsa_rsa_sign.c
push 0x68
push 0x91
push 4
call fcn.00424150
add esp, 0x20
sub esp, 0xc
push ebx
call fcn.00431a40
add esp, 0x10
jmp 0x422bfe
cmp eax, 0x12
jne 0x422b98
mov ecx, dword [ebp - 0x24]
cmp byte [ecx], 4
jne 0x422b98
cmp byte [ecx + 1], 0x10
jne 0x422b98
cmp byte [ebp - 0x29], 0
je 0x422dc3
mov eax, dword [ecx + 2]
mov edx, ecx
mov ecx, dword [ebp + 0x14]
add edx, 2
mov dword [ecx], eax
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
mov eax, dword [edx + 8]
mov dword [ecx + 8], eax
mov eax, dword [edx + 0xc]
mov dword [ecx + 0xc], eax
mov eax, dword [ebp + 0x18]
mov dword [eax], 0x10
mov dword [ebp - 0x28], 1
jmp 0x422b9f
sub esp, 0xc
push 0xc0
push str.external_openssl_crypto_rsa_rsa_sign.c
push 0x41
jmp 0x422acb
mov eax, dword [ebx]
mov edx, dword [eax + 4]
test edx, edx
je 0x422d3d
sub esp, 0xc
push edx
call fcn.00439d00
add esp, 0x10
cmp eax, 5
je 0x422d3b
sub esp, 0xc
push 0xf2
jmp 0x422c7a
mov eax, dword [ebx]
sub esp, 0xc
mov eax, dword [eax]
push eax
call fcn.0042fdd0
add esp, 0x10
cmp dword [ebp + 8], eax
je 0x422da2
cmp dword [ebp + 8], 4
je 0x422d83
cmp dword [ebp + 8], 3
je 0x422eb3
sub esp, 0xc
push 0x10d
push str.external_openssl_crypto_rsa_rsa_sign.c
push 0x64
push 0x91
push 4
call fcn.00424150
add esp, 0x20
jmp 0x422c90
cmp eax, 8
jne 0x422d60
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
push eax
push 0x34
push 1
push str.signature_has_problems__re_make_with_post_SSLeay045_n
call sub.msvcrt.dll_fwrite
add esp, 0x10
cmp byte [ebp - 0x29], 0
jne 0x422e13
mov edx, dword [ebx + 4]
mov eax, dword [edx]
cmp eax, dword [ebp + 0x10]
je 0x422e67
sub esp, 0xc
push 0x123
jmp 0x422c7a
mov edi, dword [ebp - 0x24]
mov ecx, 0x10
cld
add edi, 2
mov esi, dword [ebp + 0xc]
repe cmpsb byte [esi], byte es:[edi]
seta dl
setb al
mov dword [ebp - 0x28], 1
cmp dl, al
je 0x422b9f
sub esp, 0xc
push 0xd6
push str.external_openssl_crypto_rsa_rsa_sign.c
push 0x68
push 0x91
push 4
call fcn.00424150
add esp, 0x20
mov dword [ebp - 0x28], 0
jmp 0x422b9f
sub esp, 0xc
mov eax, dword [ebp + 8]
push eax
call fcn.0042fef0
mov dword [esp], eax
call fcn.00439ff0
add esp, 0x10
test eax, eax
je 0x422e86
sub esp, 0xc
push eax
call fcn.0043a320
mov edx, dword [ebx + 4]
add esp, 0x10
cmp eax, dword [edx]
je 0x422e89
sub esp, 0xc
push 0x117
push str.external_openssl_crypto_rsa_rsa_sign.c
push 0x8f
push 0x91
push 4
call fcn.00424150
add esp, 0x20
jmp 0x422c90
cld
mov edi, dword [edx + 8]
cmp eax, eax
mov esi, dword [ebp + 0xc]
mov ecx, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x422db6
mov dword [ebp - 0x28], 1
jmp 0x422c90
mov edx, dword [ebx + 4]
push eax
mov eax, dword [edx]
push eax
mov eax, dword [edx + 8]
push eax
mov edi, dword [ebp + 0x14]
push edi
call sub.msvcrt.dll_memcpy
mov eax, dword [ebx + 4]
mov ecx, dword [ebp + 0x18]
add esp, 0x10
mov eax, dword [eax]
mov dword [ecx], eax
mov dword [ebp - 0x28], 1
jmp 0x422c90
cmp eax, 7
jne 0x422d60
jmp 0x422d88