Function at 0x10083f60
Capabilities:
Create directory
Hash data using fnv

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100dcc8c
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
push ebx
sub esp, 0x118
mov dword [ebp - 4], 0
xorps xmm0, xmm0
push ebx
push esi
push edi
movups xmmword [ebp - 0x88], xmm0
mov dword [ebp - 0x10], esp
movups xmmword [ebp - 0x70], xmm0
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
movq qword [ebp - 0x58], xmm0
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0
mov edi, dword [ebx + 8]
mov ecx, edi
push str.meta
mov byte [ebp - 4], 1
call fcn.10086e40
push str.name
mov ecx, eax
call fcn.10086e40
lea ecx, [ebp - 0x34]
push ecx
mov ecx, eax
call fcn.10086f60
push eax
lea ecx, [ebp - 0x88]
call fcn.10053a00
mov ecx, dword [ebp - 0x20]
cmp ecx, 0x10
jb 0x1008405c
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10084052
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100849ea
push ecx
push edx
call fcn.100b0b76
add esp, 8
push str.meta
mov ecx, edi
call fcn.10086e40
push str.author
mov ecx, eax
call fcn.10086e40
lea ecx, [ebp - 0x34]
push ecx
mov ecx, eax
call fcn.10086f60
mov esi, eax
lea eax, [ebp - 0x70]
cmp eax, esi
je 0x100840de
mov ecx, dword [ebp - 0x5c]
cmp ecx, 0x10
jb 0x100840bc
mov edx, dword [ebp - 0x70]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100840b2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100849ef
push ecx
push edx
call fcn.100b0b76
add esp, 8
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x70], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x60], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov ecx, dword [ebp - 0x20]
cmp ecx, 0x10
jb 0x10084112
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10084108
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100849ef
push ecx
push edx
call fcn.100b0b76
add esp, 8
push str.meta
mov ecx, edi
call fcn.10086e40
push 0x100f3bd4
mov ecx, eax
call fcn.10086e40
mov ecx, eax
call fcn.10087050
push str.meta
mov ecx, edi
mov dword [ebp - 0x58], eax
call fcn.10086e40
push str.tickrate
mov ecx, eax
call fcn.10086e40
mov ecx, eax
call int.10087180
push str.meta
mov ecx, edi
movss dword [ebp - 0x54], xmm0
call fcn.10086e40
push str.size
mov ecx, eax
call fcn.10086e40
mov ecx, eax
call fcn.10087050
mov ecx, eax
xor eax, eax
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x1c], eax
cmp eax, ecx
jae 0x10084985
xorps xmm0, xmm0
mov ecx, edi
push 0x100f3bec
movq qword [ebp - 0x90], xmm0
call fcn.10086e40
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x34]
mov esi, eax
call fcn.1005c220
push eax
mov ecx, esi
mov byte [ebp - 4], 2
call fcn.10086070
push str.angs
mov ecx, eax
call fcn.10086e40
push str.xyz__
mov ecx, eax
call fcn.10086e40
mov ecx, eax
call int.10087180
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x20]
movss dword [ebp - 0x9c], xmm0
cmp ecx, 0x10
jb 0x10084218
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1008420e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100849f4
push ecx
push edx
call fcn.100b0b76
add esp, 8
push 0x100f3bec
mov ecx, edi
call fcn.10086e40
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x34]
mov esi, eax
call fcn.1005c220
push eax
mov ecx, esi
mov byte [ebp - 4], 3
call fcn.10086070
push str.angs
mov ecx, eax
call fcn.10086e40
push 0x100f2e64
mov ecx, eax
call fcn.10086e40
mov ecx, eax
call int.10087180
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x20]
movss dword [ebp - 0x98], xmm0
cmp ecx, 0x10
jb 0x1008429c
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10084292
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100849f9
push ecx
push edx
call fcn.100b0b76
add esp, 8
push 0x100f3bec
mov ecx, edi
call fcn.10086e40
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x34]
mov esi, eax
call fcn.1005c220
push eax
mov ecx, esi
mov byte [ebp - 4], 4
call fcn.10086070
push str.angs
mov ecx, eax
call fcn.10086e40
push 0x100f2e68
mov ecx, eax
call fcn.10086e40
mov ecx, eax
call int.10087180
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x20]
movss dword [ebp - 0x94], xmm0
cmp ecx, 0x10
jb 0x10084320
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10084316
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100849fe
push ecx
push edx
call fcn.100b0b76
add esp, 8
push 0x100f3bec
mov ecx, edi
call fcn.10086e40
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x34]
mov esi, eax
call fcn.1005c220
push eax
mov ecx, esi
mov byte [ebp - 4], 5
call fcn.10086070
push str.move
mov ecx, eax
call fcn.10086e40
push str.xyz__
mov ecx, eax
call fcn.10086e40
mov ecx, eax
call int.10087180
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x20]
movss dword [ebp - 0xc0], xmm0
cmp ecx, 0x10
jb 0x100843a4
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1008439a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10084a03
push ecx
push edx
call fcn.100b0b76
add esp, 8
push 0x100f3bec
mov ecx, edi
call fcn.10086e40
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x34]
mov esi, eax
call fcn.1005c220
push eax
mov ecx, esi
mov byte [ebp - 4], 6
call fcn.10086070
push str.move
mov ecx, eax
call fcn.10086e40
push 0x100f2e64
mov ecx, eax
call fcn.10086e40
mov ecx, eax
call int.10087180
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x20]
movss dword [ebp - 0xbc], xmm0
cmp ecx, 0x10
jb 0x10084428
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1008441e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10084a08
push ecx
push edx
call fcn.100b0b76
add esp, 8
push 0x100f3bec
mov ecx, edi
call fcn.10086e40
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x34]
mov esi, eax
call fcn.1005c220
push eax
mov ecx, esi
mov byte [ebp - 4], 7
call fcn.10086070
push str.move
mov ecx, eax
call fcn.10086e40
push 0x100f2e68
mov ecx, eax
call fcn.10086e40
mov ecx, eax
call int.10087180
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x20]
movss dword [ebp - 0xb8], xmm0
cmp ecx, 0x10
jb 0x100844ac
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100844a2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10084a0d
push ecx
push edx
call fcn.100b0b76
add esp, 8
push 0x100f3bec
mov ecx, edi
call fcn.10086e40
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x34]
mov esi, eax
call fcn.1005c220
push eax
mov ecx, esi
mov byte [ebp - 4], 8
call fcn.10086070
push str.origin
mov ecx, eax
call fcn.10086e40
push str.xyz__
mov ecx, eax
call fcn.10086e40
mov ecx, eax
call int.10087180
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x20]
movss dword [ebp - 0xa8], xmm0
cmp ecx, 0x10
jb 0x10084530
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10084526
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10084a12
push ecx
push edx
call fcn.100b0b76
add esp, 8
push 0x100f3bec
mov ecx, edi
call fcn.10086e40
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x34]
mov esi, eax
call fcn.1005c220
push eax
mov ecx, esi
mov byte [ebp - 4], 9
call fcn.10086070
push str.origin
mov ecx, eax
call fcn.10086e40
push 0x100f2e64
mov ecx, eax
call fcn.10086e40
mov ecx, eax
call int.10087180
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x20]
movss dword [ebp - 0xa4], xmm0
cmp ecx, 0x10
jb 0x100845b4
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100845aa
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10084a17
push ecx
push edx
call fcn.100b0b76
add esp, 8
push 0x100f3bec
mov ecx, edi
call fcn.10086e40
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x34]
mov esi, eax
call fcn.1005c220
push eax
mov ecx, esi
mov byte [ebp - 4], 0xa
call fcn.10086070
push str.origin
mov ecx, eax
call fcn.10086e40
push 0x100f2e68
mov ecx, eax
call fcn.10086e40
mov ecx, eax
call int.10087180
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x20]
movss dword [ebp - 0xa0], xmm0
cmp ecx, 0x10
jb 0x10084638
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1008462e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10084a1c
push ecx
push edx
call fcn.100b0b76
add esp, 8
push 0x100f3bec
mov ecx, edi
call fcn.10086e40
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x34]
mov esi, eax
call fcn.1005c220
push eax
mov ecx, esi
mov byte [ebp - 4], 0xb
call fcn.10086070
push str.velocity
mov ecx, eax
call fcn.10086e40
push str.xyz__
mov ecx, eax
call fcn.10086e40
mov ecx, eax
call int.10087180
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x20]
movss dword [ebp - 0xb4], xmm0
cmp ecx, 0x10
jb 0x100846bc
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100846b2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10084a21
push ecx
push edx
call fcn.100b0b76
add esp, 8
push 0x100f3bec
mov ecx, edi
call fcn.10086e40
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x34]
mov esi, eax
call fcn.1005c220
push eax
mov ecx, esi
mov byte [ebp - 4], 0xc
call fcn.10086070
push str.velocity
mov ecx, eax
call fcn.10086e40
push 0x100f2e64
mov ecx, eax
call fcn.10086e40
mov ecx, eax
call int.10087180
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x20]
movss dword [ebp - 0xb0], xmm0
cmp ecx, 0x10
jb 0x10084740
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10084736
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10084a26
push ecx
push edx
call fcn.100b0b76
add esp, 8
push 0x100f3bec
mov ecx, edi
call fcn.10086e40
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x34]
mov esi, eax
call fcn.1005c220
push eax
mov ecx, esi
mov byte [ebp - 4], 0xd
call fcn.10086070
push str.velocity
mov ecx, eax
call fcn.10086e40
push 0x100f2e68
mov ecx, eax
call fcn.10086e40
mov ecx, eax
call int.10087180
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x20]
movss dword [ebp - 0xac], xmm0
cmp ecx, 0x10
jb 0x100847c4
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100847ba
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10084a2b
push ecx
push edx
call fcn.100b0b76
add esp, 8
push 0x100f3bec
mov ecx, edi
call fcn.10086e40
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x34]
mov esi, eax
call fcn.1005c220
push eax
mov ecx, esi
mov byte [ebp - 4], 0xe
call fcn.10086070
push str.buttons
mov ecx, eax
call fcn.10086e40
mov edx, eax
mov cl, byte [edx]
movzx eax, cl
add eax, 0xfffffffc
cmp eax, 3
ja case.default.0x10084808
jmp dword [eax*4 + 0x10084ae0]
lea eax, [edx + 8]
xor edx, edx
cmp cl, 6
cmovne eax, edx
mov eax, dword [eax]
jmp 0x10084867
cmp cl, 5
je 0x10084838
cmp cl, 6
je 0x10084838
lea eax, [edx + 8]
xor cl, cl
xor edx, edx
test cl, cl
cmove eax, edx
mov eax, dword [eax]
jmp 0x10084867
lea eax, [edx + 8]
mov cl, 1
xor edx, edx
test cl, cl
cmove eax, edx
mov eax, dword [eax]
jmp 0x10084867
lea eax, [edx + 8]
xor edx, edx
cmp cl, 7
cmovne eax, edx
cvttsd2si eax, qword [eax]
jmp 0x10084867
lea eax, [edx + 8]
xor edx, edx
cmp cl, 4
cmovne eax, edx
movzx eax, byte [eax]
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x90], eax
cmp ecx, 0x10
jb 0x100848a5
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1008489b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10084a30
push ecx
push edx
call fcn.100b0b76
add esp, 8
push 0x100f3bec
mov ecx, edi
call fcn.10086e40
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x34]
mov esi, eax
call fcn.1005c220
push eax
mov ecx, esi
mov byte [ebp - 4], 0x11
call fcn.10086070
push str.grounded
mov ecx, eax
call fcn.10086e40
mov ecx, eax
cmp byte [ecx], 4
jne 0x10084a35
mov al, byte [ecx + 8]
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x20]
mov byte [ebp - 0x8c], al
cmp ecx, 0x10
jb 0x10084922
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10084918
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10084a87
push ecx
push edx
call fcn.100b0b76
add esp, 8
mov eax, dword [ebp - 0x4c]
cmp eax, dword [ebp - 0x48]
je 0x10084969
movups xmm0, xmmword [ebp - 0xc0]
mov ecx, dword [ebp - 0x38]
movups xmmword [eax], xmm0
movups xmm0, xmmword [ebp - 0xb0]
movups xmmword [eax + 0x10], xmm0
movups xmm0, xmmword [ebp - 0xa0]
movups xmmword [eax + 0x20], xmm0
movq xmm0, qword [ebp - 0x90]
movq qword [eax + 0x30], xmm0
add eax, 0x38
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x1c]
inc eax
jmp 0x1008417e
lea ecx, [ebp - 0xc0]
push ecx
push eax
lea ecx, [ebp - 0x50]
call fcn.10079b50
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x38]
inc eax
jmp 0x1008417e
mov esi, dword [ebp - 0x3c]
lea ecx, [ebp - 0x88]
push ecx
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0xc]
je 0x100849b2
mov edx, eax
call fcn.1007a200
add dword [esi + 8], 0x44
lea ecx, [ebp - 0x88]
add esp, 4
call fcn.10073610
jmp 0x100849d4
push eax
lea ecx, [esi + 4]
call fcn.10079900
lea ecx, [ebp - 0x88]
call fcn.10073610
jmp 0x100849d4
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4
call fcn.100b7b82
call fcn.100b7b82
call fcn.100b7b82
call fcn.100b7b82
call fcn.100b7b82
call fcn.100b7b82
call fcn.100b7b82
call fcn.100b7b82
call fcn.100b7b82
call fcn.100b7b82
call fcn.100b7b82
call fcn.100b7b82
call fcn.100b7b82
call fcn.100b7b82
call fcn.100b7b82
call fcn.100776f0
push eax
lea ecx, [ebp - 0xd8]
call fcn.10049b00
push eax
mov edx, str.type_must_be_boolean__but_is
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0xf0]
call fcn.10053e00
add esp, 4
push eax
mov edx, 0x12e
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x10c]
call fcn.10070950
add esp, 4
lea eax, [ebp - 0x10c]
push 0x101049a8
push eax
call fcn.100b376a
call fcn.100b7b82
mov ecx, edx
call fcn.100776f0
push eax
lea ecx, [ebp - 0xf0]
call fcn.10049b00
push eax
mov edx, str.type_must_be_number__but_is
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0xd8]
call fcn.10053e00
add esp, 4
push eax
mov edx, 0x12e
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x128]
call fcn.10070950
add esp, 4
lea eax, [ebp - 0x128]
push 0x101049a8
push eax
call fcn.100b376a
pop ecx
dec eax
or byte [eax], dl
push ds
dec eax
or byte [eax], dl
cmovs ecx, dword [eax]
adc byte [eax + 72], cl
or byte [eax], dl