Function at 0x100acad0
Capabilities:
Check if file exists
Copy file
Get common file path
Get file attributes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4cc
mov eax, dword [0x10100008]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
sub esp, 0x18
mov ecx, esp
call fcn.10084710
lea ecx, [ebp - 0x450]
call fcn.10084a40
mov ecx, esp
push 0x10101ed8
call fcn.100b2700
lea ecx, [ebp - 0x4c8]
call fcn.10084620
add esp, 0x18
lea ecx, [ebp - 0x450]
cmp dword [ebp - 0x43c], 0x10
cmovae ecx, dword [ebp - 0x450]
push dword [ebp - 0x440]
push ecx
push ecx
mov ecx, eax
call fcn.100b7550
sub esp, 0x18
mov ecx, esp
movups xmm0, xmmword [eax]
push 0x10101fb0
movups xmmword [ebp - 0x480], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x470], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
call fcn.100b2700
lea ecx, [ebp - 0x498]
call fcn.10084620
add esp, 0x18
lea edx, [ebp - 0x480]
lea ecx, [ebp - 0x420]
push eax
lea eax, [ebp + 0x20]
push eax
call fcn.100b3430
add esp, 4
lea ecx, [ebp - 0x468]
mov edx, eax
call fcn.100b3330
mov edx, dword [ebp - 0x40c]
add esp, 4
cmp edx, 0x10
jb 0x100acbe0
mov ecx, dword [ebp - 0x420]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100acbd6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae03f
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x46c]
mov dword [ebp - 0x410], 0
mov dword [ebp - 0x40c], 0xf
mov byte [ebp - 0x420], 0
cmp edx, 0x10
jb 0x100acc35
mov ecx, dword [ebp - 0x480]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100acc2b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae03f
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x4b4]
mov dword [ebp - 0x470], 0
mov dword [ebp - 0x46c], 0xf
mov byte [ebp - 0x480], 0
cmp edx, 0x10
jb 0x100acc8a
mov ecx, dword [ebp - 0x4c8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100acc80
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae03f
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x484]
mov dword [ebp - 0x4b8], 0
mov dword [ebp - 0x4b4], 0xf
mov byte [ebp - 0x4c8], 0
cmp edx, 0x10
jb 0x100accdf
mov ecx, dword [ebp - 0x498]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100accd5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae03f
push edx
push ecx
call fcn.100becc4
add esp, 8
mov esi, dword [sym.imp.KERNEL32.dll_GetTempPathA]
lea eax, [ebp - 0x408]
push eax
push 0x104
call esi
lea ecx, [ebp - 0x408]
mov dword [ebp - 0x470], 0
mov dword [ebp - 0x46c], 0xf
lea edx, [ecx + 1]
mov byte [ebp - 0x480], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100acd17
sub ecx, edx
lea eax, [ebp - 0x408]
push ecx
push eax
lea ecx, [ebp - 0x480]
call fcn.100b2e90
lea eax, [ebp - 0x468]
push eax
lea eax, [ebp - 0x450]
push eax
lea edx, [ebp - 0x480]
lea ecx, [ebp - 0x4c8]
call fcn.100b3430
add esp, 4
lea ecx, [ebp - 0x438]
mov edx, eax
call fcn.100b3430
mov edx, dword [ebp - 0x4b4]
add esp, 4
cmp edx, 0x10
jb 0x100acd9f
mov ecx, dword [ebp - 0x4c8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100acd95
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae044
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x46c]
mov dword [ebp - 0x4b8], 0
mov dword [ebp - 0x4b4], 0xf
mov byte [ebp - 0x4c8], 0
cmp edx, 0x10
jb 0x100acdf4
mov ecx, dword [ebp - 0x480]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100acdea
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae044
push edx
push ecx
call fcn.100becc4
add esp, 8
cmp dword [ebp + 0x1c], 0x10
lea eax, [ebp + 8]
mov edi, dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmovae eax, dword [ebp + 8]
push eax
call edi
cmp eax, 0xffffffff
je 0x100adea9
test al, 0x10
je 0x100adea9
lea eax, [ebp - 0x408]
push eax
push 0x104
call esi
lea ecx, [ebp - 0x408]
mov dword [ebp - 0x410], 0
mov dword [ebp - 0x40c], 0xf
lea edx, [ecx + 1]
mov byte [ebp - 0x420], 0
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100ace50
sub ecx, edx
lea eax, [ebp - 0x408]
push ecx
push eax
lea ecx, [ebp - 0x420]
call fcn.100b2e90
sub esp, 0x18
mov ecx, esp
push 0x101018f0
call fcn.100b2700
lea ecx, [ebp - 0x498]
call fcn.10084620
cmp dword [ebp - 0x40c], 0x10
lea ecx, [ebp - 0x420]
mov esi, esp
cmovae ecx, dword [ebp - 0x420]
push dword [ebp - 0x410]
push ecx
push ecx
mov ecx, eax
call fcn.100b7550
mov dword [esi + 0x10], 0
sub esp, 0x18
mov dword [esi + 0x14], 0
mov ecx, esp
movups xmm0, xmmword [eax]
movups xmmword [esi], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esi + 0x10], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp + 8]
push eax
call fcn.100b2700
call fcn.10086c70
mov edx, dword [ebp - 0x484]
add esp, 0x30
cmp edx, 0x10
jb 0x100acf2a
mov ecx, dword [ebp - 0x498]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100acf20
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae049
push edx
push ecx
call fcn.100becc4
add esp, 8
sub esp, 0x18
mov ecx, esp
push 0x101018f0
call fcn.100b2700
lea ecx, [ebp - 0x498]
call fcn.10084620
add esp, 0x18
lea ecx, [ebp - 0x420]
cmp dword [ebp - 0x40c], 0x10
cmovae ecx, dword [ebp - 0x420]
push dword [ebp - 0x410]
push ecx
push ecx
mov ecx, eax
call fcn.100b7550
sub esp, 0x18
mov ecx, esp
movups xmm0, xmmword [eax]
push 0x10101f98
movups xmmword [ebp - 0x480], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x470], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
call fcn.100b2700
lea ecx, [ebp - 0x4b0]
call fcn.10084620
push eax
lea edx, [ebp - 0x480]
lea ecx, [ebp - 0x4c8]
call fcn.100b3330
add esp, 0x1c
cmp dword [eax + 0x14], 0x10
jb 0x100acfc9
mov eax, dword [eax]
push eax
call edi
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x100acfd7
xor bl, bl
jmp 0x100acfdd
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x4b4]
cmp edx, 0x10
jb 0x100ad017
mov ecx, dword [ebp - 0x4c8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ad00d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae04e
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x46c]
mov dword [ebp - 0x4b8], 0
mov dword [ebp - 0x4b4], 0xf
mov byte [ebp - 0x4c8], 0
cmp edx, 0x10
jb 0x100ad06c
mov ecx, dword [ebp - 0x480]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ad062
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae04e
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x484]
mov dword [ebp - 0x470], 0
mov dword [ebp - 0x46c], 0xf
mov byte [ebp - 0x480], 0
cmp edx, 0x10
jb 0x100ad0c1
mov ecx, dword [ebp - 0x498]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ad0b7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae04e
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x49c]
mov dword [ebp - 0x488], 0
mov dword [ebp - 0x484], 0xf
mov byte [ebp - 0x498], 0
cmp edx, 0x10
jb 0x100ad116
mov ecx, dword [ebp - 0x4b0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ad10c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae04e
push edx
push ecx
call fcn.100becc4
add esp, 8
test bl, bl
je 0x100ad2a2
sub esp, 0x18
mov ecx, esp
push 0x101018f0
call fcn.100b2700
lea ecx, [ebp - 0x498]
call fcn.10084620
add esp, 0x18
lea ecx, [ebp - 0x420]
cmp dword [ebp - 0x40c], 0x10
cmovae ecx, dword [ebp - 0x420]
push dword [ebp - 0x410]
push ecx
push ecx
mov ecx, eax
call fcn.100b7550
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
movups xmm0, xmmword [eax]
push 0x10101f98
movups xmmword [ebp - 0x480], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x470], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
call fcn.100b2700
lea ecx, [ebp - 0x4b0]
call fcn.10084620
push eax
lea edx, [ebp - 0x480]
mov ecx, esi
call fcn.100b3330
add esp, 0x1c
call fcn.10086dd0
mov edx, dword [ebp - 0x46c]
add esp, 0x18
cmp edx, 0x10
jb 0x100ad1f8
mov ecx, dword [ebp - 0x480]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ad1ee
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae053
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x484]
mov dword [ebp - 0x470], 0
mov dword [ebp - 0x46c], 0xf
mov byte [ebp - 0x480], 0
cmp edx, 0x10
jb 0x100ad24d
mov ecx, dword [ebp - 0x498]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ad243
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae053
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x49c]
mov dword [ebp - 0x488], 0
mov dword [ebp - 0x484], 0xf
mov byte [ebp - 0x498], 0
cmp edx, 0x10
jb 0x100ad2a2
mov ecx, dword [ebp - 0x4b0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ad298
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae053
push edx
push ecx
call fcn.100becc4
add esp, 8
sub esp, 0x18
mov ecx, esp
push 0x101018f0
call fcn.100b2700
lea ecx, [ebp - 0x4c8]
call fcn.10084620
add esp, 0x18
lea ecx, [ebp - 0x420]
cmp dword [ebp - 0x40c], 0x10
cmovae ecx, dword [ebp - 0x420]
push dword [ebp - 0x410]
push ecx
push ecx
mov ecx, eax
call fcn.100b7550
sub esp, 0x18
mov ecx, esp
movups xmm0, xmmword [eax]
push 0x10101c98
movups xmmword [ebp - 0x480], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x470], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
call fcn.100b2700
lea ecx, [ebp - 0x4b0]
call fcn.10084620
push eax
lea edx, [ebp - 0x480]
lea ecx, [ebp - 0x498]
call fcn.100b3330
add esp, 0x1c
cmp dword [eax + 0x14], 0x10
jb 0x100ad341
mov eax, dword [eax]
push eax
call edi
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x100ad34f
xor bl, bl
jmp 0x100ad355
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x484]
cmp edx, 0x10
jb 0x100ad38f
mov ecx, dword [ebp - 0x498]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ad385
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae058
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x46c]
mov dword [ebp - 0x488], 0
mov dword [ebp - 0x484], 0xf
mov byte [ebp - 0x498], 0
cmp edx, 0x10
jb 0x100ad3e4
mov ecx, dword [ebp - 0x480]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ad3da
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae058
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x4b4]
mov dword [ebp - 0x470], 0
mov dword [ebp - 0x46c], 0xf
mov byte [ebp - 0x480], 0
cmp edx, 0x10
jb 0x100ad439
mov ecx, dword [ebp - 0x4c8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ad42f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae058
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x49c]
mov dword [ebp - 0x4b8], 0
mov dword [ebp - 0x4b4], 0xf
mov byte [ebp - 0x4c8], 0
cmp edx, 0x10
jb 0x100ad48e
mov ecx, dword [ebp - 0x4b0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ad484
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae058
push edx
push ecx
call fcn.100becc4
add esp, 8
test bl, bl
je 0x100ad61a
sub esp, 0x18
mov ecx, esp
push 0x101018f0
call fcn.100b2700
lea ecx, [ebp - 0x498]
call fcn.10084620
add esp, 0x18
lea ecx, [ebp - 0x420]
cmp dword [ebp - 0x40c], 0x10
cmovae ecx, dword [ebp - 0x420]
push dword [ebp - 0x410]
push ecx
push ecx
mov ecx, eax
call fcn.100b7550
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
movups xmm0, xmmword [eax]
push 0x10101c98
movups xmmword [ebp - 0x480], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x470], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
call fcn.100b2700
lea ecx, [ebp - 0x4b0]
call fcn.10084620
push eax
lea edx, [ebp - 0x480]
mov ecx, esi
call fcn.100b3330
add esp, 0x1c
call fcn.10086dd0
mov edx, dword [ebp - 0x46c]
add esp, 0x18
cmp edx, 0x10
jb 0x100ad570
mov ecx, dword [ebp - 0x480]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ad566
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae05d
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x484]
mov dword [ebp - 0x470], 0
mov dword [ebp - 0x46c], 0xf
mov byte [ebp - 0x480], 0
cmp edx, 0x10
jb 0x100ad5c5
mov ecx, dword [ebp - 0x498]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ad5bb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae05d
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x49c]
mov dword [ebp - 0x488], 0
mov dword [ebp - 0x484], 0xf
mov byte [ebp - 0x498], 0
cmp edx, 0x10
jb 0x100ad61a
mov ecx, dword [ebp - 0x4b0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ad610
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae05d
push edx
push ecx
call fcn.100becc4
add esp, 8
sub esp, 0x18
mov ecx, esp
push 0x101018f0
call fcn.100b2700
lea ecx, [ebp - 0x4c8]
call fcn.10084620
add esp, 0x18
lea ecx, [ebp - 0x420]
cmp dword [ebp - 0x40c], 0x10
cmovae ecx, dword [ebp - 0x420]
push dword [ebp - 0x410]
push ecx
push ecx
mov ecx, eax
call fcn.100b7550
sub esp, 0x18
mov ecx, esp
movups xmm0, xmmword [eax]
push 0x101020b8
movups xmmword [ebp - 0x480], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x470], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
call fcn.100b2700
lea ecx, [ebp - 0x4b0]
call fcn.10084620
push eax
lea edx, [ebp - 0x480]
lea ecx, [ebp - 0x498]
call fcn.100b3330
add esp, 0x1c
cmp dword [eax + 0x14], 0x10
jb 0x100ad6b9
mov eax, dword [eax]
push eax
call edi
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x100ad6c7
xor bl, bl
jmp 0x100ad6cd
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x484]
cmp edx, 0x10
jb 0x100ad707
mov ecx, dword [ebp - 0x498]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ad6fd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae062
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x46c]
mov dword [ebp - 0x488], 0
mov dword [ebp - 0x484], 0xf
mov byte [ebp - 0x498], 0
cmp edx, 0x10
jb 0x100ad75c
mov ecx, dword [ebp - 0x480]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ad752
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae062
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x4b4]
mov dword [ebp - 0x470], 0
mov dword [ebp - 0x46c], 0xf
mov byte [ebp - 0x480], 0
cmp edx, 0x10
jb 0x100ad7b1
mov ecx, dword [ebp - 0x4c8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ad7a7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae062
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x49c]
mov dword [ebp - 0x4b8], 0
mov dword [ebp - 0x4b4], 0xf
mov byte [ebp - 0x4c8], 0
cmp edx, 0x10
jb 0x100ad806
mov ecx, dword [ebp - 0x4b0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ad7fc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae062
push edx
push ecx
call fcn.100becc4
add esp, 8
test bl, bl
je 0x100ad992
sub esp, 0x18
mov ecx, esp
push 0x101018f0
call fcn.100b2700
lea ecx, [ebp - 0x498]
call fcn.10084620
add esp, 0x18
lea ecx, [ebp - 0x420]
cmp dword [ebp - 0x40c], 0x10
cmovae ecx, dword [ebp - 0x420]
push dword [ebp - 0x410]
push ecx
push ecx
mov ecx, eax
call fcn.100b7550
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
movups xmm0, xmmword [eax]
push 0x101020b8
movups xmmword [ebp - 0x480], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x470], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
call fcn.100b2700
lea ecx, [ebp - 0x4b0]
call fcn.10084620
push eax
lea edx, [ebp - 0x480]
mov ecx, esi
call fcn.100b3330
add esp, 0x1c
call fcn.10086dd0
mov edx, dword [ebp - 0x46c]
add esp, 0x18
cmp edx, 0x10
jb 0x100ad8e8
mov ecx, dword [ebp - 0x480]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ad8de
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae067
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x484]
mov dword [ebp - 0x470], 0
mov dword [ebp - 0x46c], 0xf
mov byte [ebp - 0x480], 0
cmp edx, 0x10
jb 0x100ad93d
mov ecx, dword [ebp - 0x498]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ad933
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae067
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x49c]
mov dword [ebp - 0x488], 0
mov dword [ebp - 0x484], 0xf
mov byte [ebp - 0x498], 0
cmp edx, 0x10
jb 0x100ad992
mov ecx, dword [ebp - 0x4b0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ad988
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae067
push edx
push ecx
call fcn.100becc4
add esp, 8
sub esp, 0x18
mov ecx, esp
push 0x101018f0
call fcn.100b2700
lea ecx, [ebp - 0x4b0]
call fcn.10084620
add esp, 0x18
lea ecx, [ebp - 0x420]
cmp dword [ebp - 0x40c], 0x10
cmovae ecx, dword [ebp - 0x420]
push dword [ebp - 0x410]
push ecx
push ecx
mov ecx, eax
call fcn.100b7550
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x480], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x470], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x480]
cmp dword [ebp - 0x46c], 0x10
cmovae eax, dword [ebp - 0x480]
push eax
call edi
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x100ada1c
xor bl, bl
jmp 0x100ada22
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x46c]
cmp edx, 0x10
jb 0x100ada5c
mov ecx, dword [ebp - 0x480]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ada52
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae06c
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x49c]
mov dword [ebp - 0x470], 0
mov dword [ebp - 0x46c], 0xf
mov byte [ebp - 0x480], 0
cmp edx, 0x10
jb 0x100adab1
mov ecx, dword [ebp - 0x4b0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100adaa7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae06c
push edx
push ecx
call fcn.100becc4
add esp, 8
test bl, bl
je 0x100adcda
sub esp, 0x18
mov ecx, esp
push 0x101018f0
call fcn.100b2700
lea ecx, [ebp - 0x4b0]
call fcn.10084620
cmp dword [ebp - 0x40c], 0x10
lea ecx, [ebp - 0x420]
mov esi, esp
cmovae ecx, dword [ebp - 0x420]
push dword [ebp - 0x410]
push ecx
push ecx
mov ecx, eax
call fcn.100b7550
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
movups xmm0, xmmword [eax]
movups xmmword [esi], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esi + 0x10], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
call fcn.100ac3b0
mov edx, dword [ebp - 0x49c]
add esp, 0x18
cmp edx, 0x10
jb 0x100adb69
mov ecx, dword [ebp - 0x4b0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100adb5f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae071
push edx
push ecx
call fcn.100becc4
add esp, 8
sub esp, 0x18
lea eax, [ebp - 0x438]
mov ecx, esp
push eax
call fcn.100b2700
sub esp, 0x18
mov ecx, esp
push 0x101018f0
call fcn.100b2700
lea ecx, [ebp - 0x4b0]
call fcn.10084620
cmp dword [ebp - 0x40c], 0x10
lea ecx, [ebp - 0x420]
mov esi, esp
cmovae ecx, dword [ebp - 0x420]
push dword [ebp - 0x410]
push ecx
push ecx
mov ecx, eax
call fcn.100b7550
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
movups xmm0, xmmword [eax]
movups xmmword [esi], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esi + 0x10], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
call fcn.100864c0
mov edx, dword [ebp - 0x49c]
add esp, 0x30
cmp edx, 0x10
jb 0x100adc2a
mov ecx, dword [ebp - 0x4b0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100adc20
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae076
push edx
push ecx
call fcn.100becc4
add esp, 8
sub esp, 0x18
mov ecx, esp
push 0x101018f0
call fcn.100b2700
lea ecx, [ebp - 0x4b0]
call fcn.10084620
cmp dword [ebp - 0x40c], 0x10
lea ecx, [ebp - 0x420]
mov esi, esp
cmovae ecx, dword [ebp - 0x420]
push dword [ebp - 0x410]
push ecx
push ecx
mov ecx, eax
call fcn.100b7550
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
movups xmm0, xmmword [eax]
movups xmmword [esi], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esi + 0x10], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
call fcn.10086dd0
mov edx, dword [ebp - 0x49c]
add esp, 0x18
cmp edx, 0x10
jb 0x100adcda
mov ecx, dword [ebp - 0x4b0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100adcd0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae07b
push edx
push ecx
call fcn.100becc4
add esp, 8
cmp dword [ebp - 0x424], 0x10
lea eax, [ebp - 0x438]
push 0x100fb3d4
cmovae eax, dword [ebp - 0x438]
push eax
call fcn.100c885d
add esp, 8
test eax, eax
je 0x100ade6f
push eax
call fcn.100c88eb
mov ecx, dword [ebp + 0x4c]
lea eax, [ebp + 0x38]
mov edx, dword [ebp + 0x38]
add esp, 4
mov esi, dword [ebp + 0x48]
cmp ecx, 0x10
cmovae eax, edx
cmp esi, 1
jne 0x100add5c
cmp byte [eax], 0x30
jne 0x100add5c
sub esp, 0x18
lea eax, [ebp - 0x468]
mov ecx, esp
push eax
call fcn.100b2700
sub esp, 0x18
lea eax, [ebp - 0x438]
mov ecx, esp
push eax
call fcn.100b2700
call fcn.10086750
mov ecx, dword [ebp + 0x4c]
add esp, 0x30
mov esi, dword [ebp + 0x48]
mov edx, dword [ebp + 0x38]
cmp ecx, 0x10
lea eax, [ebp + 0x38]
cmovae eax, edx
cmp esi, 1
jne 0x100ade52
cmp byte [eax], 0x31
jne 0x100ade52
lea eax, [ebp - 0x468]
push eax
push ecx
lea ecx, [ebp - 0x4b0]
call fcn.10085f60
add esp, 4
lea ecx, [ebp - 0x498]
mov edx, eax
call fcn.100b3430
add esp, 4
cmp dword [eax + 0x14], 0x10
jb 0x100adda5
mov eax, dword [eax]
cmp dword [ebp - 0x424], 0x10
lea ecx, [ebp - 0x438]
push 1
cmovae ecx, dword [ebp - 0x438]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_CopyFileA]
mov edx, dword [ebp - 0x484]
cmp edx, 0x10
jb 0x100addfd
mov ecx, dword [ebp - 0x498]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100addf3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae080
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x49c]
mov dword [ebp - 0x488], 0
mov dword [ebp - 0x484], 0xf
mov byte [ebp - 0x498], 0
cmp edx, 0x10
jb 0x100ade52
mov ecx, dword [ebp - 0x4b0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ade48
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae080
push edx
push ecx
call fcn.100becc4
add esp, 8
cmp dword [ebp - 0x424], 0x10
lea eax, [ebp - 0x438]
cmovae eax, dword [ebp - 0x438]
push eax
call fcn.100c8af5
add esp, 4
mov edx, dword [ebp - 0x40c]
cmp edx, 0x10
jb 0x100adea9
mov ecx, dword [ebp - 0x420]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ade9f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae085
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x424]
cmp edx, 0x10
jb 0x100adee3
mov ecx, dword [ebp - 0x438]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100aded9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae085
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x454]
mov dword [ebp - 0x428], 0
mov dword [ebp - 0x424], 0xf
mov byte [ebp - 0x438], 0
cmp edx, 0x10
jb 0x100adf38
mov ecx, dword [ebp - 0x468]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100adf2e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae085
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp - 0x43c]
cmp edx, 0x10
jb 0x100adf72
mov ecx, dword [ebp - 0x450]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100adf68
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae085
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp + 0x1c]
cmp edx, 0x10
jb 0x100adfa6
mov ecx, dword [ebp + 8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100adf9c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae085
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp + 0x34]
mov dword [ebp + 0x18], 0
mov dword [ebp + 0x1c], 0xf
mov byte [ebp + 8], 0
cmp edx, 0x10
jb 0x100adfec
mov ecx, dword [ebp + 0x20]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100adfe2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae085
push edx
push ecx
call fcn.100becc4
add esp, 8
mov edx, dword [ebp + 0x4c]
mov dword [ebp + 0x30], 0
mov dword [ebp + 0x34], 0xf
mov byte [ebp + 0x20], 0
cmp edx, 0x10
jb 0x100ae02e
mov ecx, dword [ebp + 0x38]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100ae024
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100ae085
push edx
push ecx
call fcn.100becc4
add esp, 8
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.100be769
mov esp, ebp
pop ebp
ret
call fcn.100cb6d0
call fcn.100cb6d0
call fcn.100cb6d0
call fcn.100cb6d0
call fcn.100cb6d0
call fcn.100cb6d0
call fcn.100cb6d0
call fcn.100cb6d0
call fcn.100cb6d0
call fcn.100cb6d0
call fcn.100cb6d0
call fcn.100cb6d0
call fcn.100cb6d0
call fcn.100cb6d0
call fcn.100cb6d0
int3