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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x6f4
push ebx
push esi
push edi
lea edi, [ebp - 0x6f4]
mov ecx, 0x1bd
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
mov eax, dword [0x4a108c]
xor eax, ebp
mov dword [ebp - 4], eax
mov byte [ebp - 0x10c], 0
push 0x103
push 0
lea eax, [ebp - 0x10b]
push eax
call fcn.0042f528
add esp, 0xc
mov esi, esp
lea eax, [ebp - 0x10c]
push eax
push 0
push 0
push 0x1a
push 0
call dword [0x4a27d8]
cmp esi, esp
call fcn.0042fd57
mov esi, esp
mov eax, dword [0x4a273c]
push eax
lea ecx, [ebp - 0x10c]
push ecx
call dword [0x4a27e0]
cmp esi, esp
call fcn.0042fd57
mov byte [ebp - 0x218], 0
push 0x103
push 0
lea eax, [ebp - 0x217]
push eax
call fcn.0042f528
add esp, 0xc
mov esi, esp
lea eax, [ebp - 0x10c]
push eax
lea ecx, [ebp - 0x218]
push ecx
call dword [0x4a27dc]
cmp esi, esp
call fcn.0042fd57
mov esi, esp
mov eax, dword [0x4a2724]
push eax
lea ecx, [ebp - 0x218]
push ecx
call dword [0x4a27e0]
cmp esi, esp
call fcn.0042fd57
mov esi, esp
push 0
push 0x80
push 3
push 0
push 3
push 1
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
cmp esi, esp
call fcn.0042fd57
mov dword [ebp - 0x224], eax
cmp dword [ebp - 0x224], 0xffffffff
jne 0x437cde
jmp 0x438078
mov esi, esp
push 0
mov eax, dword [ebp - 0x224]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileSize]
cmp esi, esp
call fcn.0042fd57
mov dword [ebp - 0x230], eax
mov eax, dword [ebp - 0x230]
add eax, 1
push eax
call fcn.0042f5fa
add esp, 4
mov dword [ebp - 0x248], eax
mov esi, esp
push 0
lea eax, [ebp - 0x23c]
push eax
mov ecx, dword [ebp - 0x230]
push ecx
mov edx, dword [ebp - 0x248]
push edx
mov eax, dword [ebp - 0x224]
push eax
call dword [sym.imp.KERNEL32.dll_ReadFile]
cmp esi, esp
call fcn.0042fd57
mov eax, dword [ebp - 0x248]
add eax, dword [ebp - 0x230]
mov byte [eax], 0
mov esi, esp
mov eax, dword [0x4a2740]
push eax
mov ecx, dword [ebp - 0x248]
push ecx
call dword [0x4a2808]
cmp esi, esp
call fcn.0042fd57
mov dword [ebp - 0x254], eax
cmp dword [ebp - 0x254], 0
jne 0x437d85
jmp 0x438049
mov eax, dword [ebp - 0x254]
add eax, 0xb
mov dword [ebp - 0x254], eax
mov eax, dword [ebp - 0x254]
movsx ecx, byte [eax]
cmp ecx, 0x31
jne 0x437dae
mov dword [ebp - 0x6f4], 1
jmp 0x437db8
mov dword [ebp - 0x6f4], 0
mov edx, dword [ebp - 0x6f4]
mov dword [ebp - 0x260], edx
mov esi, esp
mov eax, dword [0x4a2744]
push eax
mov ecx, dword [ebp - 0x248]
push ecx
call dword [0x4a2808]
cmp esi, esp
call fcn.0042fd57
mov dword [ebp - 0x26c], eax
cmp dword [ebp - 0x26c], 0
jne 0x437df9
jmp 0x438049
mov esi, esp
push 0x490448
mov eax, dword [ebp - 0x26c]
push eax
call dword [0x4a2808]
cmp esi, esp
call fcn.0042fd57
mov dword [ebp - 0x278], eax
cmp dword [ebp - 0x278], 0
jne 0x437e2d
jmp 0x438049
mov eax, dword [ebp - 0x278]
mov byte [eax], 0
mov eax, dword [ebp - 0x26c]
add eax, 5
mov dword [ebp - 0x26c], eax
mov byte [ebp - 0x384], 0
push 0x103
push 0
lea eax, [ebp - 0x383]
push eax
call fcn.0042f528
add esp, 0xc
cmp dword [ebp - 0x260], 0
je 0x437e88
mov esi, esp
lea eax, [ebp - 0x10c]
push eax
lea ecx, [ebp - 0x384]
push ecx
call dword [0x4a27dc]
cmp esi, esp
call fcn.0042fd57
mov esi, esp
mov eax, dword [ebp - 0x26c]
push eax
lea ecx, [ebp - 0x384]
push ecx
call dword [0x4a27e0]
cmp esi, esp
call fcn.0042fd57
lea eax, [ebp - 0x3b0]
push eax
call fcn.0042f988
add esp, 4
mov esi, esp
lea eax, [ebp - 0x10c]
push eax
lea ecx, [ebp - 0x4bc]
push ecx
call dword [0x4a27dc]
cmp esi, esp
call fcn.0042fd57
mov esi, esp
lea eax, [ebp - 0x3b0]
push eax
lea ecx, [ebp - 0x4bc]
push ecx
call dword [0x4a27e0]
cmp esi, esp
call fcn.0042fd57
lea eax, [ebp - 0x4bc]
push eax
lea ecx, [ebp - 0x384]
push ecx
call fcn.004300e5
add esp, 8
mov byte [ebp - 0x5c8], 0
push 0x103
push 0
lea eax, [ebp - 0x5c7]
push eax
call fcn.0042f528
add esp, 0xc
mov esi, esp
mov eax, dword [0x4a2730]
push eax
lea ecx, [ebp - 0x5c8]
push ecx
call dword [0x4a27dc]
cmp esi, esp
call fcn.0042fd57
mov esi, esp
mov eax, dword [0x4a25fc]
push eax
lea ecx, [ebp - 0x5c8]
push ecx
call dword [0x4a27e0]
cmp esi, esp
call fcn.0042fd57
mov esi, esp
mov eax, dword [0x4a2748]
push eax
lea ecx, [ebp - 0x5c8]
push ecx
call dword [0x4a27e0]
cmp esi, esp
call fcn.0042fd57
mov esi, esp
push 0x490444
lea eax, [ebp - 0x5c8]
push eax
call dword [0x4a27e0]
cmp esi, esp
call fcn.0042fd57
mov esi, esp
lea eax, [ebp - 0x4bc]
push eax
lea ecx, [ebp - 0x5c8]
push ecx
call dword [0x4a27e0]
cmp esi, esp
call fcn.0042fd57
mov esi, esp
push 0x490444
lea eax, [ebp - 0x5c8]
push eax
call dword [0x4a27e0]
cmp esi, esp
call fcn.0042fd57
mov dword [ebp - 0x614], 0
push 0x40
push 0
lea eax, [ebp - 0x610]
push eax
call fcn.0042f528
add esp, 0xc
mov dword [ebp - 0x614], 0x44
mov dword [ebp - 0x60c], 0x4a30a0
mov dword [ebp - 0x62c], 0
xor eax, eax
mov dword [ebp - 0x628], eax
mov dword [ebp - 0x624], eax
mov dword [ebp - 0x620], eax
mov esi, esp
lea eax, [ebp - 0x62c]
push eax
lea ecx, [ebp - 0x614]
push ecx
push 0
push 0
push 0
push 0
push 0
push 0
lea edx, [ebp - 0x5c8]
push edx
push 0
call dword [0x4a2850]
cmp esi, esp
call fcn.0042fd57
mov esi, esp
mov eax, dword [ebp - 0x224]
push eax
call dword [0x4a2784]
cmp esi, esp
call fcn.0042fd57
mov esi, esp
mov eax, dword [ebp - 0x248]
push eax
call dword [0x4a27a4]
add esp, 4
cmp esi, esp
call fcn.0042fd57
push edx
mov ecx, ebp
push eax
lea edx, [0x4380a8]
call fcn.0042f5af
pop eax
pop edx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0042f1b3
add esp, 0x6f4
cmp ebp, esp
call fcn.0042fd57
mov esp, ebp
pop ebp
ret