Function at 0x4b2920
Capabilities:
Read file on windows

Disassembly:
sub esp, 0x18
push ebx
xor ebx, ebx
push edi
mov edi, dword [esp + 0x28]
cmp edi, ebx
mov eax, 0x5a
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], ebx
mov dword [esp + 0xc], eax
jne 0x4b2948
pop edi
xor eax, eax
pop ebx
add esp, 0x18
ret
push ebp
mov ebp, dword [esp + 0x30]
cmp ebp, ebx
push esi
je 0x4b2d6f
mov esi, dword [esp + 0x38]
cmp esi, ebx
je 0x4b2d6f
push 8
push str.sha256__
push edi
call fcn.0048f447
add esp, 0xc
test eax, eax
jne 0x4b2b3f
push 0x20
call dword [0x62289c]
mov edi, eax
add esp, 4
cmp edi, ebx
je 0x4b2a12
push 0x20
push edi
push esi
push ebp
call fcn.004cd7c0
mov ebx, dword [esp + 0x3c]
lea eax, [esp + 0x30]
push eax
lea ecx, [esp + 0x24]
push ecx
push 0x20
push edi
push ebx
call fcn.004ce020
push edi
mov esi, eax
call dword [0x6228a0]
add esp, 0x28
test esi, esi
je 0x4b29ca
mov eax, esi
pop esi
pop ebp
pop edi
pop ebx
add esp, 0x18
ret
mov edx, dword [esp + 0x10]
push edx
push str._t_public_key_hash:_sha256___s_n
push ebx
call fcn.004bb570
mov edi, dword [esp + 0x3c]
mov eax, edi
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x4b29e6
sub eax, edx
lea esi, [eax + 1]
push esi
call dword [0x62289c]
mov ebp, eax
add esp, 4
test ebp, ebp
jne 0x4b2a1f
mov eax, dword [esp + 0x10]
push eax
call dword [0x6228a0]
add esp, 4
pop esi
pop ebp
pop edi
mov eax, 0x1b
pop ebx
add esp, 0x18
ret
push esi
push edi
push ebp
call fcn.0048b960
add esp, 0xc
mov esi, ebp
lea esp, [esp]
push str._sha256__
push esi
call fcn.00494ce0
add esp, 8
test eax, eax
je 0x4b2a45
mov byte [eax], 0
lea edx, [esi + 8]
mov ecx, edx
lea esi, [ecx + 1]
lea ecx, [ecx]
mov bl, byte [ecx]
add ecx, 1
test bl, bl
jne 0x4b2a50
sub ecx, esi
mov edi, ecx
mov ecx, dword [esp + 0x20]
cmp ecx, edi
jne 0x4b2aed
cmp ecx, 4
mov esi, dword [esp + 0x10]
jb 0x4b2a86
mov edi, dword [esi]
cmp edi, dword [edx]
jne 0x4b2a8a
sub ecx, 4
add edx, 4
add esi, 4
cmp ecx, 4
jae 0x4b2a72
test ecx, ecx
je 0x4b2ae7
movzx edi, byte [esi]
movzx ebx, byte [edx]
sub edi, ebx
jne 0x4b2ad9
sub ecx, 1
add edx, 1
add esi, 1
test ecx, ecx
je 0x4b2ae7
movzx edi, byte [esi]
movzx ebx, byte [edx]
sub edi, ebx
jne 0x4b2ad9
sub ecx, 1
add edx, 1
add esi, 1
test ecx, ecx
je 0x4b2ae7
movzx edi, byte [esi]
movzx ebx, byte [edx]
sub edi, ebx
jne 0x4b2ad9
sub ecx, 1
add edx, 1
add esi, 1
test ecx, ecx
je 0x4b2ae7
movzx edi, byte [esi]
movzx ecx, byte [edx]
sub edi, ecx
je 0x4b2ae7
test edi, edi
mov ecx, 1
jg 0x4b2ae9
or ecx, 0xffffffff
jmp 0x4b2ae9
xor ecx, ecx
test ecx, ecx
je 0x4b2b0e
test eax, eax
je 0x4b2b16
push str.sha256__
push eax
mov byte [eax], 0x3b
call fcn.00494ce0
mov esi, eax
add esp, 8
test esi, esi
jne 0x4b2a30
jmp 0x4b2b16
mov dword [esp + 0x14], 0
mov edx, dword [esp + 0x10]
push edx
call dword [0x6228a0]
push ebp
mov dword [esp + 0x18], 0
call dword [0x6228a0]
mov eax, dword [esp + 0x1c]
add esp, 8
pop esi
pop ebp
pop edi
pop ebx
add esp, 0x18
ret
push 0x5b0218
push edi
call fcn.0048fab6
mov ebx, eax
add esp, 8
test ebx, ebx
mov dword [esp + 0x30], ebx
jne 0x4b2b62
pop esi
pop ebp
pop edi
lea eax, [ebx + 0x5a]
pop ebx
add esp, 0x18
ret
push 2
push 0
push ebx
call fcn.004956ae
add esp, 0xc
test eax, eax
jne 0x4b2d44
push ebx
call fcn.004a62d0
push 0
push 0
push ebx
mov edi, eax
call fcn.004956ae
add esp, 0x10
test eax, eax
jne 0x4b2d44
cmp edi, 0x100000
ja 0x4b2d44
mov eax, edi
cdq
push edx
push eax
call fcn.004c4340
mov edi, eax
add esp, 8
cmp esi, edi
ja 0x4b2d44
lea eax, [edi + 1]
push eax
call dword [0x62289c]
add esp, 4
test eax, eax
mov dword [esp + 0x18], eax
je 0x4b2d44
push ebx
push 1
push edi
push eax
call fcn.0048fd17
add esp, 0x10
cmp eax, 1
jne 0x4b2d44
cmp esi, edi
jne 0x4b2c88
cmp esi, 4
mov ecx, dword [esp + 0x18]
mov eax, esi
mov edx, ebp
jb 0x4b2c14
jmp 0x4b2c00
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x4b2c18
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x4b2c00
test eax, eax
je 0x4b2c75
movzx esi, byte [edx]
movzx edi, byte [ecx]
sub esi, edi
jne 0x4b2c67
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4b2c75
movzx esi, byte [edx]
movzx edi, byte [ecx]
sub esi, edi
jne 0x4b2c67
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4b2c75
movzx esi, byte [edx]
movzx edi, byte [ecx]
sub esi, edi
jne 0x4b2c67
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4b2c75
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x4b2c75
test esi, esi
mov eax, 1
jg 0x4b2c77
or eax, 0xffffffff
jmp 0x4b2c77
xor eax, eax
test eax, eax
jne 0x4b2d44
mov dword [esp + 0x14], eax
jmp 0x4b2d44
mov ebx, dword [esp + 0x18]
lea edx, [esp + 0x24]
push edx
lea eax, [esp + 0x20]
push eax
mov byte [edi + ebx], 0
call fcn.004b2850
add esp, 8
test eax, eax
jne 0x4b2d40
cmp esi, dword [esp + 0x24]
jne 0x4b2d40
cmp esi, 4
mov ecx, dword [esp + 0x1c]
mov eax, esi
mov edx, ebp
jb 0x4b2cd5
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x4b2cd9
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x4b2cc1
test eax, eax
je 0x4b2d36
movzx esi, byte [edx]
movzx edi, byte [ecx]
sub esi, edi
jne 0x4b2d28
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4b2d36
movzx esi, byte [edx]
movzx edi, byte [ecx]
sub esi, edi
jne 0x4b2d28
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4b2d36
movzx esi, byte [edx]
movzx edi, byte [ecx]
sub esi, edi
jne 0x4b2d28
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4b2d36
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x4b2d36
test esi, esi
mov eax, 1
jg 0x4b2d38
or eax, 0xffffffff
jmp 0x4b2d38
xor eax, eax
test eax, eax
jne 0x4b2d40
mov dword [esp + 0x14], eax
mov ebx, dword [esp + 0x30]
mov edx, dword [esp + 0x18]
push edx
call dword [0x6228a0]
mov eax, dword [esp + 0x20]
push eax
call dword [0x6228a0]
push ebx
mov dword [esp + 0x28], 0
call fcn.0048d609
mov eax, dword [esp + 0x20]
add esp, 0xc
pop esi
pop ebp
pop edi
pop ebx
add esp, 0x18
ret