Function at 0x4723a0
Capabilities:
Get file size
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
push ebx
push esi
mov esi, ecx
xor ebx, ebx
mov dword [esi + 0x1abc], ebx
mov eax, dword [esi + 0x1b80]
push edi
cmp eax, ebx
je 0x4723cc
push eax
call fcn.00441300
add esp, 4
mov dword [esi + 0x1b80], ebx
xor eax, eax
mov dword [esi + 0x1b7c], eax
mov dword [esi + 0x1b80], eax
mov dword [esi + 0x1b84], eax
mov dword [esi + 0x1b88], eax
mov dword [esi + 0x1b8c], eax
mov dword [esi + 0x1b90], eax
mov dword [esi + 0x1b94], eax
mov dword [esi + 0x1b98], eax
mov eax, dword [ebp + 8]
cmp eax, ebx
je 0x472893
cmp word [eax], bx
je 0x472893
push ebx
push ebx
push 3
push ebx
push 1
push SysReAllocString
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov edi, eax
cmp edi, ebx
je 0x47286e
cmp edi, 0xffffffff
je 0x47286e
lea eax, [ebp - 0xc]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_GetFileSizeEx]
test eax, eax
je 0x472862
mov eax, dword [ebp - 0xc]
cmp eax, ebx
je 0x472862
cmp dword [ebp - 8], ebx
jne 0x472862
push eax
call fcn.004412a0
add esp, 4
mov dword [esi + 0x1b80], eax
cmp eax, ebx
je 0x47287f
mov ecx, dword [ebp - 0xc]
push ebx
lea edx, [ebp - 8]
push edx
push ecx
push eax
push edi
mov dword [esi + 0x1b7c], ecx
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x472857
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 8]
jne 0x472857
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [esi + 0x1b80]
push 0xd
push eax
call fcn.004b03ac
add esp, 8
mov dword [ebp - 4], eax
cmp eax, ebx
jne 0x4724d7
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push str.Dump_file_invalid_format__title_
call fcn.004200b0
add esp, 0x14
jmp 0x472893
xor ecx, ecx
mov word [eax], cx
mov edi, dword [ebp - 4]
push 6
add edi, 4
push str.Size:
push edi
call fcn.004b19ad
add esp, 0xc
test eax, eax
je 0x47250d
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push str.Dump_file_invalid_format__Size_start_
call fcn.004200b0
add esp, 0x14
jmp 0x472893
push 0xd
push edi
call fcn.004b03ac
add esp, 8
mov dword [ebp - 4], eax
cmp eax, ebx
jne 0x472536
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push str.Dump_file_invalid_format__Size_line_end_
call fcn.004200b0
add esp, 0x14
jmp 0x472893
push 0xa
lea edx, [ebp - 4]
push edx
add eax, 4
add edi, 0xc
push edi
mov dword [esi + 0x1b94], eax
call fcn.004b06db
mov word [esi + 0x1b88], ax
mov eax, dword [ebp - 4]
add esp, 0xc
cmp eax, ebx
je 0x472843
cmp word [eax], 0x78
jne 0x472843
push 0xa
lea ecx, [ebp - 4]
add eax, 2
push ecx
push eax
call fcn.004b06db
mov edi, dword [ebp - 4]
add esp, 0xc
mov word [esi + 0x1b8a], ax
cmp edi, ebx
je 0x47282f
movzx ecx, word [edi]
cmp cx, 0x20
je 0x4725a4
cmp cx, 0xd
jne 0x47282f
xor edx, edx
dec eax
mov word [esi + 0x1b8c], dx
mov word [esi + 0x1b8e], ax
cmp word [edi], 0x20
jne 0x472631
jmp 0x4725c0
add edi, 2
cmp word [edi], 0x20
je 0x4725c0
push 8
push str.Cursor:
push edi
call fcn.004b19ad
add esp, 0xc
test eax, eax
jne 0x472631
push 0xa
lea eax, [ebp - 4]
push eax
add edi, 0x10
push edi
call fcn.004b06db
mov di, ax
mov eax, dword [ebp - 4]
add esp, 0xc
cmp eax, ebx
je 0x47268e
cmp word [eax], 0x78
jne 0x47268e
push 0xa
lea ecx, [ebp - 4]
add eax, 2
push ecx
push eax
call fcn.004b06db
add esp, 0xc
cmp di, bx
jl 0x472631
cmp ax, bx
jl 0x472631
mov word [esi + 0x1b8c], di
mov word [esi + 0x1b8e], ax
movsx edi, word [esi + 0x1b88]
movsx edx, word [esi + 0x1b8a]
mov eax, dword [esi + 0x1b94]
imul edi, edx
lea ecx, [edi + edi*2]
add ecx, ecx
add ecx, ecx
add ecx, ecx
sub ecx, dword [esi + 0x1b80]
lea eax, [eax + edi*2]
add ecx, eax
mov dword [esi + 0x1b98], eax
xor eax, eax
cmp ecx, dword [esi + 0x1b7c]
setle al
mov dword [esi + 0x1b90], eax
cmp eax, ebx
jne 0x4726a5
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push str.Dump_file_invalid_format__Block1_
call fcn.004200b0
add esp, 0x14
jmp 0x472893
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push str.Dump_file_invalid_format__Cursor_
call fcn.004200b0
add esp, 0x14
jmp 0x472893
mov ecx, dword [esi + 0x4c]
mov dword [esi], 5
call fcn.00478350
mov ecx, dword [esi + 0x4c]
mov ebx, eax
call fcn.00478370
xor ecx, ecx
mov dword [esi + 0x1abc], ecx
mov dword [esi + 0x1ac0], ecx
mov dword [esi + 0x1ac4], ecx
mov dword [esi + 0x1ac8], ecx
mov dword [esi + 0x1ad4], 0xf
mov edx, 1
mov dword [esi + 0x1ad8], edx
mov dword [esi + 0x1ae8], ecx
mov dword [esi + 0x1aec], ecx
mov dword [esi + 0x1af0], ecx
mov dword [esi + 0x1af4], ecx
mov dword [esi + 0x1af8], ecx
mov word [esi + 0x1afc], cx
mov ecx, 0x362
mov dword [esi + 0x1ae0], ecx
mov dword [esi + 0x1adc], ecx
mov ecx, dword [esi + 0x1b88]
mov dword [esi + 0x1ae8], ecx
mov ecx, dword [esi + 0x1b8c]
mov dword [esi + 0x1aec], ecx
mov ecx, 7
mov word [esi + 0x1af0], cx
xor ecx, ecx
mov word [esi + 0x1af2], cx
mov word [esi + 0x1af4], cx
lea ecx, [ebx - 1]
mov word [esi + 0x1af6], cx
lea ecx, [eax - 1]
mov word [esi + 0x1af8], cx
mov ecx, dword [esi + 0x4c]
mov dword [esi + 0x1ae4], 0
mov ecx, dword [ecx + 0x3bec]
mov ecx, dword [ecx + 0x1afe]
mov dword [esi + 0x1afe], ecx
mov dword [esi + 0x1afa], ecx
xor ecx, ecx
mov dword [esi + 0x1b30], eax
movsx eax, word [esi + 0x1b8a]
mov word [esi + 0x1b02], cx
push ecx
mov ecx, esi
mov dword [esi + 0x1b2c], ebx
mov dword [esi + 0x1b34], eax
mov dword [esi + 0x1b44], edx
call fcn.004702f0
test eax, eax
je 0x472891
mov edx, dword [esi + 0x1b94]
mov eax, dword [esi + 0x1b18]
mov ecx, dword [esi + 0x1b98]
mov ebx, dword [esi + 0x1b1c]
push edi
push edx
push eax
mov dword [ebp + 8], ecx
call fcn.00404870
add esp, 0xc
test edi, edi
jbe 0x47281a
mov eax, dword [ebp + 8]
add eax, 8
mov ecx, dword [eax]
mov dx, word [eax]
shr ecx, 8
and ecx, 0xf
shl ecx, 4
and dx, 0xf
or cx, dx
mov word [ebx], cx
add eax, 0x18
add ebx, 2
sub edi, 1
jne 0x4727f7
pop edi
mov dword [esi + 0x1b60], 1
pop esi
mov al, 1
pop ebx
mov esp, ebp
pop ebp
ret 4
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push str.Dump_file_invalid_format__Size.Y_
call fcn.004200b0
add esp, 0x14
jmp 0x472893
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push str.Dump_file_invalid_format__Size.X_
call fcn.004200b0
add esp, 0x14
jmp 0x472893
push ebx
push ebx
push ebx
push ebx
push str.Dump_file_reading_failed
jmp 0x472877
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push str.Invalid_dump_file_size
jmp 0x472877
push ebx
push ebx
push ebx
push ebx
push str.Cant_open_dump_file_for_reading
call fcn.004200b0
add esp, 0x14
cmp edi, ebx
je 0x472893
cmp edi, 0xffffffff
je 0x472893
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x472893
xor ebx, ebx
mov eax, dword [esi + 0x1b80]
cmp eax, ebx
je 0x4728ac
push eax
call fcn.00441300
add esp, 4
mov dword [esi + 0x1b80], ebx
xor eax, eax
mov dword [esi + 0x1b7c], eax
mov dword [esi + 0x1b80], eax
mov dword [esi + 0x1b84], eax
mov dword [esi + 0x1b88], eax
mov dword [esi + 0x1b8c], eax
mov dword [esi + 0x1b90], eax
mov dword [esi + 0x1b94], eax
pop edi
mov dword [esi + 0x1b98], eax
pop esi
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret 4