Function at 0x1000aac0
Capabilities:
Access peb ldr_data

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
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x1007b479
push eax
mov dword fs:[0], esp
mov eax, dword [0x100c7c5c]
push ebx
sub esp, 0x7c
mov eax, dword [eax]
push esi
test eax, eax
je 0x1000ab15
cmp dword [eax + 0x25c], 9
je 0x1000b034
cmp dword [eax + 0x25c], 8
je 0x1000b034
mov esi, dword [0x100c39e0]
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x5c]
mov dword [ebp - 0x4c], 0
push eax
and dword [esi + 0x30], 0xfffff9e7
lea edx, [ebp - 0x50]
lea ecx, [ebx + 8]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x84], 0
call fcn.10011940
lea eax, [ebp - 0x8c]
push eax
lea eax, [ebp - 0x74]
push eax
lea ecx, [esi + 0xc]
lea edx, [ebp - 0x68]
call fcn.10011940
movss xmm1, dword [ebp - 0x50]
add esp, 0x10
movss xmm0, dword [ebp - 0x4c]
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm1
call fcn.10003db0
movss xmm1, dword [ebp - 0x5c]
movss dword [ebp - 0x2c], xmm0
movss xmm0, dword [ebp - 0x58]
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm1
call fcn.10003db0
movss dword [ebp - 0x28], xmm0
movss xmm0, dword [ebp - 0x78]
mulss xmm0, xmm0
call fcn.10003db0
movss xmm3, dword [0x100b9a58]
movaps xmm2, xmm3
divss xmm2, dword [ebp - 0x2c]
movaps xmm1, xmm2
mulss xmm2, dword [ebp - 0x4c]
mulss xmm1, dword [ebp - 0x50]
movss dword [ebp - 0x1c], xmm2
movaps xmm2, xmm3
divss xmm2, dword [ebp - 0x28]
movss dword [ebp - 0x20], xmm1
movaps xmm1, xmm2
mulss xmm2, dword [ebp - 0x58]
mulss xmm1, dword [ebp - 0x5c]
movss dword [ebp - 0x34], xmm2
movss dword [ebp - 0x30], xmm1
movaps xmm1, xmm3
divss xmm1, xmm0
movss xmm0, dword [ebp - 0x64]
mulss xmm1, dword [ebp - 0x78]
mulss xmm0, xmm0
movss dword [ebp - 0x38], xmm1
movss xmm1, dword [ebp - 0x68]
mulss xmm1, xmm1
addss xmm0, xmm1
call fcn.10003db0
movss xmm1, dword [ebp - 0x74]
movss dword [ebp - 0x2c], xmm0
movss xmm0, dword [ebp - 0x70]
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm1
call fcn.10003db0
movss dword [ebp - 0x28], xmm0
movss xmm0, dword [ebp - 0x84]
mulss xmm0, xmm0
call fcn.10003db0
movss xmm3, dword [0x100b9a58]
movaps xmm1, xmm3
movss xmm4, dword [esi + 0x24]
divss xmm1, dword [ebp - 0x2c]
movss xmm7, dword [esi + 0x28]
xorps xmm5, xmm5
movaps xmm2, xmm1
movaps xmm6, xmm7
mulss xmm1, dword [ebp - 0x64]
mulss xmm2, dword [ebp - 0x68]
movss dword [ebp - 0x18], xmm1
movaps xmm1, xmm3
divss xmm1, dword [ebp - 0x28]
divss xmm3, xmm0
mulss xmm6, dword [ebp - 0x30]
movaps xmm0, xmm4
mulss xmm0, dword [ebp - 0x20]
mulss xmm3, dword [ebp - 0x84]
movss dword [ebp - 0x14], xmm2
movaps xmm2, xmm1
mulss xmm2, dword [ebp - 0x74]
mulss xmm1, dword [ebp - 0x70]
movss dword [ebp - 0x20], xmm0
movaps xmm0, xmm4
mulss xmm0, dword [ebp - 0x1c]
movss dword [ebp - 0x24], xmm2
movaps xmm2, xmm7
mulss xmm2, dword [ebp - 0x34]
movss dword [ebp - 0x1c], xmm0
movss xmm0, dword [esi + 0x2c]
movss dword [ebp - 0x3c], xmm1
movaps xmm1, xmm0
mulss xmm0, dword [ebp - 0x38]
mulss xmm7, xmm5
movss dword [ebp - 0x38], xmm0
mulss xmm1, xmm5
mulss xmm4, xmm5
movss dword [ebp - 0x40], xmm3
movaps xmm3, xmm7
mulss xmm3, xmm5
movss dword [ebp - 0x2c], xmm2
mulss xmm2, dword [ebp - 0x18]
movss dword [ebp - 0x44], xmm4
mulss xmm4, xmm5
movaps xmm5, xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x28], xmm1
movss xmm1, dword [ebp - 0x1c]
mulss xmm1, dword [ebp - 0x18]
mulss xmm5, xmm0
movaps xmm0, xmm6
mulss xmm0, dword [ebp - 0x14]
movss dword [ebp - 0x34], xmm7
movss xmm7, dword [ebp - 0x14]
addss xmm2, xmm0
movss xmm0, dword [ebp - 0x20]
mulss xmm0, xmm7
mulss xmm7, dword [ebp - 0x28]
addss xmm1, xmm0
movss xmm0, dword [ebp - 0x28]
mulss xmm0, dword [ebp - 0x18]
addss xmm2, xmm3
addss xmm0, xmm7
movss xmm7, dword [ebp - 0x3c]
addss xmm1, xmm4
addss xmm0, xmm5
addss xmm2, xmm1
movaps xmm1, xmm7
mulss xmm1, dword [ebp - 0x1c]
addss xmm2, xmm0
movaps xmm0, xmm6
mulss xmm0, dword [ebp - 0x24]
movss dword [esi + 0x24], xmm2
movss xmm2, dword [ebp - 0x2c]
mulss xmm2, xmm7
addss xmm2, xmm0
addss xmm2, xmm3
movss xmm3, dword [ebp - 0x24]
movaps xmm0, xmm3
mulss xmm0, dword [ebp - 0x20]
addss xmm1, xmm0
addss xmm1, xmm4
addss xmm2, xmm1
movss xmm4, dword [ebp - 0x40]
movss xmm1, dword [ebp - 0x28]
mulss xmm3, xmm1
movaps xmm0, xmm1
mulss xmm0, xmm7
addss xmm0, xmm3
movss xmm3, dword [ebp - 0x1c]
addss xmm0, xmm5
xorps xmm5, xmm5
mulss xmm6, xmm5
mulss xmm3, xmm5
addss xmm2, xmm0
mulss xmm1, xmm5
movaps xmm0, xmm4
mulss xmm0, dword [ebp - 0x34]
movss dword [esi + 0x28], xmm2
addss xmm1, xmm1
movss xmm2, dword [ebp - 0x2c]
mulss xmm2, xmm5
addss xmm2, xmm6
addss xmm2, xmm0
movss xmm0, dword [ebp - 0x20]
mulss xmm0, xmm5
addss xmm3, xmm0
movaps xmm0, xmm4
mulss xmm0, dword [ebp - 0x44]
mulss xmm4, dword [ebp - 0x38]
addss xmm3, xmm0
addss xmm4, xmm1
addss xmm2, xmm3
addss xmm2, xmm4
movss dword [esi + 0x2c], xmm2
mov eax, dword fs:[0x2c]
mov esi, dword [0x100c2ee8]
mov ecx, dword [eax + esi*4]
mov eax, dword [0x100c7d0c]
cmp eax, dword [ecx + 4]
jg 0x1000b046
mov eax, dword fs:[0x2c]
mov ecx, dword [eax + esi*4]
mov eax, dword [0x100c7d14]
cmp eax, dword [ecx + 4]
jg 0x1000b097
mov eax, dword fs:[0x2c]
mov ecx, dword [eax + esi*4]
mov eax, dword [0x100c7d08]
cmp eax, dword [ecx + 4]
jg 0x1000b0e8
mov ecx, dword [0x100c7d18]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
mov ecx, dword [0x100c7d18]
fstp dword [ebp - 0x40]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
mov eax, dword [0x100c39e0]
movss xmm1, dword [ebp - 0x40]
fstp dword [ebp - 0x44]
movss xmm0, dword [ebp - 0x44]
movss xmm2, dword [eax + 0x24]
comiss xmm2, xmm1
xorps xmm0, xmmword [0x100b9d40]
ja 0x1000af21
comiss xmm0, xmm2
jbe 0x1000af1e
movaps xmm1, xmm0
jmp 0x1000af21
movaps xmm1, xmm2
mov ecx, dword [0x100c7d10]
movss dword [eax + 0x24], xmm1
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
mov ecx, dword [0x100c7d10]
fstp dword [ebp - 0x40]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
mov eax, dword [0x100c39e0]
movss xmm1, dword [ebp - 0x40]
fstp dword [ebp - 0x44]
movss xmm0, dword [ebp - 0x44]
movss xmm2, dword [eax + 0x28]
comiss xmm2, xmm1
xorps xmm0, xmmword [0x100b9d40]
ja 0x1000af73
comiss xmm0, xmm2
jbe 0x1000af70
movaps xmm1, xmm0
jmp 0x1000af73
movaps xmm1, xmm2
mov ecx, dword [0x100c7d00]
movss dword [eax + 0x28], xmm1
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
mov ecx, dword [0x100c7d00]
fstp dword [ebp - 0x40]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
mov ecx, dword [0x100c39e0]
movss xmm0, dword [ebp - 0x40]
fstp dword [ebp - 0x44]
movss xmm1, dword [ebp - 0x44]
movss xmm2, dword [ecx + 0x2c]
comiss xmm2, xmm0
xorps xmm1, xmmword [0x100b9d40]
ja 0x1000afc6
comiss xmm1, xmm2
jbe 0x1000afc3
movaps xmm0, xmm1
jmp 0x1000afc6
movaps xmm0, xmm2
movss dword [ecx + 0x2c], xmm0
xorps xmm0, xmm0
mov eax, dword [0x100c765c]
movss xmm1, dword [ecx + 0x24]
cmp byte [eax], 0
jne 0x1000b005
comiss xmm1, xmm0
jbe 0x1000afe6
or dword [ecx + 0x30], 8
comiss xmm0, xmm1
jbe 0x1000afef
or dword [ecx + 0x30], 0x10
movss xmm1, dword [ecx + 0x28]
comiss xmm1, xmm0
jbe 0x1000b000
or dword [ecx + 0x30], 0x400
comiss xmm0, xmm1
jmp 0x1000b02b
comiss xmm0, xmm1
jbe 0x1000b00e
or dword [ecx + 0x30], 8
comiss xmm1, xmm0
jbe 0x1000b017
or dword [ecx + 0x30], 0x10
movss xmm1, dword [ecx + 0x28]
comiss xmm0, xmm1
jbe 0x1000b028
or dword [ecx + 0x30], 0x400
comiss xmm1, xmm0
jbe 0x1000b034
or dword [ecx + 0x30], 0x200
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push 0x100c7d0c
call fcn.1005566c
add esp, 4
cmp dword [0x100c7d0c], 0xffffffff
jne 0x1000aea0
mov dword [ebp - 4], 0
mov ecx, dword [0x100c3a2c]
push str.cl_forwardspeed
mov eax, dword [ecx]
mov eax, dword [eax + 0x44]
call eax
push 0x100c7d0c
mov dword [0x100c7d18], eax
mov dword [ebp - 4], 0xffffffff
call fcn.10055622
add esp, 4
jmp 0x1000aea0
push 0x100c7d14
call fcn.1005566c
add esp, 4
cmp dword [0x100c7d14], 0xffffffff
jne 0x1000aeba
mov dword [ebp - 4], 1
mov ecx, dword [0x100c3a2c]
push str.cl_sidespeed
mov eax, dword [ecx]
mov eax, dword [eax + 0x44]
call eax
push 0x100c7d14
mov dword [0x100c7d10], eax
mov dword [ebp - 4], 0xffffffff
call fcn.10055622
add esp, 4
jmp 0x1000aeba
push 0x100c7d08
call fcn.1005566c
add esp, 4
cmp dword [0x100c7d08], 0xffffffff
jne 0x1000aed4
mov dword [ebp - 4], 2
mov ecx, dword [0x100c3a2c]
push str.cl_upspeed
mov eax, dword [ecx]
mov eax, dword [eax + 0x44]
call eax
push 0x100c7d08
mov dword [0x100c7d00], eax
mov dword [ebp - 4], 0xffffffff
call fcn.10055622
add esp, 4
jmp 0x1000aed4