Function at 0x10008570
Capabilities:
Get file size

Disassembly:
mov eax, 0x10064a57
call fcn.100641f8
sub esp, 0x40
push ebx
push esi
push edi
mov dword [ebp - 0x18], 0x2407
cmp dword [ebp - 0x18], 0xb21
push 0x10
pop ebx
jge 0x100086f8
lea eax, [ebp - 0x14]
mov ecx, 0x10081cb0
push eax
call fcn.1000cdb4
mov esi, dword [ebp - 0x14]
test esi, esi
je 0x100086f4
xor edi, edi
inc edi
xor eax, eax
mov dword [ebp - 0x1c], 0xf
dec esi
mov dword [ebp - 0x20], eax
mov byte [ebp - 0x30], al
lea edx, [ebp - 0x30]
mov dword [ebp - 4], eax
mov ecx, 0x10081cb0
call fcn.100108f2
cmp dword [ebp - 0x20], 3
jne 0x100086ca
mov ecx, dword [ebp - 0x1c]
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 0x30]
cmp ecx, ebx
cmovae eax, edx
cmp byte [eax], 0x6f
jne 0x10008604
cmp ecx, ebx
lea eax, [ebp - 0x30]
cmovae eax, edx
cmp byte [eax + 1], 0x6e
jne 0x10008604
push edi
jmp 0x100086cc
cmp ecx, ebx
lea eax, [ebp - 0x30]
cmovae eax, edx
cmp byte [eax + 1], 0x6e
jne 0x10008620
cmp ecx, ebx
lea eax, [ebp - 0x30]
cmovae eax, edx
cmp byte [eax + 2], 0x65
je 0x100085fe
cmp ecx, ebx
lea eax, [ebp - 0x30]
cmovae eax, edx
cmp byte [eax], 0x6f
jne 0x1000863b
cmp ecx, ebx
lea eax, [ebp - 0x30]
cmovae eax, edx
cmp byte [eax + 2], 0x65
je 0x100085fe
cmp ecx, ebx
lea eax, [ebp - 0x30]
cmovae eax, edx
cmp byte [eax], 0x6f
jne 0x10008664
cmp ecx, ebx
lea eax, [ebp - 0x30]
cmovae eax, edx
cmp byte [eax + 1], 0x77
jne 0x100085fe
cmp ecx, ebx
lea eax, [ebp - 0x30]
cmovae eax, edx
cmp byte [eax + 2], 0x6f
jne 0x100085fe
cmp ecx, ebx
lea eax, [ebp - 0x30]
cmovae eax, edx
cmp byte [eax + 1], 0x6e
jne 0x10008695
cmp ecx, ebx
lea eax, [ebp - 0x30]
cmovae eax, edx
cmp byte [eax], 0x74
jne 0x100085fe
cmp ecx, ebx
lea eax, [ebp - 0x30]
cmovae eax, edx
cmp byte [eax + 2], 0x6f
jne 0x100085fe
cmp ecx, ebx
lea eax, [ebp - 0x30]
cmovae eax, edx
cmp byte [eax + 2], 0x65
jne 0x100086c6
cmp ecx, ebx
lea eax, [ebp - 0x30]
cmovae eax, edx
cmp byte [eax], 0x74
jne 0x100085fe
cmp ecx, ebx
lea eax, [ebp - 0x30]
cmovae eax, edx
cmp byte [eax + 1], 0x77
jne 0x100085fe
push 2
jmp 0x100086cc
push 3
mov ecx, 0x10081de8
call fcn.1000cf00
push eax
call fcn.10010188
or dword [ebp - 4], 0xffffffff
pop ecx
push 0
push edi
lea ecx, [ebp - 0x30]
call fcn.1000205a
test esi, esi
jne 0x100085b3
dec esi
mov dword [ebp - 0x14], esi
cmp byte [ebp + 0x10], 0
je 0x1000871a
mov eax, dword [ebp + 8]
cmp byte [eax], 0
je 0x100087a5
push ecx
push ecx
mov cl, 1
call fcn.10004d54
pop ecx
pop ecx
jmp 0x100087a5
mov dword [ebp - 0x18], 0x59d8
cmp dword [ebp - 0x18], 0x5d27
jle 0x10008774
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetFileSize]
xor esi, esi
xor edi, edi
lea eax, [edi + esi]
cdq
lea ecx, [ebp - 0x48]
push edx
push eax
call fcn.10001a6a
pop ecx
pop ecx
cmp dword [eax + 0x14], ebx
jb 0x1000874f
mov eax, dword [eax]
push eax
call fcn.1004c39e
pop ecx
push 0
push 1
lea ecx, [ebp - 0x48]
call fcn.1000205a
inc edi
cmp edi, 0x4dde
jl 0x10008738
inc esi
cmp esi, 0x650f
jl 0x10008736
cmp dword [ebp - 0x18], 0x5634
jge 0x10008788
push str.kgycbv_ljgctc_wxssuu_ypi_gbppgtkb_mfpjm_hleupgf
call fcn.1004c39e
pop ecx
mov eax, dword [ebp + 0xc]
or dword [ebp - 4], 0xffffffff
cmp byte [eax], 0
je 0x100087a5
push 1
push ecx
push ecx
mov ecx, 0x6e50
call fcn.10004b85
add esp, 0xc
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret