Function at 0x4557d1
Capabilities:
Check if file exists
Get file size

Disassembly:
push 0xf4
mov eax, 0x5e5063
call fcn.00470bca
mov edi, dword [ebp + 8]
xor esi, esi
mov dword [ebp - 0xf4], edi
mov dword [ebp - 0xfc], esi
push esi
xor eax, eax
mov dword [ebp - 4], esi
push 0x5e9978
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x14], 7
mov dword [ebp - 0x18], esi
mov word [ebp - 0x28], ax
call fcn.00402b90
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 1
call fcn.0047f1a5
call fcn.00453c3f
test al, al
je 0x45583c
invalid
cmp dword [ebp + 0x20], 8
lea eax, [ebp + 0xc]
cmovae eax, dword [ebp + 0xc]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x455ac7
cmp dword [ebp + 0x20], 8
lea eax, [ebp + 0xc]
push esi
cmovae eax, dword [ebp + 0xc]
push 0x80
push 4
push esi
push 1
push SysReAllocString
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov ebx, eax
mov dword [ebp - 0xe8], ebx
cmp ebx, 0xffffffff
jne 0x455896
push 0x5e9978
mov ecx, edi
call fcn.00404170
jmp 0x455ad2
call fcn.0045360c
test al, al
je 0x4558b7
cwde
adc ax, 0x318
mov esi, 0x7be46db8
jg 0x4558f5
dec edi
aaa
cmpsd dword [esi], dword es:[edi]
adc cl, byte [ebx - 0xf343]
push dword [ebx]
not byte [esi + 0x53]
push esi
push ebx
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0xec], eax
inc eax
push eax
mov dword [ebp - 0xf8], eax
call fcn.0047071d
mov dword [ebp - 0xf0], eax
pop ecx
test eax, eax
je 0x455885
call fcn.00453aa1
test al, al
je 0x455903
xor al, 0xa2
mov cl, 0x31
or cl, dh
test byte [eax + 0x6f8101eb], ch
pushal
sub dword [ecx + 0x5c], esp
sub dword [ecx + 0x5c], esp
sub ch, byte [eax - 0x353198c0]
mov ebx, 0xe8f7e1de
lodsd eax, dword [esi]
loop 0x455906
call fcn.00453bb5
test al, al
je 0x45592a
invalid
inc dword [eax + eax*8 - 0x574fe18c]
mov al, 0xa8
pop edx
sub dword [edi], ebx
popal
pop eax
and dh, ah
dec eax
add ebp, dword [esi + 0x49]
nop
loopne 0x45591d
cmp byte [edi + 0x23b8de51], dh
insb byte es:[edi], dx
enter 0xffffffffffffc45c, 0xfffffffffffffffa
sar bh, 1
mov ch, 8
invalid
push dword [ebp - 0xf8]
mov esi, dword [ebp - 0xf0]
push 0
push esi
call fcn.00483520
add esp, 0xc
lea eax, [ebp - 0x100]
push 0
push eax
push dword [ebp - 0xec]
push esi
push dword [ebp - 0xe8]
call dword [sym.imp.KERNEL32.dll_ReadFile]
call fcn.00453a17
test al, al
je 0x45597d
inc dword [eax + eax*8 - 0x7eb1e88c]
mov bh, 0x61
arpl word [edi + 0x554eb11b], si
ljmp 0x705e
dec esi
xor dword [edi + 0x1bb76361], 0xea554eb1
sbb dword [edi + 0x705eea64], edx
fild word [ecx]
mov ch, 0xd2
aaa
sbb eax, ebp
sub dh, bl
invalid
call fcn.004537aa
test al, al
je 0x45599e
inc edx
das
int3
adc byte [edi - 0x6f491a88], ah
inc ebx
je 0x455961
int1
mov al, 0x7d
shr al, 0x91
fdivp st(7)
inc dword [eax + eax*8 - 0x473fe78c]
sbb byte [ebp - 0x6e], bh
scasb al, byte es:[edi]
jae 0x4559c5
call fcn.00453834
test al, al
je 0x4559bf
sar byte [eax - 0x516d82e8], 0x73
push ss
ret 0xe416
push dword [ebp - 0xe8]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [ebp - 0xec]
mov ebx, dword [ebp - 0xf0]
lea ecx, [ebp - 0xe4]
push ebx
call fcn.0047fb73
push ebx
call fcn.00470726
pop ecx
call fcn.004539d2
test al, al
je 0x455a05
inc esi
js 0x455a6a
fucompi st(2)
out 0xe4, al
push edi
pop esi
arpl word [eax], bx
jg 0x455a3f
jae 0x455991
invalid
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0xe4]
call fcn.0047f3be
push eax
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 2
push eax
call fcn.0045dd82
pop ecx
pop ecx
push 0
push 1
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 4
call fcn.0040c8c0
call fcn.0045398d
test al, al
je 0x455a51
dec eax
cmp ebx, dword [ebx - 0xe9d3f96]
stosb byte es:[edi], al
inc edx
dec edi
invalid
wait
push 0xffffffffffffffc0
invalid
call fcn.004537aa
test al, al
je 0x455a78
inc edx
push edi
push cs
sti
pop es
push cs
and edx, dword [edi]
xchg esp, eax
feni8087_nop
cld
and dword [esi + 0x3c193333], eax
fcomp qword [eax + 0x2d]
mov cl, 0xbe
sub ebp, dword [ebp + 0x10]
loop 0x455ab3
sbb dword [esp + ebx*8], edi
pop eax
sub eax, 0x6d2bbeb1
adc dl, ah
cmp eax, 0xfce8505f
invalid
pop edi
push eax
call fcn.00453879
test al, al
je 0x455aa0
cld
inc eax
pop es
sub al, byte [ebx + 0x71]
inc esp
sbb dword [ebx], ebp
mov esi, dword [ecx - 0x15685c58]
pushal
sub bh, bl
invalid
xor esi, esi
cmp dword [ebp - 0x30], esi
jbe 0x455ab6
push 0xffffffffffffffff
push esi
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x28]
call fcn.00402a70
iretd
push esi
push 1
lea ecx, [ebp - 0x40]
call fcn.0041ed70
mov edi, dword [ebp - 0xf4]
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.00452f5f
push esi
push 1
lea ecx, [ebp - 0x28]
call fcn.0041ed70
push esi
push 1
lea ecx, [ebp + 0xc]
call fcn.0041ed70
mov eax, edi
call fcn.00470b74
ret