Function at 0x422440
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.0041b7e0
add esp, 0x10
mov esi, eax
cmp eax, dword [ebp + 0x20]
je 0x422490
sub esp, 0xc
push 0xaf
push str.external_openssl_crypto_rsa_rsa_sign.c
push 0x77
push 0x91
push 4
call fcn.00423af0
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 0x4224e6
cmp byte [ebp - 0x29], 0
je 0x4224e6
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.0041b470
add esp, 0x20
mov dword [ebp - 0x28], 0
test eax, eax
jle 0x422481
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.00424320
add esp, 0x10
mov dword [ebp - 0x24], eax
test eax, eax
je 0x4226a0
test bl, bl
jne 0x422570
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.0041b470
add esp, 0x20
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x28], 0
test eax, eax
jle 0x42259e
cmp dword [ebp + 8], 0x5f
je 0x422641
mov dword [ebp - 0x28], 0
test bl, bl
je 0x4225e2
cmp dword [ebp - 0x20], 0x24
je 0x4225c5
sub esp, 0xc
push 0xde
push str.external_openssl_crypto_rsa_rsa_sign.c
push 0x68
push 0x91
push 4
call fcn.00423af0
add esp, 0x20
jmp 0x42259e
cmp dword [ebp + 0x10], 0x24
je 0x422509
sub esp, 0xc
push 0xc4
push str.external_openssl_crypto_rsa_rsa_sign.c
push 0x83
push 0x91
push 4
call fcn.00423af0
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.00427670
mov eax, dword [ebp - 0x24]
pop edx
push eax
call fcn.00424450
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 0x42254d
mov dword [ebp - 0x28], 1
jmp 0x42259e
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.00431420
add esp, 0x10
mov ebx, eax
test eax, eax
je 0x42259e
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
add eax, edx
cmp eax, dword [ebp - 0x10]
je 0x4226b4
sub esp, 0xc
push 0xe9
push str.external_openssl_crypto_rsa_rsa_sign.c
push 0x68
push 0x91
push 4
call fcn.00423af0
add esp, 0x20
sub esp, 0xc
push ebx
call fcn.004313c0
add esp, 0x10
jmp 0x42259e
cmp eax, 0x12
jne 0x422538
mov ecx, dword [ebp - 0x24]
cmp byte [ecx], 4
jne 0x422538
cmp byte [ecx + 1], 0x10
jne 0x422538
cmp byte [ebp - 0x29], 0
je 0x422763
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 0x42253f
sub esp, 0xc
push 0xc0
push str.external_openssl_crypto_rsa_rsa_sign.c
push 0x41
jmp 0x42246b
mov eax, dword [ebx]
mov edx, dword [eax + 4]
test edx, edx
je 0x4226dd
sub esp, 0xc
push edx
call fcn.00439590
add esp, 0x10
cmp eax, 5
je 0x4226db
sub esp, 0xc
push 0xf2
jmp 0x42261a
mov eax, dword [ebx]
sub esp, 0xc
mov eax, dword [eax]
push eax
call fcn.0042f750
add esp, 0x10
cmp dword [ebp + 8], eax
je 0x422742
cmp dword [ebp + 8], 4
je 0x422723
cmp dword [ebp + 8], 3
je 0x422853
sub esp, 0xc
push 0x10d
push str.external_openssl_crypto_rsa_rsa_sign.c
push 0x64
push 0x91
push 4
call fcn.00423af0
add esp, 0x20
jmp 0x422630
cmp eax, 8
jne 0x422700
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 0x4227b3
mov edx, dword [ebx + 4]
mov eax, dword [edx]
cmp eax, dword [ebp + 0x10]
je 0x422807
sub esp, 0xc
push 0x123
jmp 0x42261a
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 0x42253f
sub esp, 0xc
push 0xd6
push str.external_openssl_crypto_rsa_rsa_sign.c
push 0x68
push 0x91
push 4
call fcn.00423af0
add esp, 0x20
mov dword [ebp - 0x28], 0
jmp 0x42253f
sub esp, 0xc
mov eax, dword [ebp + 8]
push eax
call fcn.0042f870
mov dword [esp], eax
call fcn.00439880
add esp, 0x10
test eax, eax
je 0x422826
sub esp, 0xc
push eax
call fcn.00439bb0
mov edx, dword [ebx + 4]
add esp, 0x10
cmp eax, dword [edx]
je 0x422829
sub esp, 0xc
push 0x117
push str.external_openssl_crypto_rsa_rsa_sign.c
push 0x8f
push 0x91
push 4
call fcn.00423af0
add esp, 0x20
jmp 0x422630
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 0x422756
mov dword [ebp - 0x28], 1
jmp 0x422630
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 0x422630
cmp eax, 7
jne 0x422700
jmp 0x422728