Function at 0x470b4b
Capabilities:
Check if file exists

Disassembly:
push 0xd4
mov eax, 0x6fc5fc
call fcn.00458b7c
mov eax, dword [ebp + 8]
xor ecx, ecx
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xdc], ecx
push ecx
mov dword [ebp - 4], ecx
xor eax, eax
mov dword [ebp - 0x18], ecx
lea ecx, [ebp - 0x28]
push 0x7943cc
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
call fcn.00420aa0
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 1
call fcn.0046e9e6
call fcn.0046015b
test al, al
je 0x470bba
invalid
invalid
call fcn.0045ff33
test al, al
je 0x470be2
leave
cmp byte [edi + 0x6e837f6f], cl
jp 0x470b68
jbe 0x470bd0
loope 0x470bf7
sbb al, 0xae
add edi, 0x5ac0a149
fidivr word [ebx + 0x1d9b4919]
cmp dl, byte [ecx]
mov edx, 0xf238e843
invalid
call fcn.0045fe1f
test al, al
je 0x470bfb
cli
or byte [ebp + 0x3b148687], bh
out 0xa5, al
and bl, byte [ebp + 8]
xchg edi, eax
dec esp
pop ds
inc esp
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 0x470e72
cmp dword [ebp + 0x20], 8
lea eax, [ebp + 0xc]
cmovae eax, dword [ebp + 0xc]
xor ebx, ebx
push ebx
push 0x80
push 4
push ebx
push 1
push connect
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0xc8], eax
cmp eax, 0xffffffff
jne 0x470c65
mov ecx, dword [ebp - 0xcc]
push 0x7943cc
call fcn.00420940
push ebx
push 1
lea ecx, [ebp - 0x28]
call fcn.004209e0
push ebx
jmp 0x470e8f
call fcn.0046040d
test al, al
je 0x470c8d
cmp eax, 0xa71e7fd8
pop eax
sub bl, al
push es
leave
pop ss
sal dword es:[eax - 0x65], 0x79
mov eax, dword [0xa5b9d6b]
mov ds, word [ebx + esi*2]
cld
loopne 0x470c8e
pop es
xchg byte [edi - 0xa22170d], dl
invalid
call fcn.0046026f
test al, al
je 0x470cb6
invalid
invalid
xor ebx, ebx
push ebx
push dword [ebp - 0xc8]
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0xd4], eax
inc eax
push eax
mov dword [ebp - 0xd8], eax
call fcn.00458626
mov dword [ebp - 0xd0], eax
pop ecx
test eax, eax
je 0x470c44
call fcn.0046033e
test al, al
je 0x470d0a
mov ch, 0xf9
push edx
push esp
mov esp, 0xeda4c064
or cl, al
mov eax, dword [0x275ea4a0]
add al, 0x70
aas
aad 0x8a
lahf
shl dword cs:[ecx], 0xdc
call fcn.0045ff33
test al, al
je 0x470d2b
lea edx, [ecx + 0x2d]
ficom word [edx]
invalid
cmp eax, 0x425d9060
push dword [ebp - 0xd8]
mov ebx, dword [ebp - 0xd0]
push 0
push ebx
call fcn.004ea000
add esp, 0xc
lea eax, [ebp - 0xe0]
push 0
push eax
push dword [ebp - 0xd4]
push ebx
push dword [ebp - 0xc8]
call dword [sym.imp.KERNEL32.dll_ReadFile]
call fcn.0046033e
test al, al
je 0x470d7a
cmp byte [edi + ebp*4 - 0x40], 0xa0
mov ebx, 0x724836
fcom qword [edi - 0x59415de1]
sub al, byte [esi - 0xd7c1717]
invalid
call fcn.00460002
test al, al
je 0x470da6
scasb al, byte es:[edi]
jecxz 0x470d26
push 0x2d
mov byte [ecx], dl
les ebx, [ebp + 0x72]
clc
or dword [esp + ebx], ecx
movsb byte es:[edi], byte [esi]
retf 0xfde
push dword [ebp - 0xc8]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [ebp - 0xd4]
lea ecx, [ebp - 0xc4]
push ebx
call fcn.0046f433
push ebx
call fcn.0045862f
pop ecx
call fcn.0045ff78
test al, al
je 0x470dec
mov word [edi], ss
and al, 0xcb
mov esi, 0xc5dc1b8a
mov edi, 0x36bff1dc
test eax, 0xe2898b2e
xchg esi, eax
rcr dword [esi - 0x5c], 0x85
call fcn.0046022a
test al, al
je 0x470e07
fimul dword [ebx]
jnp 0x470e15
or ch, byte ds:[ecx + 0x76f741df]
pushfd
cld
mov bh, byte [eax - 0x720b9336]
inc ebp
test al, 0x50
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0xc4]
call fcn.0046ec81
push eax
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 2
push eax
call fcn.0045f147
pop ecx
pop ecx
push 0
push 1
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 4
call fcn.00440130
call fcn.004603c8
test al, al
je 0x470e50
call dword [eax - 0x73]
inc ebp
rol dh, 0x45
cld
add dl, byte [eax - 0x18]
and esp, ebx
invalid
mov eax, 0x51978a84
jmp 0x70dc2e7a
cmp dword [ebp - 0x30], 0
jbe 0x470e66
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x28]
call fcn.00420cf0
push 0
push 1
lea ecx, [ebp - 0x40]
call fcn.004209e0
mov ecx, dword [ebp - 0xcc]
lea eax, [ebp - 0x28]
push eax
call fcn.00422b50
push 0
push 1
lea ecx, [ebp - 0x28]
call fcn.004209e0
push 0
push 1
lea ecx, [ebp + 0xc]
call fcn.004209e0
mov eax, dword [ebp - 0xcc]
call fcn.00458b37
ret