Function at 0x42b530
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x459030
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x108
push ebx
push esi
push edi
mov ebx, ecx
mov dword [ebp - 0x10], esp
push str.ReadStat:_Begin_n
push 2
push 2
call fcn.004048e0
lea edi, [ebx + 0xc]
or ecx, 0xffffffff
xor eax, eax
add esp, 0xc
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [ebp - 0x114]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [ebp + 8]
and ecx, 3
sub eax, 0
rep movsb byte es:[edi], byte [esi]
je 0x42b64e
dec eax
je 0x42b5fa
dec eax
jne 0x42b6a0
mov edi, str.Sent
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebp - 0x114]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edi, edx
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebx + 0x6130]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x42b5ef
push eax
call dword [sym.imp.MSVCRT.dll_free]
add esp, 4
mov dword [ebx + 0x6130], esi
mov dword [ebx + 0x6118], esi
jmp 0x42b6a0
mov edi, 0x476e18
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebp - 0x114]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edi, edx
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebx + 0x612c]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x42b646
push eax
call dword [sym.imp.MSVCRT.dll_free]
add esp, 4
mov dword [ebx + 0x612c], esi
mov dword [ebx + 0x6114], esi
jmp 0x42b6a0
mov edi, 0x476e14
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebp - 0x114]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edi, edx
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebx + 0x6128]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x42b69a
push eax
call dword [sym.imp.MSVCRT.dll_free]
add esp, 4
mov dword [ebx + 0x6128], esi
mov dword [ebx + 0x610c], esi
mov edi, 0x476e10
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebp - 0x114]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [ebp - 4], eax
mov esi, edi
mov edi, edx
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
lea eax, [ebp - 0x114]
and ecx, 3
push 0x476e0c
rep movsb byte es:[edi], byte [esi]
push eax
call dword [sym.imp.MSVCRT.dll_fopen]
mov esi, eax
add esp, 8
test esi, esi
jne 0x42b701
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 2
push 0
push esi
call dword [sym.imp.MSVCRT.dll_fseek]
push esi
call dword [sym.imp.MSVCRT.dll_ftell]
mov edi, eax
push eax
shr edi, 3
call dword [sym.imp.MSVCRT.dll_malloc]
add esp, 0x14
mov dword [ebp - 0x14], eax
test eax, eax
push esi
jne 0x42b759
call dword [sym.imp.MSVCRT.dll_fclose]
add esp, 4
push str.ReadStat:_Failed_to_allocate_memory_for_SMSBuf
push 1
push 2
call fcn.004048e0
add esp, 0xc
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
call dword [sym.imp.MSVCRT.dll_rewind]
mov eax, dword [ebp + 8]
add esp, 4
test eax, eax
jne 0x42b7be
mov ecx, dword [ebx + 0x6120]
push esi
push 1
push 1
push ecx
call dword [sym.imp.MSVCRT.dll_fread]
add esp, 0x10
cmp eax, 1
je 0x42b7be
mov edx, dword [ebx + 0x6120]
push esi
mov byte [edx], 0
call dword [sym.imp.MSVCRT.dll_fclose]
add esp, 4
push 0
push str.ReadStat:_Error_reading_SMS_stat_unique_SMS_ID.__Box_ID__d
push 1
push 2
call fcn.004048e0
add esp, 0x10
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, dword [ebp - 0x14]
push esi
push edi
push 8
push eax
call dword [sym.imp.MSVCRT.dll_fread]
add esp, 0x10
cmp eax, edi
je 0x42b820
push esi
call dword [sym.imp.MSVCRT.dll_fclose]
mov ecx, dword [ebp + 8]
add esp, 4
push ecx
push str.ReadStat:_Error_reading_SMS_stat_file_data.__Box_ID__d
push 1
push 2
call fcn.004048e0
add esp, 0x10
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, dword [ebp + 8]
sub eax, 0
je 0x42b850
dec eax
je 0x42b83f
dec eax
jne 0x42b85f
mov edx, dword [ebp - 0x14]
mov dword [ebx + 0x6118], edi
mov dword [ebx + 0x6130], edx
jmp 0x42b85f
mov eax, dword [ebp - 0x14]
mov dword [ebx + 0x6114], edi
mov dword [ebx + 0x612c], eax
jmp 0x42b85f
mov ecx, dword [ebp - 0x14]
mov dword [ebx + 0x610c], edi
mov dword [ebx + 0x6128], ecx
push esi
call dword [sym.imp.MSVCRT.dll_fclose]
add esp, 4
mov dword [ebp - 4], 0xffffffff
push str.ReadStat:_End_n
push 2
push 2
call fcn.004048e0
mov ecx, dword [ebp - 0xc]
add esp, 0xc
mov eax, 1
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4