Function at 0x10007790
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10042ebb
mov eax, dword fs:[0]
push eax
sub esp, 0x16c
mov eax, dword [0x10054054]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x140], edi
mov dword [ebp - 0x160], edi
mov dword [ebp - 0x15c], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
sub esp, 0x18
mov dword [ebp - 4], 1
mov ecx, esp
mov dword [ebp - 0x13c], 0x114
push 7
push str.Hsvsrjs
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
call fcn.1001e410
mov ecx, edi
call fcn.10002890
add esp, 0x18
lea eax, [ebp - 0x13c]
mov dword [ebp - 0x15c], 1
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
test eax, eax
je 0x10007cad
mov eax, dword [ebp - 0x138]
sub eax, 5
je 0x10007b44
sub eax, 1
je 0x100079b6
sub eax, 4
je 0x10007949
sub esp, 0x18
mov ecx, esp
push 7
push str.Hsvsrjs
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
call fcn.1001e410
lea ecx, [ebp - 0x158]
call fcn.10002890
mov esi, eax
add esp, 0x18
cmp edi, esi
je 0x1000790c
mov ecx, dword [edi + 0x14]
cmp ecx, 0x10
jb 0x100078da
mov eax, dword [edi]
inc ecx
cmp ecx, 0x1000
jb 0x100078d0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100080f2
mov eax, edx
push ecx
push eax
call fcn.1002145f
add esp, 8
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
mov byte [edi], 0
movups xmm0, xmmword [esi]
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov ecx, dword [ebp - 0x144]
cmp ecx, 0x10
jb 0x10007cad
mov edx, dword [ebp - 0x158]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10007ca3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100080f2
jmp 0x10007ca3
sub esp, 0x18
mov ecx, esp
push 0xa
push str.Jtsyrjn__
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
call fcn.1001e410
lea ecx, [ebp - 0x158]
call fcn.10002890
mov esi, eax
add esp, 0x18
cmp edi, esi
je 0x1000790c
mov ecx, dword [edi + 0x14]
cmp ecx, 0x10
jb 0x100078da
mov eax, dword [edi]
inc ecx
cmp ecx, 0x1000
jb 0x100078d0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100080f2
jmp 0x100078ce
mov eax, dword [ebp - 0x134]
sub esp, 0x18
mov ecx, esp
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
cmp eax, 3
jne 0x10007a32
push 0xb
push str.Jtsyrjn_3_
call fcn.1001e410
lea ecx, [ebp - 0x158]
call fcn.10002890
mov esi, eax
add esp, 0x18
cmp edi, esi
je 0x1000790c
mov ecx, dword [edi + 0x14]
cmp ecx, 0x10
jb 0x100078da
mov eax, dword [edi]
inc ecx
cmp ecx, 0x1000
jb 0x100078d0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100080f2
jmp 0x100078ce
cmp eax, 2
jne 0x10007a8f
push 9
push str.Jtsyrjn_
call fcn.1001e410
lea ecx, [ebp - 0x158]
call fcn.10002890
mov esi, eax
add esp, 0x18
cmp edi, esi
je 0x1000790c
mov ecx, dword [edi + 0x14]
cmp ecx, 0x10
jb 0x100078da
mov eax, dword [edi]
inc ecx
cmp ecx, 0x1000
jb 0x100078d0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100080f2
jmp 0x100078ce
cmp eax, 1
jne 0x10007aec
push 9
push str.Jtsyrjn
call fcn.1001e410
lea ecx, [ebp - 0x158]
call fcn.10002890
mov esi, eax
add esp, 0x18
cmp edi, esi
je 0x1000790c
mov ecx, dword [edi + 0x14]
cmp ecx, 0x10
jb 0x100078da
mov eax, dword [edi]
inc ecx
cmp ecx, 0x1000
jb 0x100078d0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100080f2
jmp 0x100078ce
push 0xd
push str.JtsyrjnKtni
call fcn.1001e410
lea ecx, [ebp - 0x158]
call fcn.10002890
mov esi, eax
add esp, 0x18
cmp edi, esi
je 0x1000790c
mov ecx, dword [edi + 0x14]
cmp ecx, 0x10
jb 0x100078da
mov eax, dword [edi]
inc ecx
cmp ecx, 0x1000
jb 0x100078d0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100080f2
jmp 0x100078ce
mov eax, dword [ebp - 0x134]
cmp eax, 2
jne 0x10007bc0
sub esp, 0x18
mov ecx, esp
push 0x16
push str.JtsyrjnNxokxo___.O_
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
call fcn.1001e410
lea ecx, [ebp - 0x158]
call fcn.10002890
mov esi, eax
add esp, 0x18
cmp edi, esi
je 0x1000790c
mov ecx, dword [edi + 0x14]
cmp ecx, 0x10
jb 0x100078da
mov eax, dword [edi]
inc ecx
cmp ecx, 0x1000
jb 0x100078d0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100080f2
jmp 0x100078ce
cmp eax, 1
jne 0x10007c36
sub esp, 0x18
mov ecx, esp
push 0xa
push str.JtsyrjnEM
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
call fcn.1001e410
lea ecx, [ebp - 0x158]
call fcn.10002890
mov esi, eax
add esp, 0x18
cmp edi, esi
je 0x1000790c
mov ecx, dword [edi + 0x14]
cmp ecx, 0x10
jb 0x100078da
mov eax, dword [edi]
inc ecx
cmp ecx, 0x1000
jb 0x100078d0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100080f2
jmp 0x100078ce
test eax, eax
jne 0x10007cad
sub esp, 0x18
mov ecx, esp
push 0xc
push str.Jtsyrjn____
mov dword [ecx], eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], 0xf
call fcn.1001e410
lea ecx, [ebp - 0x158]
call fcn.10002890
mov esi, eax
add esp, 0x18
cmp edi, esi
je 0x1000790c
mov ecx, dword [edi + 0x14]
cmp ecx, 0x10
jb 0x100078da
mov eax, dword [edi]
inc ecx
cmp ecx, 0x1000
jb 0x100078d0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100080f2
jmp 0x100078ce
push ecx
push edx
call fcn.1002145f
add esp, 8
push ecx
call fcn.100010f0
add esp, 4
test al, al
je 0x10007d96
sub esp, 0x18
mov ecx, esp
push 0xa
push str.Jtsyrjn__
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
call fcn.1001e410
lea ecx, [ebp - 0x158]
call fcn.10002890
mov esi, eax
add esp, 0x18
cmp edi, esi
je 0x10007d5c
mov ecx, dword [edi + 0x14]
cmp ecx, 0x10
jb 0x10007d2a
mov eax, dword [edi]
inc ecx
cmp ecx, 0x1000
jb 0x10007d20
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100080f2
mov eax, edx
push ecx
push eax
call fcn.1002145f
add esp, 8
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
mov byte [edi], 0
movups xmm0, xmmword [esi]
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov ecx, dword [ebp - 0x144]
cmp ecx, 0x10
jb 0x10007d96
mov edx, dword [ebp - 0x158]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10007d8c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100080f2
push ecx
push edx
call fcn.1002145f
add esp, 8
sub esp, 0x18
mov ecx, esp
push 0x13
push str.AJtsyrjnANdnJRJ_
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
call fcn.1001e410
lea ecx, [ebp - 0x158]
call fcn.10002890
add esp, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x10007dd1
mov eax, dword [eax]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x10007de1
xor esi, esi
jmp 0x10007dea
movzx esi, al
shr esi, 4
and esi, 1
mov ecx, dword [ebp - 0x144]
cmp ecx, 0x10
jb 0x10007e24
mov edx, dword [ebp - 0x158]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10007e1a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100080f2
push ecx
push edx
call fcn.1002145f
add esp, 8
sub esp, 0x18
mov ecx, esp
push 0xc
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
cmp esi, 1
jne 0x10007f94
push 0x1004fb48
call fcn.1001e410
lea ecx, [ebp - 0x178]
call fcn.10002890
add esp, 0x18
push 4
push str._
push ecx
mov ecx, eax
mov byte [ebp - 4], 2
call fcn.1001feb0
mov dword [ebp - 0x15c], 3
movups xmm1, xmmword [eax]
movq xmm0, qword [eax + 0x10]
movups xmmword [ebp - 0x158], xmm1
mov dword [eax + 0x10], 0
movq qword [ebp - 0x148], xmm0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 3
lea edx, [ebp - 0x158]
cmp dword [ebp - 0x144], 0x10
mov esi, dword [edi + 0x10]
mov ecx, dword [ebp - 0x148]
movd eax, xmm1
cmovae edx, eax
mov dword [ebp - 0x140], eax
mov eax, dword [edi + 0x14]
sub eax, esi
cmp ecx, eax
ja 0x10007f04
cmp dword [edi + 0x14], 0x10
lea eax, [esi + ecx]
mov dword [edi + 0x10], eax
mov eax, edi
jb 0x10007ee5
mov eax, dword [edi]
push ecx
add esi, eax
push edx
push esi
call fcn.10022b30
mov eax, dword [ebp - 0x148]
add esp, 0xc
mov ecx, dword [ebp - 0x140]
mov byte [esi + eax], 0
jmp 0x10007f21
push ecx
push edx
mov byte [ebp - 0x140], 0
push dword [ebp - 0x140]
push ecx
mov ecx, edi
call fcn.1001f9d0
mov ecx, dword [ebp - 0x158]
mov eax, dword [ebp - 0x144]
cmp eax, 0x10
jb 0x10007f57
lea edx, [eax + 1]
mov eax, ecx
cmp edx, 0x1000
jb 0x10007f4d
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100080f2
push edx
push ecx
call fcn.1002145f
add esp, 8
mov ecx, dword [ebp - 0x164]
cmp ecx, 0x10
jb 0x100080d5
mov edx, dword [ebp - 0x178]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100080cb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100080cb
jmp 0x100080f2
push str.kxontrse_
call fcn.1001e410
lea ecx, [ebp - 0x178]
call fcn.10002890
add esp, 0x18
push 4
push str._
push ecx
mov ecx, eax
mov byte [ebp - 4], 4
call fcn.1001feb0
mov dword [ebp - 0x15c], 5
movups xmm1, xmmword [eax]
movq xmm0, qword [eax + 0x10]
movups xmmword [ebp - 0x158], xmm1
mov dword [eax + 0x10], 0
movq qword [ebp - 0x148], xmm0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 5
lea edx, [ebp - 0x158]
cmp dword [ebp - 0x144], 0x10
mov esi, dword [edi + 0x10]
mov ecx, dword [ebp - 0x148]
movd eax, xmm1
cmovae edx, eax
mov dword [ebp - 0x140], eax
mov eax, dword [edi + 0x14]
sub eax, esi
cmp ecx, eax
ja 0x10008050
cmp dword [edi + 0x14], 0x10
lea eax, [ecx + esi]
mov dword [edi + 0x10], eax
mov eax, edi
jb 0x10008031
mov eax, dword [edi]
push ecx
add esi, eax
push edx
push esi
call fcn.10022b30
mov eax, dword [ebp - 0x148]
add esp, 0xc
mov ecx, dword [ebp - 0x140]
mov byte [esi + eax], 0
jmp 0x1000806d
push ecx
push edx
mov byte [ebp - 0x140], 0
push dword [ebp - 0x140]
push ecx
mov ecx, edi
call fcn.1001f9d0
mov ecx, dword [ebp - 0x158]
mov eax, dword [ebp - 0x144]
cmp eax, 0x10
jb 0x1000809f
lea edx, [eax + 1]
mov eax, ecx
cmp edx, 0x1000
jb 0x10008095
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100080f2
push edx
push ecx
call fcn.1002145f
add esp, 8
mov ecx, dword [ebp - 0x164]
cmp ecx, 0x10
jb 0x100080d5
mov edx, dword [ebp - 0x178]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100080cb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100080f2
push ecx
push edx
call fcn.1002145f
add esp, 8
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10021451
mov esp, ebp
pop ebp
ret
call fcn.10029ddb
int3