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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x432969
mov eax, dword fs:[0]
push eax
sub esp, 0x9c
mov eax, dword [0x4447d0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [0x4463b8]
mov ebx, dword [ebp + 8]
push dword [eax]
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x90], ebx
call fcn.00401120
push str.pKayzlbeM_ootNLGDb
lea ecx, [ebp - 0x5c]
mov dword [ebp - 4], 0
call fcn.00401120
push 0
push 0
push 3
push 0
push 0
push 0x80000000
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 1
call fcn.0040e3f0
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov esi, eax
cmp esi, 0xffffffff
jne 0x408ba2
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebx], eax
xor esi, esi
jmp 0x408d4c
push 0x20
push 0
push 0xa
push 0
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x88], esp
push 0x43456c
call fcn.00401120
sub esp, 0x18
mov ecx, esp
push str.F_
mov byte [ebp - 4], 2
call fcn.00401120
lea eax, [ebp - 0xa8]
push eax
mov byte [ebp - 4], 1
call fcn.00410300
add esp, 0x34
mov ecx, eax
mov byte [ebp - 4], 3
call fcn.00401c70
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 1
call fcn.00401190
push 0
push esi
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov edi, eax
push edi
mov dword [ebp - 0x88], edi
call fcn.0041a658
add esp, 4
lea ecx, [ebp - 0x14]
push 0
push ecx
push edi
push eax
push esi
mov dword [ebp - 0x8c], eax
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x408c39
xor esi, esi
jmp 0x408d4c
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x84], esp
xor esi, esi
push 0x43456c
xor bl, bl
mov dword [ebp - 0x80], esi
call fcn.00401120
sub esp, 0x18
mov ecx, esp
push str.__d_a_t_a___
mov byte [ebp - 4], 4
call fcn.00401120
lea eax, [ebp - 0x2c]
push eax
mov byte [ebp - 4], 1
call fcn.00410300
add esp, 0x34
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 5
mov byte [ebp - 0x75], 0
call fcn.00401d50
mov ecx, edi
mov edi, dword [ebp - 0x8c]
sub ecx, eax
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x84], ecx
jmp 0x408ca0
cmp esi, ecx
jae 0x408d0b
push 0
lea ecx, [ebp - 0x2c]
call fcn.004067a0
movsx ecx, byte [eax]
movzx eax, byte [edi]
cmp eax, ecx
jne 0x408cff
xor esi, esi
mov bl, 1
cmp dword [ebp - 0x7c], esi
jle 0x408ce1
push esi
lea ecx, [ebp - 0x2c]
call fcn.004067a0
movsx ecx, byte [eax]
movzx eax, byte [edi + esi]
xor edx, edx
movzx ebx, bl
cmp eax, ecx
cmovne ebx, edx
inc esi
cmp esi, dword [ebp - 0x7c]
jl 0x408cc1
cmp byte [ebp - 0x75], 0
mov esi, dword [ebp - 0x80]
jne 0x408d05
mov byte [ebp - 0x75], 0
mov ecx, dword [ebp - 0x84]
inc esi
inc edi
mov dword [ebp - 0x80], esi
test bl, bl
je 0x408ca0
jmp 0x408d0f
cmp byte [ebp - 0x75], 0
je 0x408cea
mov byte [ebp - 0x75], 1
jmp 0x408cee
test bl, bl
je 0x408d42
mov eax, dword [ebp - 0x7c]
dec eax
push str.lgTjwkoGHQwpqZjYjJjCbOJ
lea ecx, [ebp - 0x74]
add esi, eax
call fcn.00401120
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x90]
sub eax, esi
add esi, dword [ebp - 0x8c]
mov dword [ecx], eax
lea ecx, [ebp - 0x74]
call fcn.00401190
jmp 0x408d44
xor esi, esi
lea ecx, [ebp - 0x2c]
call fcn.00401190
lea ecx, [ebp - 0x5c]
call fcn.00401190
lea ecx, [ebp - 0x44]
call fcn.00401190
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0041bcf4
mov esp, ebp
pop ebp
ret