Function at 0x1002edb0
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 + 0xc], ebx
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
jne 0x1002edd8
pop edi
xor eax, eax
pop ebx
add esp, 0x18
ret
push ebp
mov ebp, dword [esp + 0x30]
cmp ebp, ebx
push esi
je 0x1002f1ae
mov esi, dword [esp + 0x38]
cmp esi, ebx
je 0x1002f1ae
push 8
push str.sha256__
push edi
call fcn.1011b2f3
add esp, 0xc
test eax, eax
jne 0x1002efef
mov eax, dword [0x101b9058]
cmp dword [eax + 0x5c], ebx
je 0x1002f005
push 0x20
call dword [section..data]
mov edi, eax
add esp, 4
cmp edi, ebx
je 0x1002eec1
mov ecx, dword [0x101b9058]
mov edx, dword [ecx + 0x5c]
push 0x20
push edi
push esi
push ebp
call edx
add esp, 0x10
cmp eax, ebx
jne 0x1002f1ae
mov ebx, dword [esp + 0x2c]
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x14]
push ecx
push 0x20
push edi
push ebx
call fcn.10046c50
push edi
mov esi, eax
call dword [0x101b9004]
add esp, 0x18
test esi, esi
je 0x1002ee79
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.100383e0
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 0x1002ee95
sub eax, edx
lea esi, [eax + 1]
push esi
call dword [section..data]
mov ebp, eax
add esp, 4
test ebp, ebp
jne 0x1002eece
mov eax, dword [esp + 0x10]
push eax
call dword [0x101b9004]
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.1011e560
add esp, 0xc
mov esi, ebp
jmp 0x1002eee0
push str._sha256__
push esi
call fcn.1011b3c0
add esp, 8
test eax, eax
je 0x1002eef5
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 0x1002ef00
sub ecx, esi
mov edi, ecx
mov ecx, dword [esp + 0x20]
cmp ecx, edi
jne 0x1002ef9d
cmp ecx, 4
mov esi, dword [esp + 0x10]
jb 0x1002ef36
mov edi, dword [esi]
cmp edi, dword [edx]
jne 0x1002ef3a
sub ecx, 4
add edx, 4
add esi, 4
cmp ecx, 4
jae 0x1002ef22
test ecx, ecx
je 0x1002ef97
movzx edi, byte [esi]
movzx ebx, byte [edx]
sub edi, ebx
jne 0x1002ef89
sub ecx, 1
add edx, 1
add esi, 1
test ecx, ecx
je 0x1002ef97
movzx edi, byte [esi]
movzx ebx, byte [edx]
sub edi, ebx
jne 0x1002ef89
sub ecx, 1
add edx, 1
add esi, 1
test ecx, ecx
je 0x1002ef97
movzx edi, byte [esi]
movzx ebx, byte [edx]
sub edi, ebx
jne 0x1002ef89
sub ecx, 1
add edx, 1
add esi, 1
test ecx, ecx
je 0x1002ef97
movzx edi, byte [esi]
movzx ecx, byte [edx]
sub edi, ecx
je 0x1002ef97
test edi, edi
mov ecx, 1
jg 0x1002ef99
or ecx, 0xffffffff
jmp 0x1002ef99
xor ecx, ecx
test ecx, ecx
je 0x1002efbe
test eax, eax
je 0x1002efc6
push str.sha256__
push eax
mov byte [eax], 0x3b
call fcn.1011b3c0
mov esi, eax
add esp, 8
test esi, esi
jne 0x1002eee0
jmp 0x1002efc6
mov dword [esp + 0x18], 0
mov edx, dword [esp + 0x10]
push edx
call dword [0x101b9004]
push ebp
mov dword [esp + 0x18], 0
call dword [0x101b9004]
mov eax, dword [esp + 0x20]
add esp, 8
pop esi
pop ebp
pop edi
pop ebx
add esp, 0x18
ret
push 0x1015e970
push edi
call fcn.1011ae28
add esp, 8
cmp eax, ebx
mov dword [esp + 0x30], eax
jne 0x1002f012
pop esi
pop ebp
pop edi
mov eax, 0x5a
pop ebx
add esp, 0x18
ret
push 2
push ebx
push eax
call fcn.10122938
add esp, 0xc
test eax, eax
jne 0x1002f17f
mov ebx, dword [esp + 0x30]
push ebx
call fcn.10122843
push 0
push 0
push ebx
mov edi, eax
call fcn.10122938
add esp, 0x10
test eax, eax
jne 0x1002f17f
cmp edi, 0x100000
ja 0x1002f17f
mov eax, edi
cdq
push edx
push eax
call fcn.1003ad70
mov edi, eax
add esp, 8
cmp esi, edi
ja 0x1002f17f
lea eax, [edi + 1]
push eax
call dword [section..data]
add esp, 4
test eax, eax
mov dword [esp + 0x14], eax
je 0x1002f17f
mov ecx, ebx
push ecx
push 1
mov edx, eax
push edi
push edx
call fcn.1011b273
add esp, 0x10
cmp eax, 1
jne 0x1002f17f
cmp esi, edi
jne 0x1002f0c6
cmp esi, 4
mov ecx, dword [esp + 0x14]
mov eax, esi
mov edx, ebp
jb 0x1002f114
mov edi, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x1002f118
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x1002f0b0
jmp 0x1002f114
mov ebx, dword [esp + 0x14]
lea ecx, [esp + 0x24]
push ecx
lea edx, [esp + 0x20]
push edx
mov byte [edi + ebx], 0
call fcn.1002ece0
add esp, 8
test eax, eax
jne 0x1002f17f
cmp esi, dword [esp + 0x24]
jne 0x1002f17f
cmp esi, 4
mov ecx, dword [esp + 0x1c]
mov eax, esi
mov edx, ebp
jb 0x1002f114
nop
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x1002f118
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x1002f100
test eax, eax
je 0x1002f175
movzx edi, byte [ecx]
movzx esi, byte [edx]
sub esi, edi
jne 0x1002f167
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1002f175
movzx edi, byte [ecx]
movzx esi, byte [edx]
sub esi, edi
jne 0x1002f167
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1002f175
movzx edi, byte [ecx]
movzx esi, byte [edx]
sub esi, edi
jne 0x1002f167
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1002f175
movzx eax, byte [ecx]
movzx esi, byte [edx]
sub esi, eax
je 0x1002f175
test esi, esi
mov eax, 1
jg 0x1002f177
or eax, 0xffffffff
jmp 0x1002f177
xor eax, eax
test eax, eax
jne 0x1002f17f
mov dword [esp + 0x18], eax
mov ecx, dword [esp + 0x14]
push ecx
call dword [0x101b9004]
mov edx, dword [esp + 0x20]
push edx
call dword [0x101b9004]
mov eax, dword [esp + 0x38]
push eax
mov dword [esp + 0x28], 0
call fcn.1011ace8
mov eax, dword [esp + 0x24]
add esp, 0xc
pop esi
pop ebp
pop edi
pop ebx
add esp, 0x18
ret