Function at 0x423d80
Capabilities:
Read file on windows

Disassembly:
sub esp, 0x10
push ebx
xor ebx, ebx
push ebp
mov ebp, dword [esp + 0x20]
mov eax, 0x5a
mov dword [esp + 8], ebx
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], eax
cmp ebp, ebx
jne 0x423da8
pop ebp
xor eax, eax
pop ebx
add esp, 0x10
ret
push esi
push edi
mov edi, dword [esp + 0x2c]
cmp edi, ebx
je 0x4240eb
mov esi, dword [esp + 0x30]
cmp esi, ebx
je 0x4240eb
push 8
push str.sha256__
push ebp
call fcn.004d44ac
add esp, 0xc
test eax, eax
jne 0x423f7f
mov eax, dword [0x7d0034]
cmp dword [eax + 0x5c], ebx
je 0x423f93
push 0x20
call dword [0x7d0020]
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x423e8e
mov ecx, dword [0x7d0034]
mov edx, dword [ecx + 0x5c]
push 0x20
push ebx
push esi
push edi
call edx
add esp, 0x10
test eax, eax
jne 0x4240eb
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x2c]
push ecx
push 0x20
push ebx
call fcn.00459b10
push ebx
mov esi, eax
call dword [0x7d0024]
add esp, 0x14
test esi, esi
je 0x423e44
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x24]
push edx
push str._public_key_hash:_sha256___s
push eax
call fcn.0042cb10
mov eax, ebp
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x423e60
sub eax, edx
lea esi, [eax + 1]
push esi
call dword [0x7d0020]
mov edi, eax
add esp, 4
mov dword [esp + 0x1c], edi
test edi, edi
jne 0x423e9b
mov ecx, dword [esp + 0x28]
push ecx
call dword [0x7d0024]
add esp, 4
pop edi
pop esi
pop ebp
mov eax, 0x1b
pop ebx
add esp, 0x10
ret
push esi
push ebp
push edi
call fcn.004d3550
add esp, 0xc
mov esi, edi
jmp 0x423eb0
push str._sha256__
push esi
call fcn.004d0a90
mov ebp, eax
add esp, 8
test ebp, ebp
je 0x423ec8
mov byte [ebp], 0
lea edx, [esi + 8]
mov ecx, edx
lea esi, [ecx + 1]
mov bl, byte [ecx]
inc ecx
test bl, bl
jne 0x423ed0
sub ecx, esi
mov edi, ecx
mov ecx, dword [esp + 0x10]
cmp ecx, edi
jne 0x423f28
mov esi, dword [esp + 0x28]
cmp ecx, 4
jb 0x423f04
lea esp, [esp]
mov eax, dword [esi]
cmp eax, dword [edx]
jne 0x423f28
sub ecx, 4
add edx, 4
add esi, 4
cmp ecx, 4
jae 0x423ef0
test ecx, ecx
je 0x423f4a
mov al, byte [edx]
cmp al, byte [esi]
jne 0x423f28
cmp ecx, 1
jbe 0x423f4a
mov al, byte [edx + 1]
cmp al, byte [esi + 1]
jne 0x423f28
cmp ecx, 2
jbe 0x423f4a
mov cl, byte [edx + 2]
cmp cl, byte [esi + 2]
je 0x423f4a
test ebp, ebp
je 0x423f52
push str.sha256__
push ebp
mov byte [ebp], 0x3b
call fcn.004d0a90
mov esi, eax
add esp, 8
test esi, esi
jne 0x423eb0
jmp 0x423f52
mov dword [esp + 0x14], 0
mov edx, dword [esp + 0x28]
push edx
call dword [0x7d0024]
mov eax, dword [esp + 0x20]
push eax
mov dword [esp + 0x30], 0
call dword [0x7d0024]
mov eax, dword [esp + 0x1c]
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret
push 0x72fde8
push ebp
call fcn.00453400
mov ebp, eax
add esp, 8
cmp ebp, ebx
jne 0x423fa0
pop edi
pop esi
pop ebp
mov eax, 0x5a
pop ebx
add esp, 0x10
ret
push 2
push ebx
push ebp
call fcn.004d5b9f
add esp, 0xc
test eax, eax
jne 0x4240c0
push ebp
call fcn.004d5dff
push 0
push 0
push ebp
mov ebx, eax
call fcn.004d5b9f
add esp, 0x10
test eax, eax
jne 0x4240c0
cmp ebx, 0x100000
ja 0x4240c0
mov eax, ebx
cdq
push edx
push eax
call fcn.00427a20
mov ebx, eax
add esp, 8
cmp esi, ebx
ja 0x4240c0
lea ecx, [ebx + 1]
push ecx
call dword [0x7d0020]
add esp, 4
mov dword [esp + 0x10], eax
test eax, eax
je 0x4240c0
push ebp
push 1
mov edx, eax
push ebx
push edx
call fcn.004d4d13
add esp, 0x10
cmp eax, 1
jne 0x4240c0
cmp esi, ebx
jne 0x42404e
mov ecx, dword [esp + 0x10]
mov eax, esi
cmp esi, 4
jb 0x424094
mov edx, dword [edi]
cmp edx, dword [ecx]
jne 0x4240c0
sub eax, 4
add ecx, 4
add edi, 4
cmp eax, 4
jae 0x424034
jmp 0x424094
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x28]
push ecx
lea edx, [esp + 0x1c]
mov byte [ebx + eax], 0
push edx
mov ebx, eax
call fcn.00423cb0
add esp, 8
test eax, eax
jne 0x4240c0
cmp esi, dword [esp + 0x28]
jne 0x4240c0
mov ecx, dword [esp + 0x18]
mov eax, esi
cmp esi, 4
jb 0x424094
nop
mov edx, dword [edi]
cmp edx, dword [ecx]
jne 0x4240c0
sub eax, 4
add ecx, 4
add edi, 4
cmp eax, 4
jae 0x424080
test eax, eax
je 0x4240b8
mov dl, byte [ecx]
cmp dl, byte [edi]
jne 0x4240c0
cmp eax, 1
jbe 0x4240b8
mov dl, byte [ecx + 1]
cmp dl, byte [edi + 1]
jne 0x4240c0
cmp eax, 2
jbe 0x4240b8
mov al, byte [ecx + 2]
cmp al, byte [edi + 2]
jne 0x4240c0
mov dword [esp + 0x14], 0
mov ecx, dword [esp + 0x10]
push ecx
call dword [0x7d0024]
mov edx, dword [esp + 0x1c]
push edx
call dword [0x7d0024]
push ebp
mov dword [esp + 0x24], 0
call fcn.004d4438
mov eax, dword [esp + 0x20]
add esp, 0xc
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret