Function at 0x1a002570
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x294
mov eax, dword [0x1a02400c]
xor eax, esp
mov dword [esp + 0x290], eax
movzx eax, word [ebp + 8]
mov dword [esp + 4], eax
movzx eax, word [ebp + 0xc]
push ebx
push esi
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0x10]
push edi
mov dword [esp + 0x38], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x3c], eax
lea eax, [esp + 0x90]
push 0x104
push eax
push str._HncBinProofToolsDics_
mov dword [esp + 0x28], 0
call dword [sym.imp.HncFoundation.dll_HncPathToAbsolute]
push 0x1a01ef34
lea eax, [esp + 0x94]
push 0x104
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscat_s]
push 0x1a01d8fc
lea eax, [esp + 0xa0]
push eax
lea eax, [esp + 0x30]
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__wfopen_s]
mov eax, dword [esp + 0x34]
add esp, 0x18
mov dword [esp + 0x14], eax
test eax, eax
jne 0x1a002624
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x290]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
push eax
push 1
lea eax, [esp + 0x48]
push 0x4a
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
mov eax, dword [esp + 0x96]
mov esi, dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
lea eax, [eax + eax*2]
add eax, eax
movzx ecx, ax
mov eax, dword [esp + 0x98]
shl eax, 2
movzx edi, ax
mov eax, ecx
push eax
mov dword [esp + 0x38], eax
call esi
mov ebx, eax
mov eax, edi
push eax
mov dword [esp + 0x30], eax
call esi
add esp, 0x18
mov dword [esp + 0x28], 0
mov esi, eax
lea ecx, [esp + 0x28]
xorps xmm0, xmm0
lea eax, [esp + 0x30]
movq qword [esp + 0x30], xmm0
push ebx
mov dword [esp + 0x30], eax
call fcn.1a002b40
push esi
lea ecx, [esp + 0x2c]
call fcn.1a002b40
mov edi, dword [esp + 0x14]
push edi
push 1
push dword [esp + 0x2c]
push ebx
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
push edi
push 1
push dword [esp + 0x30]
push esi
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
mov eax, dword [esp + 0x30]
add esp, 0x20
movzx eax, ax
lea eax, [eax + eax*2]
lea ecx, [ebx + eax*2]
mov ebx, dword [esp + 0x38]
test ebx, ebx
jne 0x1a0026dd
movzx ebx, word [ecx + 4]
jmp 0x1a0027bb
movzx eax, word [ecx + 2]
mov edx, eax
mov dword [esp + 0x10], edx
test ax, ax
jne 0x1a00272d
cmp word [esp + 0x20], ax
jne 0x1a00272d
xor edi, edi
movzx eax, ax
xor edx, edx
cmp di, word [ecx + 4]
mov edi, dword [esp + 0x14]
jae 0x1a00271f
movzx eax, word [ecx + 2]
add eax, edx
mov ax, word [esi + eax*4]
mov word [ebx + edx*2], ax
inc edx
movzx eax, word [ecx + 4]
cmp edx, eax
jl 0x1a002704
movzx eax, word [ecx + 2]
mov ecx, dword [esp + 0x18]
movzx eax, ax
movzx esi, word [esi + eax*4 + 2]
jmp 0x1a002782
mov eax, dword [esp + 0x10]
xor edi, edi
xor edx, edx
movzx eax, ax
cmp di, word [ecx + 4]
mov edi, dword [esp + 0x14]
jae 0x1a00275d
movzx eax, word [ecx + 2]
add eax, edx
mov ax, word [esi + eax*4]
mov word [ebx + edx*2], ax
inc edx
movzx eax, word [ecx + 4]
cmp edx, eax
jl 0x1a002742
movzx eax, word [ecx + 2]
mov ecx, dword [esp + 0x20]
movzx eax, ax
movzx ecx, cx
add ecx, eax
movzx edx, word [esi + ecx*4 - 2]
mov ax, word [esi + ecx*4 + 2]
mov ecx, dword [esp + 0x18]
sub ax, dx
movzx esi, ax
mov eax, edx
lea ecx, [ecx + eax*2]
mov ebx, dword [esp + 0x3c]
test ebx, ebx
je 0x1a0027b8
mov eax, dword [esp + 0x24]
add eax, 0x5e
push 0
add eax, ecx
push eax
push edi
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
push edi
movzx eax, si
push eax
push 2
push ebx
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
movzx eax, ax
add esp, 0x1c
cmp si, ax
je 0x1a0027b8
mov esi, eax
movzx ebx, si
push edi
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov ecx, dword [esp + 0x2c]
add esp, 4
mov edi, dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xor esi, esi
test ecx, ecx
jle 0x1a0027fa
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + esi*4]
test eax, eax
je 0x1a0027f5
sub eax, 8
cmp dword [eax], 0xdddd
jne 0x1a0027f5
push eax
call edi
mov ecx, dword [esp + 0x2c]
add esp, 4
inc esi
cmp esi, ecx
jl 0x1a0027d5
cmp ecx, 2
jle 0x1a002808
push dword [esp + 0x2c]
call edi
add esp, 4
mov ecx, dword [esp + 0x29c]
mov ax, bx
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10