Function at 0x1000af90
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x44
cmp byte [0x10245425], 0
push ebx
push esi
push edi
je 0x1000b5e9
cmp byte [0x10245426], 0
jne 0x1000b5e9
cmp byte [0x10245427], 0
jne 0x1000b5e9
cmp byte [0x1024542c], 0
je 0x1000b5e9
cmp byte [0x1024542b], 0
xorps xmm3, xmm3
movss xmm2, dword [0x102093f4]
je 0x1000afe9
xorps xmm4, xmm4
jmp 0x1000afec
movaps xmm4, xmm2
movss xmm1, dword [0x10245414]
movss xmm0, dword [0x10245418]
subss xmm0, dword [0x10245444]
subss xmm1, dword [0x10245440]
mov dword [esp + 0x20], 0
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm1
movss dword [esp + 0x1c], xmm0
sqrtss xmm0, dword [esp + 0x1c]
movss dword [esp + 0x20], xmm0
addss xmm4, dword [esp + 0x20]
mov dh, byte [0x10245428]
movss dword [0x10245454], xmm4
test dh, dh
je 0x1000b052
movss xmm3, dword [0x102093a0]
cmp byte [0x1024542b], 0
movss xmm0, dword [0x1024541c]
subss xmm0, dword [0x10245448]
andps xmm0, xmmword [0x10209830]
subss xmm0, xmm3
jne 0x1000b096
mov eax, dword [0x10245430]
test eax, eax
jle 0x1000b08e
cmp eax, 1
jg 0x1000b08e
movss xmm2, dword [0x102092f8]
jmp 0x1000b096
movss xmm2, dword [0x10209408]
mov esi, dword [0x10245430]
mov edi, 0xf
comiss xmm0, xmm2
mov dword [esp + 0x40], 4
mov eax, esi
mov dword [esp + 0x44], edi
mov bl, 8
mov dword [esp + 0x18], 7
lea ecx, [edi + 1]
mov dword [esp + 0x1c], 8
xorps xmm0, xmm0
movaps xmmword [esp + 0x30], xmm0
setae dl
mov dword [esp + 0x30], 0x6c6c756e
mov byte [esp + 0x17], dl
mov byte [esp + 0x34], 0
sub eax, 1
je 0x1000b17a
sub eax, 1
je 0x1000b161
cmp esi, 3
jl 0x1000b22c
mov ax, word [0x101e7774]
mov word [esp + 0x30], ax
mov al, byte [0x101e7776]
mov dword [esp + 0x40], 3
mov byte [esp + 0x32], al
mov byte [esp + 0x33], 0
movss xmm0, dword [0x10209490]
comiss xmm0, xmm4
ja 0x1000b22c
movss xmm0, dword [0x10209494]
comiss xmm0, xmm4
jbe 0x1000b140
mov bl, 0xb
jmp 0x1000b22c
movss xmm0, dword [0x10209498]
comiss xmm0, xmm4
jbe 0x1000b154
mov bl, 6
jmp 0x1000b22c
movss xmm0, dword [0x1020949c]
jmp 0x1000b222
mov eax, 0x6862
mov dword [esp + 0x40], 2
mov word [esp + 0x30], ax
mov byte [esp + 0x32], 0
jmp 0x1000b11b
mov dword [esp + 0x40], 2
mov byte [esp + 0x32], 0
test dh, dh
jne 0x1000b1e1
comiss xmm4, dword [0x102094a4]
mov eax, 0x6a6c
mov word [esp + 0x30], ax
jb 0x1000b1a5
mov bl, 3
jmp 0x1000b22c
comiss xmm4, dword [0x102094a0]
jb 0x1000b1b2
mov bl, cl
jmp 0x1000b22c
comiss xmm4, dword [0x1020949c]
jb 0x1000b1bf
mov bl, 2
jmp 0x1000b22c
comiss xmm4, dword [0x10209498]
jb 0x1000b1cc
mov bl, 6
jmp 0x1000b22c
comiss xmm4, dword [0x10209490]
mov ebx, dword [esp + 0x1c]
mov ecx, 0xb
cmovae ebx, ecx
jmp 0x1000b22c
movss xmm0, dword [0x102094a8]
mov eax, 0x626a
comiss xmm0, xmm4
mov word [esp + 0x30], ax
ja 0x1000b22c
movss xmm0, dword [0x102094b0]
comiss xmm0, xmm4
jbe 0x1000b209
mov bl, 0xb
jmp 0x1000b22c
movss xmm0, dword [0x102094b4]
comiss xmm0, xmm4
jbe 0x1000b21a
mov bl, 6
jmp 0x1000b22c
movss xmm0, dword [0x102094bc]
comiss xmm0, xmm4
mov ebx, ecx
cmova ebx, dword [esp + 0x18]
cmp byte [0x1024542b], 0
je 0x1000b2ad
push 3
lea esi, [esp + 0x34]
mov dword [esp + 0x44], 3
push 0x101e7778
push esi
call sub.VCRUNTIME140.dll_memmove
movss xmm0, dword [0x10209420]
add esp, 0xc
mov byte [esi + 3], 0
movss xmm4, dword [0x10245454]
comiss xmm0, xmm4
jbe 0x1000b26e
mov bl, 8
jmp 0x1000b2a5
movss xmm0, dword [0x10209428]
comiss xmm0, xmm4
jbe 0x1000b27f
mov bl, 0xb
jmp 0x1000b2a5
movss xmm0, dword [0x10209438]
comiss xmm0, xmm4
jbe 0x1000b290
mov bl, 6
jmp 0x1000b2a5
movss xmm0, dword [0x1020943c]
mov ebx, 0x10
comiss xmm0, xmm4
cmova ebx, dword [esp + 0x18]
mov dl, byte [esp + 0x17]
mov edi, dword [esp + 0x44]
cmp byte [0x10249c91], 0
jne 0x1000b2c0
test dl, dl
movzx ebx, bl
cmovne ebx, dword [esp + 0x1c]
test dl, dl
je 0x1000b31a
mov ecx, dword [esp + 0x40]
mov eax, edi
sub eax, ecx
cmp eax, 2
jb 0x1000b2f4
lea eax, [ecx + 2]
cmp edi, 0xf
mov dword [esp + 0x40], eax
mov esi, 0x662d
lea eax, [esp + 0x30]
cmova eax, dword [esp + 0x30]
mov word [eax + ecx], si
mov byte [eax + ecx + 2], 0
jmp 0x1000b30e
push 2
push 0x101e777c
push dword [esp + 0x24]
lea ecx, [esp + 0x3c]
push 2
call fcn.10004290
mov dl, byte [esp + 0x17]
movss xmm4, dword [0x10245454]
mov edi, dword [esp + 0x44]
xor eax, eax
cmp byte [0x1024542b], al
je 0x1000b32d
comiss xmm4, dword [0x1020940c]
jmp 0x1000b334
comiss xmm4, dword [0x1020946c]
setae al
test eax, eax
je 0x1000b5a5
cmp byte [0x10249c90], 0
jne 0x1000b350
test dl, dl
jne 0x1000b5a5
cmp byte [0x10249c92], 0
je 0x1000b5a5
mov edx, dword [0x10245430]
lea ecx, [esp + 0x30]
movss xmm0, dword [0x1024546c]
movss xmm1, dword [0x10245464]
movss xmm2, dword [0x10245460]
movss xmm3, dword [0x1024545c]
cvtps2pd xmm4, xmm4
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm2
cvtps2pd xmm3, xmm3
cmp edx, 2
jle 0x1000b4a9
cmp edi, 0xf
movsx eax, bl
cmova ecx, dword [esp + 0x30]
sub esp, 8
movsd qword [esp], xmm0
push eax
push edx
push eax
sub esp, 8
movsd qword [esp], xmm1
push eax
sub esp, 8
movsd qword [esp], xmm2
push eax
sub esp, 8
movsd qword [esp], xmm3
push eax
push dword [0x10245458]
push eax
sub esp, 8
movsd qword [esp], xmm4
push ecx
push eax
push str.__b__c_s:__.2f__bunits___b__c_d_b_strafes___c_.0f_b_pre___c_.0f_b_max___c_.1f_b_height___c_d_b_bhops___c_.0f_b_sync
push 0
push 0
push dword [0x10249c8c]
call fcn.1000ae20
mov eax, dword [0x10213bf8]
lea edx, [esp + 0x78]
push str._delusional_
push edx
push eax
mov ecx, dword [eax]
mov dword [esp + 0x84], 0xff0000ff
call dword [ecx + 0x64]
mov edx, dword [0x10213bf8]
add esp, 0x6c
movss xmm0, dword [0x1024546c]
cmp dword [esp + 0x44], 0xf
movss xmm1, dword [0x10245464]
mov eax, dword [edx]
movss xmm2, dword [0x10245460]
movss xmm3, dword [0x1024545c]
movss xmm4, dword [0x10245454]
mov ecx, dword [eax + 0x68]
lea eax, [esp + 0x30]
cmova eax, dword [esp + 0x30]
sub esp, 8
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
movsd qword [esp], xmm0
push dword [0x10245430]
cvtps2pd xmm2, xmm2
sub esp, 0x18
movsd qword [esp + 0x10], xmm1
cvtps2pd xmm3, xmm3
movsd qword [esp + 8], xmm2
movsd qword [esp], xmm3
push dword [0x10245458]
cvtps2pd xmm4, xmm4
sub esp, 8
movsd qword [esp], xmm4
push eax
push str._s:__.2f_units___d_strafes___.0f_pre___.0f_max___.1f_height___d_bhops___.0f_sync__n
push edx
call ecx
add esp, 0x3c
jmp 0x1000b5a1
cmp edi, 0xf
movzx eax, bl
cmova ecx, dword [esp + 0x30]
sub esp, 8
movsd qword [esp], xmm0
push eax
sub esp, 8
movsd qword [esp], xmm1
push eax
sub esp, 8
movsd qword [esp], xmm2
push eax
sub esp, 8
movsd qword [esp], xmm3
push eax
push dword [0x10245458]
push eax
sub esp, 8
movsd qword [esp], xmm4
push ecx
push eax
push str.__b__c_s:__.2f__bunits___b__c_d_b_strafes___c_.0f_b_pre___c_.0f_b_max___c_.1f_b_height___c_.0f_b_sync
push 0
push 0
push dword [0x10249c8c]
call fcn.1000ae20
mov eax, dword [0x10213bf8]
lea edx, [esp + 0x70]
push str._delusional_
push edx
push eax
mov ecx, dword [eax]
mov dword [esp + 0x7c], 0xff0000ff
call dword [ecx + 0x64]
mov edx, dword [0x10213bf8]
add esp, 0x64
movss xmm0, dword [0x1024546c]
movss xmm1, dword [0x10245464]
cmp dword [esp + 0x44], 0xf
mov eax, dword [edx]
movss xmm2, dword [0x10245460]
movss xmm3, dword [0x1024545c]
movss xmm4, dword [0x10245454]
mov ecx, dword [eax + 0x68]
lea eax, [esp + 0x30]
cmova eax, dword [esp + 0x30]
sub esp, 0x20
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
movsd qword [esp + 0x18], xmm0
cvtps2pd xmm2, xmm2
movsd qword [esp + 0x10], xmm1
cvtps2pd xmm3, xmm3
movsd qword [esp + 8], xmm2
movsd qword [esp], xmm3
push dword [0x10245458]
cvtps2pd xmm4, xmm4
sub esp, 8
movsd qword [esp], xmm4
push eax
push str._s:__.2f_units___d_strafes___.0f_pre___.0f_max___.1f_height___.0f_sync__n
push edx
call ecx
add esp, 0x38
mov edi, dword [esp + 0x44]
mov byte [0x1024542c], 0
cmp edi, 0xf
jbe 0x1000b5e0
mov ecx, dword [esp + 0x30]
inc edi
mov eax, ecx
cmp edi, 0x1000
jb 0x1000b5d6
mov ecx, dword [eax - 4]
add edi, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1000b5d6
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edi
push ecx
call fcn.10177006
add esp, 8
mov al, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret