Function at 0x53b150
Capabilities:
Read file on windows

Disassembly:
push rbp
sub rsp, 0x50
mov rbp, rsp
mov dword [rbp + 0x60], ecx
mov qword [rbp + 0x68], rdx
mov dword [rbp + 0x70], r8d
mov eax, dword [rbp + 0x38]
sub eax, 0x1a8
mov dword [rbp + 0x3c], eax
mov eax, dword [rbp + 0x48]
add eax, dword [rbp + 0x44]
mov ecx, dword [rbp + 0x40]
add ecx, dword [rbp + 0x3c]
cmp eax, ecx
jge 0x53b18c
lea rcx, [rbp + 0x3c]
lea rdx, [rbp + 0x38]
call fcn.00538540
mov dword [rbp + 0x38], 0
mov dword [rbp + 0x44], 0
add dword [rbp + 0x48], 0x363
mov eax, dword [rbp + 0x44]
sub eax, dword [rbp + 0x40]
mov ecx, dword [rbp + 0x3c]
sub ecx, dword [rbp + 0x38]
cmp eax, ecx
jle 0x53b1bd
mov eax, dword [rbp + 0x38]
imul eax, eax, 0x22e
mov dword [rbp + 0x3c], eax
mov eax, dword [rbp + 0x48]
mov dword [rbp + 0x48], eax
mov eax, dword [rbp + 0x3c]
add eax, 0x59
mov dword [rbp + 0x40], eax
add dword [rbp + 0x44], 1
cmp dword [rbp + 0x44], 3
jne 0x53b19a
nop
lea rcx, [rbp + 0x48]
lea rdx, [rbp + 0x44]
lea r8, [rbp + 0x40]
lea r9, [rbp + 0x3c]
lea rax, [rbp + 0x38]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x48]
mov qword [rsp + 0x28], rax
call fcn.0053ae80
mov eax, dword [rbp + 0x48]
imul eax, dword [rbp + 0x44]
mov dword [rbp + 0x48], eax
mov dword [rbp + 0x44], 0
add dword [rbp + 0x48], 0x351
mov eax, dword [rbp + 0x44]
add eax, dword [rbp + 0x44]
mov ecx, dword [rbp + 0x40]
add ecx, dword [rbp + 0x3c]
cmp eax, ecx
jge 0x53b232
mov eax, dword [rbp + 0x38]
imul eax, eax, 0x1bd
mov dword [rbp + 0x3c], eax
mov eax, dword [rbp + 0x3c]
sub eax, dword [rbp + 0x48]
cmp eax, dword [rbp + 0x48]
jge 0x53b249
mov eax, 0x387
sub eax, dword [rbp + 0x48]
mov dword [rbp + 0x48], eax
mov eax, dword [rbp + 0x44]
sub eax, dword [rbp + 0x40]
test eax, eax
jle 0x53b25f
mov eax, dword [rbp + 0x38]
imul eax, eax, 0x212
mov dword [rbp + 0x3c], eax
mov eax, dword [rbp + 0x48]
mov dword [rbp + 0x48], eax
add dword [rbp + 0x44], 1
cmp dword [rbp + 0x44], 3
jne 0x53b20f
nop
mov eax, dword [rbp + 0x38]
add eax, dword [rbp + 0x48]
mov dword [rbp + 0x3c], eax
lea rcx, [rbp + 0x44]
call fcn.00536080
mov eax, dword [rbp + 0x48]
add eax, dword [rbp + 0x44]
mov ecx, dword [rbp + 0x40]
add ecx, dword [rbp + 0x3c]
cmp eax, ecx
jge 0x53b29f
lea rcx, [rbp + 0x40]
lea rdx, [rbp + 0x3c]
call fcn.00538540
movsxd rcx, dword [rbp + 0x60]
mov rax, qword [rbp + 0x68]
mov rdx, qword [rax]
mov r8d, dword [rbp + 0x70]
lea r9, [rbp + 0x4c]
mov qword [rsp + 0x20], 0
call sub.kernel32.dll_ReadFile
test eax, eax
jne 0x53b41b
mov eax, dword [rbp + 0x48]
add eax, dword [rbp + 0x44]
mov ecx, dword [rbp + 0x40]
add ecx, dword [rbp + 0x3c]
cmp eax, ecx
jge 0x53b2e5
lea rcx, [rbp + 0x3c]
lea rdx, [rbp + 0x38]
call fcn.00538540
mov dword [rbp + 0x38], 0
mov dword [rbp + 0x44], 0
add dword [rbp + 0x48], 0x367
mov eax, dword [rbp + 0x44]
sub eax, dword [rbp + 0x40]
test eax, eax
jle 0x53b310
mov eax, dword [rbp + 0x38]
imul eax, eax, 0x212
mov dword [rbp + 0x3c], eax
mov eax, dword [rbp + 0x48]
mov dword [rbp + 0x48], eax
mov eax, dword [rbp + 0x3c]
add eax, 0x5d
mov dword [rbp + 0x40], eax
mov eax, dword [rbp + 0x38]
sub eax, dword [rbp + 0x48]
cmp dword [rbp + 0x40], eax
jne 0x53b331
mov dword [rbp + 0x38], 0
add dword [rbp + 0x44], 1
cmp dword [rbp + 0x44], 3
jne 0x53b2f3
nop
mov dword [rbp + 0x44], 0
add dword [rbp + 0x48], 0x371
mov eax, dword [rbp + 0x48]
add eax, dword [rbp + 0x44]
mov ecx, dword [rbp + 0x40]
add ecx, dword [rbp + 0x3c]
cmp eax, ecx
jge 0x53b366
mov eax, dword [rbp + 0x38]
sub eax, 0x19c
mov dword [rbp + 0x3c], eax
mov eax, dword [rbp + 0x3c]
add eax, dword [rbp + 0x38]
cmp eax, dword [rbp + 0x48]
jle 0x53b377
mov eax, dword [rbp + 0x48]
mov dword [rbp + 0x48], eax
mov eax, dword [rbp + 0x48]
add eax, dword [rbp + 0x44]
mov ecx, dword [rbp + 0x40]
add ecx, dword [rbp + 0x3c]
cmp eax, ecx
jge 0x53b393
mov eax, dword [rbp + 0x38]
sub eax, 0x1b1
mov dword [rbp + 0x3c], eax
mov eax, dword [rbp + 0x3c]
sub eax, dword [rbp + 0x48]
cmp eax, dword [rbp + 0x48]
jge 0x53b3a5
add dword [rbp + 0x48], 0x35b
add dword [rbp + 0x44], 1
cmp dword [rbp + 0x44], 4
jne 0x53b343
nop
mov dword [rbp + 0x4c], 0
lea rcx, [rbp + 0x48]
lea rdx, [rbp + 0x44]
lea r8, [rbp + 0x40]
lea r9, [rbp + 0x3c]
lea rax, [rbp + 0x38]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x48]
mov qword [rsp + 0x28], rax
call fcn.0053ae80
mov eax, dword [rbp + 0x48]
imul eax, dword [rbp + 0x44]
mov dword [rbp + 0x48], eax
mov eax, dword [rbp + 0x38]
imul eax, eax, 0x1f8
mov dword [rbp + 0x3c], eax
lea rcx, [rbp + 0x48]
lea rdx, [rbp + 0x44]
lea r8, [rbp + 0x40]
lea r9, [rbp + 0x3c]
lea rax, [rbp + 0x38]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x48]
mov qword [rsp + 0x28], rax
call fcn.0053ae80
mov dword [rbp + 0x44], 0
cmp dword [rbp + 0x44], 1
jge 0x53b482
add dword [rbp + 0x44], 1
add dword [rbp + 0x48], 0x34e
mov eax, dword [rbp + 0x48]
add eax, dword [rbp + 0x44]
mov ecx, dword [rbp + 0x40]
add ecx, dword [rbp + 0x3c]
cmp eax, ecx
jge 0x53b44f
mov eax, dword [rbp + 0x38]
sub eax, 0x1b9
mov dword [rbp + 0x3c], eax
mov eax, dword [rbp + 0x3c]
sub eax, dword [rbp + 0x48]
cmp eax, dword [rbp + 0x48]
jge 0x53b466
mov eax, 0x3a4
sub eax, dword [rbp + 0x40]
mov dword [rbp + 0x48], eax
mov eax, dword [rbp + 0x44]
sub eax, dword [rbp + 0x40]
test eax, eax
jle 0x53b47c
mov eax, dword [rbp + 0x38]
imul eax, eax, 0x20f
mov dword [rbp + 0x3c], eax
cmp dword [rbp + 0x44], 1
jl 0x53b428
nop
mov eax, dword [rbp + 0x44]
add eax, dword [rbp + 0x44]
mov ecx, dword [rbp + 0x40]
add ecx, dword [rbp + 0x3c]
cmp eax, ecx
jge 0x53b4ba
lea rcx, [rbp + 0x40]
lea rdx, [rbp + 0x3c]
lea r8, [rbp + 0x38]
lea r9, [rbp + 0x48]
lea rax, [rbp + 0x48]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x44]
mov qword [rsp + 0x28], rax
call fcn.005382d0
mov eax, dword [rbp + 0x3c]
sub eax, 0x184
mov dword [rbp + 0x40], eax
mov eax, dword [rbp + 0x48]
mov dword [rbp + 0x48], eax
mov eax, dword [rbp + 0x3c]
sub eax, 0x170
mov dword [rbp + 0x40], eax
mov eax, dword [rbp + 0x48]
mov dword [rbp + 0x48], eax
mov eax, dword [rbp + 0x4c]
lea rsp, [rbp + 0x50]
pop rbp
ret