Function at 0x10003820
Capabilities:
Create directory

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x138
push ebx
xor eax, eax
mov dword [ebp - 0x90], ecx
push esi
xorps xmm0, xmm0
mov dword [ebp - 0x94], edx
push edi
mov edi, 7
mov dword [ebp - 0x4c], eax
movups xmmword [ebp - 0x2c], xmm0
xor esi, esi
mov dword [ebp - 0x18], edi
movups xmmword [ebp - 0x5c], xmm0
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x1c], esi
movups xmmword [ebp - 0x10c], xmm0
mov word [ebp - 0x2c], ax
mov dword [ebp - 0x48], edi
mov word [ebp - 0x5c], ax
mov dword [ebp - 0xfc], eax
mov dword [ebp - 0xf8], edi
mov word [ebp - 0x10c], ax
call fcn.100032e0
lea ecx, [ebp - 0x2c]
cmp ecx, eax
je 0x100038ab
movups xmm0, xmmword [eax]
xor ecx, ecx
movups xmmword [ebp - 0x2c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x1c], xmm0
mov dword [eax + 0x10], esi
mov esi, dword [ebp - 0x1c]
mov dword [eax + 0x14], edi
mov edi, dword [ebp - 0x18]
mov word [eax], cx
mov ecx, dword [ebp - 0x60]
cmp ecx, 8
jb 0x100038e5
mov edx, dword [ebp - 0x74]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x100038db
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004114
push ecx
push edx
call fcn.10004dc9
add esp, 8
lea ecx, [ebp - 0x74]
call fcn.100034d0
lea ecx, [ebp - 0x10c]
cmp ecx, eax
je 0x10003921
movups xmm0, xmmword [eax]
xor ecx, ecx
movups xmmword [ebp - 0x10c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0xfc], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
mov ecx, dword [ebp - 0x60]
cmp ecx, 8
jb 0x1000395b
mov edx, dword [ebp - 0x74]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10003951
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004119
push ecx
push edx
call fcn.10004dc9
add esp, 8
push 0x14
push 0x10015d94
lea ecx, [ebp - 0x5c]
call fcn.100045d0
push 0xf
xorps xmm0, xmm0
mov dword [ebp - 0x7c], 0
push str.C:UsersPublic
lea ecx, [ebp - 0x8c]
mov dword [ebp - 0x78], 0
movups xmmword [ebp - 0x8c], xmm0
call fcn.100048d0
cmp dword [ebp - 0x78], 8
lea eax, [ebp - 0x8c]
push 0
cmovae eax, dword [ebp - 0x8c]
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
push ecx
lea edx, [ebp - 0x8c]
lea ecx, [ebp - 0xf4]
call fcn.10004810
add esp, 4
lea ecx, [ebp - 0x2c]
cmp edi, 8
cmovae ecx, dword [ebp - 0x2c]
push esi
push ecx
mov ecx, eax
call fcn.10004ac0
xor ecx, ecx
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x74], xmm0
movq xmm0, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
mov ecx, dword [ebp - 0xe0]
movq qword [ebp - 0x64], xmm0
cmp ecx, 8
jb 0x10003a3a
mov edx, dword [ebp - 0xf4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10003a30
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000411e
push ecx
push edx
call fcn.10004dc9
add esp, 8
push ecx
lea edx, [ebp - 0x8c]
lea ecx, [ebp - 0xdc]
call fcn.10004810
add esp, 4
lea ecx, [ebp - 0x5c]
cmp dword [ebp - 0x48], 8
cmovae ecx, dword [ebp - 0x5c]
push dword [ebp - 0x4c]
push ecx
mov ecx, eax
call fcn.10004ac0
xor ecx, ecx
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0xf4], xmm0
movq xmm0, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
mov ecx, dword [ebp - 0xc8]
movq qword [ebp - 0xe4], xmm0
cmp ecx, 8
jb 0x10003acf
mov edx, dword [ebp - 0xdc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10003ac5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004123
push ecx
push edx
call fcn.10004dc9
add esp, 8
push ecx
lea edx, [ebp - 0x10c]
lea ecx, [ebp - 0xc4]
call fcn.10004810
add esp, 4
lea ecx, [ebp - 0x2c]
cmp dword [ebp - 0x18], 8
cmovae ecx, dword [ebp - 0x2c]
push dword [ebp - 0x1c]
push ecx
mov ecx, eax
call fcn.10004ac0
xor ecx, ecx
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0xdc], xmm0
movq xmm0, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
mov ecx, dword [ebp - 0xb0]
movq qword [ebp - 0xcc], xmm0
cmp ecx, 8
jb 0x10003b64
mov edx, dword [ebp - 0xc4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10003b5a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004128
push ecx
push edx
call fcn.10004dc9
add esp, 8
push ecx
lea edx, [ebp - 0x10c]
lea ecx, [ebp - 0xac]
call fcn.10004810
add esp, 4
lea ecx, [ebp - 0x5c]
cmp dword [ebp - 0x48], 8
cmovae ecx, dword [ebp - 0x5c]
push dword [ebp - 0x4c]
push ecx
mov ecx, eax
call fcn.10004ac0
xor ecx, ecx
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0xc4], xmm0
movq xmm0, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
mov ecx, dword [ebp - 0x98]
movq qword [ebp - 0xb4], xmm0
cmp ecx, 8
jb 0x10003bf9
mov edx, dword [ebp - 0xac]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10003bef
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000412d
push ecx
push edx
call fcn.10004dc9
add esp, 8
push 0x20
call fcn.10004a60
movups xmm0, xmmword [str.C:UsersPublic_]
lea ecx, [ebp - 0xac]
mov dword [ebp - 0xc], eax
movups xmmword [eax], xmm0
mov byte [eax + 0x10], 0
call fcn.10003690
mov edx, dword [ebp - 0x9c]
cmp edx, 0x7fffffef
ja 0x10004132
cmp dword [ebp - 0x98], 0x10
lea eax, [ebp - 0xac]
mov ebx, dword [ebp - 0xac]
lea ecx, [edx + 0x10]
cmovae eax, ebx
mov dword [ebp - 0x34], 0
mov esi, 0xf
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x30], 0
xorps xmm0, xmm0
mov dword [ebp - 8], ecx
lea edi, [ebp - 0x44]
movups xmmword [ebp - 0x44], xmm0
cmp ecx, esi
jbe 0x10003ced
mov esi, ecx
or esi, 0xf
cmp esi, 0x7fffffff
jbe 0x10003cad
mov ecx, 0x80000000
mov esi, 0x7fffffff
add ecx, 0x23
push ecx
call fcn.10004d99
add esp, 4
test eax, eax
je 0x1000413c
mov ecx, dword [ebp - 8]
lea edi, [eax + 0x23]
mov edx, dword [ebp - 0x9c]
and edi, 0xffffffe0
mov dword [edi - 4], eax
jmp 0x10003cea
mov eax, 0x16
cmp esi, eax
cmovb esi, eax
lea eax, [esi + 1]
cmp eax, 0x1000
jb 0x10003cce
lea ecx, [eax + 0x23]
cmp ecx, eax
jbe 0x10004137
jmp 0x10003c88
test eax, eax
je 0x10003ce8
push eax
call fcn.10004d99
mov ecx, dword [ebp - 8]
add esp, 4
mov edx, dword [ebp - 0x9c]
mov edi, eax
jmp 0x10003cea
xor edi, edi
mov dword [ebp - 0x44], edi
mov eax, dword [ebp - 0xc]
push edx
push dword [ebp - 0x10]
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x30], esi
movups xmm0, xmmword [eax]
lea eax, [edi + 0x10]
push eax
movups xmmword [edi], xmm0
call fcn.100068f0
mov eax, dword [ebp - 0x9c]
add esp, 0xc
mov byte [edi + eax + 0x10], 0
mov ecx, dword [ebp - 0x30]
mov eax, ecx
mov edi, dword [ebp - 0x34]
sub eax, edi
push 0x10
cmp eax, 0x10
jb 0x10003d53
cmp ecx, 0x10
lea esi, [ebp - 0x44]
lea eax, [edi + 0x10]
cmovae esi, dword [ebp - 0x44]
mov dword [ebp - 0x34], eax
push str._StarWegameToyOU
lea eax, [esi + edi]
push eax
call fcn.100068f0
add esp, 0xc
mov byte [esi + edi + 0x10], 0
lea eax, [ebp - 0x44]
jmp 0x10003d65
push ecx
mov byte [ebp - 0x10], 0
lea ecx, [ebp - 0x44]
push dword [ebp - 0x10]
push 0x10
call fcn.10004c40
movups xmm0, xmmword [eax]
push 0x20
push dword [ebp - 0xc]
movups xmmword [ebp - 0x134], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x14], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
call fcn.10004dc9
movups xmm0, xmmword [ebp - 0x134]
mov ecx, dword [ebp - 0x30]
add esp, 8
movups xmmword [ebp - 0x124], xmm0
movq xmm0, qword [ebp - 0x14]
movq qword [ebp - 0x114], xmm0
cmp ecx, 0x10
jb 0x10003de6
mov edx, dword [ebp - 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10003ddc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000413c
push ecx
push edx
call fcn.10004dc9
add esp, 8
mov ecx, dword [ebp + 0xc]
lea eax, [ebp - 0x74]
cmp ecx, eax
je 0x10003e01
cmp dword [ebp - 0x60], 8
push dword [ebp - 0x64]
cmovae eax, dword [ebp - 0x74]
push eax
call fcn.100045d0
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0xf4]
cmp ecx, eax
je 0x10003e28
cmp dword [ebp - 0xe0], 8
push dword [ebp - 0xe4]
cmovae eax, dword [ebp - 0xf4]
push eax
call fcn.100045d0
mov ecx, dword [ebp - 0x90]
lea eax, [ebp - 0xdc]
cmp ecx, eax
je 0x10003e52
cmp dword [ebp - 0xc8], 8
push dword [ebp - 0xcc]
cmovae eax, dword [ebp - 0xdc]
push eax
call fcn.100045d0
mov ecx, dword [ebp - 0x94]
lea eax, [ebp - 0xc4]
cmp ecx, eax
je 0x10003e7c
cmp dword [ebp - 0xb0], 8
push dword [ebp - 0xb4]
cmovae eax, dword [ebp - 0xc4]
push eax
call fcn.100045d0
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x124]
cmp ecx, eax
je 0x10003ea3
cmp dword [ebp - 0x110], 0x10
push dword [ebp - 0x114]
cmovae eax, dword [ebp - 0x124]
push eax
call fcn.100046d0
mov eax, dword [ebp - 0x98]
cmp eax, 0x10
jb 0x10003ed9
lea ecx, [eax + 1]
mov eax, ebx
cmp ecx, 0x1000
jb 0x10003ecf
mov ebx, dword [eax - 4]
add ecx, 0x23
sub eax, ebx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004141
push ecx
push ebx
call fcn.10004dc9
add esp, 8
mov ecx, dword [ebp - 0x110]
cmp ecx, 0x10
jb 0x10003f13
mov edx, dword [ebp - 0x124]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10003f09
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004141
push ecx
push edx
call fcn.10004dc9
add esp, 8
mov ecx, dword [ebp - 0xb0]
cmp ecx, 8
jb 0x10003f53
mov edx, dword [ebp - 0xc4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10003f49
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004141
push ecx
push edx
call fcn.10004dc9
add esp, 8
mov ecx, dword [ebp - 0xc8]
cmp ecx, 8
jb 0x10003f93
mov edx, dword [ebp - 0xdc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10003f89
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004141
push ecx
push edx
call fcn.10004dc9
add esp, 8
mov ecx, dword [ebp - 0xe0]
cmp ecx, 8
jb 0x10003fd3
mov edx, dword [ebp - 0xf4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10003fc9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004141
push ecx
push edx
call fcn.10004dc9
add esp, 8
mov ecx, dword [ebp - 0x60]
cmp ecx, 8
jb 0x1000400d
mov edx, dword [ebp - 0x74]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10004003
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004141
push ecx
push edx
call fcn.10004dc9
add esp, 8
mov ecx, dword [ebp - 0x78]
cmp ecx, 8
jb 0x1000404a
mov edx, dword [ebp - 0x8c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10004040
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004141
push ecx
push edx
call fcn.10004dc9
add esp, 8
mov ecx, dword [ebp - 0xf8]
xor eax, eax
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 7
mov word [ebp - 0x8c], ax
cmp ecx, 8
jb 0x100040a1
mov edx, dword [ebp - 0x10c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10004097
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004141
push ecx
push edx
call fcn.10004dc9
add esp, 8
mov ecx, dword [ebp - 0x48]
cmp ecx, 8
jb 0x100040d7
mov edx, dword [ebp - 0x5c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x100040cd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004141
push ecx
push edx
call fcn.10004dc9
add esp, 8
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x1000410d
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10004103
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004141
push ecx
push edx
call fcn.10004dc9
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.100084c4
call fcn.100084c4
call fcn.100084c4
call fcn.100084c4
call fcn.100084c4
call fcn.100084c4
call fcn.100031f0
call fcn.10003150
call fcn.100084c4
call fcn.100084c4
int3