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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4ec
mov eax, dword [0x100fc008]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
sub esp, 0x18
mov dword [ebp - 0x4d0], 0
mov ecx, esp
call fcn.10083c70
lea ecx, [ebp - 0x438]
call fcn.10083fa0
mov ecx, esp
push 0x100fdea8
call fcn.100ae9d0
lea ecx, [ebp - 0x4cc]
call fcn.10083b80
add esp, 0x18
lea ecx, [ebp - 0x438]
cmp dword [ebp - 0x424], 0x10
cmovae ecx, dword [ebp - 0x438]
push dword [ebp - 0x428]
push ecx
push ecx
mov ecx, eax
call fcn.100b3780
sub esp, 0x18
mov ecx, esp
movups xmm0, xmmword [eax]
push 0x100fdf50
movups xmmword [ebp - 0x46c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x45c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
call fcn.100ae9d0
lea ecx, [ebp - 0x49c]
call fcn.10083b80
add esp, 0x18
lea edx, [ebp - 0x46c]
lea ecx, [ebp - 0x484]
push eax
lea eax, [ebp + 0x20]
push eax
call fcn.100af660
add esp, 4
lea ecx, [ebp - 0x450]
mov edx, eax
call fcn.100af560
mov edx, dword [ebp - 0x470]
add esp, 4
cmp edx, 0x10
jb 0x100a95aa
mov ecx, dword [ebp - 0x484]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100a95a0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa64d
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x458]
mov dword [ebp - 0x474], 0
mov dword [ebp - 0x470], 0xf
mov byte [ebp - 0x484], 0
cmp edx, 0x10
jb 0x100a95ff
mov ecx, dword [ebp - 0x46c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100a95f5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa64d
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x4b8]
mov dword [ebp - 0x45c], 0
mov dword [ebp - 0x458], 0xf
mov byte [ebp - 0x46c], 0
cmp edx, 0x10
jb 0x100a9654
mov ecx, dword [ebp - 0x4cc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100a964a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa64d
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x488]
mov dword [ebp - 0x4bc], 0
mov dword [ebp - 0x4b8], 0xf
mov byte [ebp - 0x4cc], 0
cmp edx, 0x10
jb 0x100a96a9
mov ecx, dword [ebp - 0x49c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100a969f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa64d
push edx
push ecx
call fcn.100baf94
add esp, 8
lea eax, [ebp - 0x408]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
lea ecx, [ebp - 0x408]
mov dword [ebp - 0x45c], 0
mov dword [ebp - 0x458], 0xf
lea edx, [ecx + 1]
mov byte [ebp - 0x46c], 0
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100a96e0
sub ecx, edx
lea eax, [ebp - 0x408]
push ecx
push eax
lea ecx, [ebp - 0x46c]
call fcn.100af160
lea eax, [ebp - 0x450]
push eax
lea eax, [ebp - 0x438]
push eax
lea edx, [ebp - 0x46c]
lea ecx, [ebp - 0x484]
call fcn.100af660
add esp, 4
lea ecx, [ebp - 0x420]
mov edx, eax
call fcn.100af660
mov edx, dword [ebp - 0x470]
add esp, 4
cmp edx, 0x10
jb 0x100a9768
mov ecx, dword [ebp - 0x484]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100a975e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa652
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x458]
mov dword [ebp - 0x474], 0
mov dword [ebp - 0x470], 0xf
mov byte [ebp - 0x484], 0
cmp edx, 0x10
jb 0x100a97bd
mov ecx, dword [ebp - 0x46c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100a97b3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa652
push edx
push ecx
call fcn.100baf94
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 0x100aa4fd
test al, 0x10
je 0x100aa4fd
sub esp, 0x18
mov ecx, esp
push 0x100fd8f0
call fcn.100ae9d0
lea ecx, [ebp - 0x4b4]
call fcn.10083b80
add esp, 0x18
lea ecx, [ebp + 8]
cmp dword [ebp + 0x1c], 0x10
cmovae ecx, dword [ebp + 8]
push dword [ebp + 0x18]
push ecx
push ecx
mov ecx, eax
call fcn.100b3780
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x46c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x45c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x46c]
cmp dword [ebp - 0x458], 0x10
cmovae eax, dword [ebp - 0x46c]
push eax
call edi
cmp eax, 0xffffffff
jne 0x100a9864
mov ebx, 3
jmp 0x100a99a3
test al, 0x10
jne 0x100a9872
mov ebx, 3
jmp 0x100a99a3
sub esp, 0x18
mov ecx, esp
push 0x100fdf38
call fcn.100ae9d0
lea ecx, [ebp - 0x49c]
call fcn.10083b80
add esp, 0x18
lea ecx, [ebp + 8]
cmp dword [ebp + 0x1c], 0x10
cmovae ecx, dword [ebp + 8]
push dword [ebp + 0x18]
push ecx
push ecx
mov ecx, eax
call fcn.100b3780
push 0x100f7320
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x484], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x474], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x484]
cmp dword [ebp - 0x470], 0x10
cmovae eax, dword [ebp - 0x484]
push eax
call fcn.100c4b2d
add esp, 8
test eax, eax
je 0x100a999e
push eax
call fcn.100c4bbb
sub esp, 0x14
mov ecx, esp
push 0x100fdc50
call fcn.100ae9d0
lea ecx, [ebp - 0x4e8]
call fcn.10083b80
add esp, 0x18
lea ecx, [ebp + 8]
cmp dword [ebp + 0x1c], 0x10
cmovae ecx, dword [ebp + 8]
push dword [ebp + 0x18]
push ecx
push ecx
mov ecx, eax
call fcn.100b3780
push 0x100f7320
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x4cc], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x4bc], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x4cc]
cmp dword [ebp - 0x4b8], 0x10
cmovae eax, dword [ebp - 0x4cc]
push eax
call fcn.100c4b2d
add esp, 8
test eax, eax
je 0x100a9997
push eax
call fcn.100c4bbb
add esp, 4
mov byte [ebp - 0x451], 1
mov ebx, 0x3f
jmp 0x100a99aa
mov ebx, 0x3f
jmp 0x100a99a3
mov ebx, 0xf
mov byte [ebp - 0x451], 0
test bl, 0x20
je 0x100a9a07
mov edx, dword [ebp - 0x4b8]
and ebx, 0xffffffdf
cmp edx, 0x10
jb 0x100a99ec
mov ecx, dword [ebp - 0x4cc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100a99e2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa657
push edx
push ecx
call fcn.100baf94
add esp, 8
mov dword [ebp - 0x4bc], 0
mov dword [ebp - 0x4b8], 0xf
mov byte [ebp - 0x4cc], 0
test bl, 0x10
je 0x100a9a64
mov edx, dword [ebp - 0x4d4]
and ebx, 0xffffffef
cmp edx, 0x10
jb 0x100a9a49
mov ecx, dword [ebp - 0x4e8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100a9a3f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa657
push edx
push ecx
call fcn.100baf94
add esp, 8
mov dword [ebp - 0x4d8], 0
mov dword [ebp - 0x4d4], 0xf
mov byte [ebp - 0x4e8], 0
test bl, 8
je 0x100a9abe
mov edx, dword [ebp - 0x470]
cmp edx, 0x10
jb 0x100a9aa3
mov ecx, dword [ebp - 0x484]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100a9a99
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa657
push edx
push ecx
call fcn.100baf94
add esp, 8
mov dword [ebp - 0x474], 0
mov dword [ebp - 0x470], 0xf
mov byte [ebp - 0x484], 0
test bl, 4
je 0x100a9b18
mov edx, dword [ebp - 0x488]
cmp edx, 0x10
jb 0x100a9afd
mov ecx, dword [ebp - 0x49c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100a9af3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa657
push edx
push ecx
call fcn.100baf94
add esp, 8
mov dword [ebp - 0x48c], 0
mov dword [ebp - 0x488], 0xf
mov byte [ebp - 0x49c], 0
mov edx, dword [ebp - 0x458]
cmp edx, 0x10
jb 0x100a9b52
mov ecx, dword [ebp - 0x46c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100a9b48
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa657
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x4a0]
mov dword [ebp - 0x45c], 0
mov dword [ebp - 0x458], 0xf
mov byte [ebp - 0x46c], 0
cmp edx, 0x10
jb 0x100a9ba7
mov ecx, dword [ebp - 0x4b4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100a9b9d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa657
push edx
push ecx
call fcn.100baf94
add esp, 8
cmp byte [ebp - 0x451], 0
je 0x100aa4fd
sub esp, 0x18
mov ecx, esp
push 0x100fe040
call fcn.100ae9d0
lea ecx, [ebp - 0x4b4]
call fcn.10083b80
cmp dword [ebp + 0x1c], 0x10
lea ecx, [ebp + 8]
mov esi, esp
cmovae ecx, dword [ebp + 8]
push dword [ebp + 0x18]
push ecx
push ecx
mov ecx, eax
call fcn.100b3780
mov dword [esi + 0x10], 0
sub esp, 0x18
mov dword [esi + 0x14], 0
mov ecx, esp
movups xmm0, xmmword [eax]
push 0x100fd8f0
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.100ae9d0
lea ecx, [ebp - 0x49c]
call fcn.10083b80
cmp dword [ebp + 0x1c], 0x10
lea ecx, [ebp + 8]
mov esi, esp
cmovae ecx, dword [ebp + 8]
push dword [ebp + 0x18]
push ecx
push ecx
mov ecx, eax
call fcn.100b3780
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.10086170
mov edx, dword [ebp - 0x488]
add esp, 0x30
cmp edx, 0x10
jb 0x100a9cba
mov ecx, dword [ebp - 0x49c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100a9cb0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa65c
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x4a0]
mov dword [ebp - 0x48c], 0
mov dword [ebp - 0x488], 0xf
mov byte [ebp - 0x49c], 0
cmp edx, 0x10
jb 0x100a9d0f
mov ecx, dword [ebp - 0x4b4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100a9d05
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa65c
push edx
push ecx
call fcn.100baf94
add esp, 8
sub esp, 0x18
mov ecx, esp
push 0x100fddd0
call fcn.100ae9d0
lea ecx, [ebp - 0x4b4]
call fcn.10083b80
add esp, 0x18
lea ecx, [ebp + 8]
cmp dword [ebp + 0x1c], 0x10
cmovae ecx, dword [ebp + 8]
push dword [ebp + 0x18]
push ecx
push ecx
mov ecx, eax
call fcn.100b3780
lea esi, [ebp - 0x484]
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x484], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x474], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
cmp dword [ebp - 0x470], 0x10
cmovae esi, dword [ebp - 0x484]
sub esp, 0x18
mov ecx, esp
push 0x100fdf38
call fcn.100ae9d0
lea ecx, [ebp - 0x49c]
call fcn.10083b80
add esp, 0x18
lea ecx, [ebp + 8]
cmp dword [ebp + 0x1c], 0x10
cmovae ecx, dword [ebp + 8]
push dword [ebp + 0x18]
push ecx
push ecx
mov ecx, eax
call fcn.100b3780
mov ebx, dword [sym.imp.KERNEL32.dll_CopyFileA]
push 1
push esi
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x46c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x45c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x46c]
cmp dword [ebp - 0x458], 0x10
cmovae eax, dword [ebp - 0x46c]
push eax
call ebx
mov edx, dword [ebp - 0x458]
cmp edx, 0x10
jb 0x100a9e35
mov ecx, dword [ebp - 0x46c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100a9e2b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa661
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x488]
mov dword [ebp - 0x45c], 0
mov dword [ebp - 0x458], 0xf
mov byte [ebp - 0x46c], 0
cmp edx, 0x10
jb 0x100a9e8a
mov ecx, dword [ebp - 0x49c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100a9e80
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa661
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x470]
mov dword [ebp - 0x48c], 0
mov dword [ebp - 0x488], 0xf
mov byte [ebp - 0x49c], 0
cmp edx, 0x10
jb 0x100a9edf
mov ecx, dword [ebp - 0x484]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100a9ed5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa661
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x4a0]
mov dword [ebp - 0x474], 0
mov dword [ebp - 0x470], 0xf
mov byte [ebp - 0x484], 0
cmp edx, 0x10
jb 0x100a9f34
mov ecx, dword [ebp - 0x4b4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100a9f2a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa661
push edx
push ecx
call fcn.100baf94
add esp, 8
sub esp, 0x18
mov ecx, esp
push 0x100fdd58
call fcn.100ae9d0
lea ecx, [ebp - 0x4b4]
call fcn.10083b80
add esp, 0x18
lea ecx, [ebp + 8]
cmp dword [ebp + 0x1c], 0x10
cmovae ecx, dword [ebp + 8]
push dword [ebp + 0x18]
push ecx
push ecx
mov ecx, eax
call fcn.100b3780
lea esi, [ebp - 0x484]
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x484], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x474], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
cmp dword [ebp - 0x470], 0x10
cmovae esi, dword [ebp - 0x484]
sub esp, 0x18
mov ecx, esp
push 0x100fdab8
call fcn.100ae9d0
lea ecx, [ebp - 0x49c]
call fcn.10083b80
add esp, 0x18
lea ecx, [ebp + 8]
cmp dword [ebp + 0x1c], 0x10
cmovae ecx, dword [ebp + 8]
push dword [ebp + 0x18]
push ecx
push ecx
mov ecx, eax
call fcn.100b3780
push 1
push esi
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x46c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x45c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x46c]
cmp dword [ebp - 0x458], 0x10
cmovae eax, dword [ebp - 0x46c]
push eax
call ebx
mov edx, dword [ebp - 0x458]
cmp edx, 0x10
jb 0x100aa054
mov ecx, dword [ebp - 0x46c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100aa04a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa666
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x488]
mov dword [ebp - 0x45c], 0
mov dword [ebp - 0x458], 0xf
mov byte [ebp - 0x46c], 0
cmp edx, 0x10
jb 0x100aa0a9
mov ecx, dword [ebp - 0x49c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100aa09f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa666
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x470]
mov dword [ebp - 0x48c], 0
mov dword [ebp - 0x488], 0xf
mov byte [ebp - 0x49c], 0
cmp edx, 0x10
jb 0x100aa0fe
mov ecx, dword [ebp - 0x484]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100aa0f4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa666
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x4a0]
mov dword [ebp - 0x474], 0
mov dword [ebp - 0x470], 0xf
mov byte [ebp - 0x484], 0
cmp edx, 0x10
jb 0x100aa153
mov ecx, dword [ebp - 0x4b4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100aa149
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa666
push edx
push ecx
call fcn.100baf94
add esp, 8
sub esp, 0x18
mov ecx, esp
push 0x100fe040
call fcn.100ae9d0
lea ecx, [ebp - 0x4b4]
call fcn.10083b80
cmp dword [ebp + 0x1c], 0x10
lea ecx, [ebp + 8]
mov esi, esp
cmovae ecx, dword [ebp + 8]
push dword [ebp + 0x18]
push ecx
push ecx
mov ecx, eax
call fcn.100b3780
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.100a8f60
mov edx, dword [ebp - 0x4a0]
add esp, 0x18
cmp edx, 0x10
jb 0x100aa1f7
mov ecx, dword [ebp - 0x4b4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100aa1ed
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa66b
push edx
push ecx
call fcn.100baf94
add esp, 8
sub esp, 0x18
mov ecx, esp
push 3
push 0x100f7b58
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
call fcn.100af160
sub esp, 0x18
lea eax, [ebp - 0x420]
mov ecx, esp
push eax
call fcn.100ae9d0
sub esp, 0x18
mov ecx, esp
push 0x100fda70
call fcn.100ae9d0
lea ecx, [ebp - 0x4b4]
call fcn.10083b80
cmp dword [ebp + 0x1c], 0x10
lea ecx, [ebp + 8]
mov esi, esp
cmovae ecx, dword [ebp + 8]
push dword [ebp + 0x18]
push ecx
push ecx
mov ecx, eax
call fcn.100b3780
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.10085920
mov edx, dword [ebp - 0x4a0]
add esp, 0x48
cmp edx, 0x10
jb 0x100aa2ce
mov ecx, dword [ebp - 0x4b4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100aa2c4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa670
push edx
push ecx
call fcn.100baf94
add esp, 8
cmp dword [ebp - 0x40c], 0x10
lea eax, [ebp - 0x420]
push 0x100f7320
cmovae eax, dword [ebp - 0x420]
push eax
call fcn.100c4b2d
add esp, 8
test eax, eax
je 0x100aa33e
push eax
call fcn.100c4bbb
sub esp, 0x14
lea eax, [ebp - 0x450]
mov ecx, esp
push eax
call fcn.100ae9d0
sub esp, 0x18
lea eax, [ebp - 0x420]
mov ecx, esp
push eax
call fcn.100ae9d0
call fcn.10085c50
cmp dword [ebp - 0x40c], 0x10
lea eax, [ebp - 0x420]
cmovae eax, dword [ebp - 0x420]
push eax
call fcn.100c4dc5
add esp, 0x34
sub esp, 0x18
mov ecx, esp
push 0x100fda70
call fcn.100ae9d0
lea ecx, [ebp - 0x4b4]
call fcn.10083b80
add esp, 0x18
lea ecx, [ebp + 8]
cmp dword [ebp + 0x1c], 0x10
cmovae ecx, dword [ebp + 8]
push dword [ebp + 0x18]
push ecx
push ecx
mov ecx, eax
call fcn.100b3780
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x46c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x45c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x46c]
cmp dword [ebp - 0x458], 0x10
cmovae eax, dword [ebp - 0x46c]
push eax
call edi
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x100aa3bc
xor bl, bl
jmp 0x100aa3c2
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x458]
cmp edx, 0x10
jb 0x100aa3fc
mov ecx, dword [ebp - 0x46c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100aa3f2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa675
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x4a0]
mov dword [ebp - 0x45c], 0
mov dword [ebp - 0x458], 0xf
mov byte [ebp - 0x46c], 0
cmp edx, 0x10
jb 0x100aa451
mov ecx, dword [ebp - 0x4b4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100aa447
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa675
push edx
push ecx
call fcn.100baf94
add esp, 8
test bl, bl
je 0x100aa4fd
sub esp, 0x18
mov ecx, esp
push 0x100fda70
call fcn.100ae9d0
lea ecx, [ebp - 0x4b4]
call fcn.10083b80
cmp dword [ebp + 0x1c], 0x10
lea ecx, [ebp + 8]
mov esi, esp
cmovae ecx, dword [ebp + 8]
push dword [ebp + 0x18]
push ecx
push ecx
mov ecx, eax
call fcn.100b3780
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.100862d0
mov edx, dword [ebp - 0x4a0]
add esp, 0x18
cmp edx, 0x10
jb 0x100aa4fd
mov ecx, dword [ebp - 0x4b4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100aa4f3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa67a
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x40c]
cmp edx, 0x10
jb 0x100aa537
mov ecx, dword [ebp - 0x420]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100aa52d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa67f
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x43c]
mov dword [ebp - 0x410], 0
mov dword [ebp - 0x40c], 0xf
mov byte [ebp - 0x420], 0
cmp edx, 0x10
jb 0x100aa58c
mov ecx, dword [ebp - 0x450]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100aa582
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa67f
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x424]
cmp edx, 0x10
jb 0x100aa5c6
mov ecx, dword [ebp - 0x438]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100aa5bc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa67f
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp + 0x1c]
cmp edx, 0x10
jb 0x100aa5fa
mov ecx, dword [ebp + 8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100aa5f0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa67f
push edx
push ecx
call fcn.100baf94
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 0x100aa63c
mov ecx, dword [ebp + 0x20]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100aa632
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100aa67f
push edx
push ecx
call fcn.100baf94
add esp, 8
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.100baa39
mov esp, ebp
pop ebp
ret
call fcn.100c79a0
call fcn.100c79a0
call fcn.100c79a0
call fcn.100c79a0
call fcn.100c79a0
call fcn.100c79a0
call fcn.100c79a0
call fcn.100c79a0
call fcn.100c79a0
call fcn.100c79a0
call fcn.100c79a0
int3