Function at 0x423160
Capabilities:
Get file size

Disassembly:
mov eax, 0x7d308
call fcn.00452d40
mov eax, dword [0x47d874]
xor eax, esp
mov dword [esp + 0x7d304], eax
push ebp
push edi
mov edi, ecx
mov ecx, dword [edi + 0x4c]
lea eax, [esp + 8]
push eax
xor ebp, ebp
push ecx
mov dword [esp + 0x10], ebp
mov dword [esp + 0x48], 0xf
mov dword [esp + 0x44], ebp
mov byte [esp + 0x34], 0
call dword [sym.imp.KERNEL32.dll_GetFileSize]
cmp eax, 0xd
mov dword [esp + 8], eax
jae 0x4231da
cmp dword [esp + 0x40], 0x10
jb 0x4233c8
mov edx, dword [esp + 0x2c]
push edx
call fcn.0044e46d
add esp, 4
pop edi
pop ebp
mov ecx, dword [esp + 0x7d304]
xor ecx, esp
call fcn.0044e472
add esp, 0x7d308
ret
push esi
lea ecx, [esp + 0x48]
call fcn.00442620
lea eax, [esp + 0x10]
mov esi, 1
push eax
lea ecx, [esp + 0x4c]
mov dword [esp + 0x2fc], esi
mov dword [esp + 0x300], esi
call fcn.0043f060
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x38]
call fcn.00404662
cmp dword [esp + 0x28], 0x10
jb 0x423227
mov ecx, dword [esp + 0x14]
push ecx
call fcn.0044e46d
add esp, 4
cmp dword [esp + 0x40], ebp
jne 0x42324b
lea ecx, [esp + 0x48]
call fcn.004403e0
cmp dword [esp + 0x44], 0x10
jb 0x4233c7
mov edx, dword [esp + 0x30]
push edx
jmp 0x4233bf
xor eax, eax
push eax
push eax
push eax
mov dword [esp + 0x30c], eax
mov dword [esp + 0x310], eax
mov dword [esp + 0x314], eax
mov word [esp + 0x318], ax
mov eax, dword [edi + 0x4c]
push eax
call fcn.00430b80
mov edx, dword [edi + 0x4c]
push 0xe
lea ecx, [esp + 0x314]
push ecx
push edx
call fcn.00430c10
add esp, 0x1c
test eax, eax
jne 0x4232a3
lea ecx, [esp + 0x48]
call fcn.004403e0
cmp dword [esp + 0x44], 0x10
jmp 0x4233b8
movzx eax, byte [esp + 0x300]
sub eax, 0x46
jne 0x4232ca
movzx eax, byte [esp + 0x301]
sub eax, 0x4c
jne 0x4232ca
movzx eax, byte [esp + 0x302]
sub eax, 0x56
je 0x4232d5
test eax, eax
mov ecx, esi
jg 0x4232d7
or ecx, 0xffffffff
jmp 0x4232d7
xor ecx, ecx
test ecx, ecx
je 0x423359
mov eax, dword [esp + 0xc]
test eax, eax
jbe 0x423351
mov esi, eax
sub esi, ebp
cmp esi, 0x7d000
jb 0x4232f4
mov esi, 0x7d000
mov ecx, dword [edi + 0x4c]
push 0
sub eax, esi
sub eax, ebp
push 0
push eax
push ecx
call fcn.00430b80
mov eax, dword [edi + 0x4c]
push esi
lea edx, [esp + 0x324]
push edx
push eax
call fcn.00430c10
mov ecx, dword [esp + 0x5c]
mov edx, dword [edi + 0x4c]
sub ecx, esi
push 0
sub ecx, ebp
add ecx, dword [esp + 0x2c]
push 0
push ecx
push edx
call fcn.00430b80
mov ecx, dword [edi + 0x4c]
push esi
lea eax, [esp + 0x340]
push eax
push ecx
call fcn.00430be0
mov eax, dword [esp + 0x44]
add ebp, esi
add esp, 0x38
cmp ebp, eax
jb 0x4232e3
add eax, dword [esp + 0x40]
mov dword [esp + 0xc], eax
mov edx, dword [edi + 0x4c]
push 0
push 0
push 0
push edx
call fcn.00430b80
mov eax, dword [esp + 0x40]
mov esi, 0x10
add esp, 0x10
cmp dword [esp + 0x44], esi
jae 0x42337e
lea eax, [esp + 0x30]
mov ecx, dword [esp + 0x40]
mov edx, dword [edi + 0x4c]
push ecx
push eax
push edx
call fcn.00430be0
mov eax, dword [esp + 0x18]
mov ecx, dword [edi + 0x4c]
push 0
push 0
push eax
push ecx
call fcn.00430b80
mov edx, dword [edi + 0x4c]
push edx
call fcn.00430c50
add esp, 0x20
lea ecx, [esp + 0x48]
call fcn.004403e0
cmp dword [esp + 0x44], esi
jb 0x4233c7
mov eax, dword [esp + 0x30]
push eax
call fcn.0044e46d
add esp, 4
pop esi
mov ecx, dword [esp + 0x7d30c]
pop edi
pop ebp
xor ecx, esp
call fcn.0044e472
add esp, 0x7d308
ret