Function at 0x10037c09
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
sub esp, 0x50
mov eax, 0x10074759
call fcn.1004e0b0
sub esp, 0x170
push ebx
push esi
push edi
push str.HookedRakClientInterface::Send_BitStream_
call fcn.1004cccc
mov esi, dword [ebp + 0x5c]
lea eax, [ebp + 0x53]
pop ecx
xor ebx, ebx
mov ecx, esi
inc ebx
push ebx
push 8
push eax
call fcn.100015d1
cmp byte [ebp + 0x53], 0xc8
jne 0x10037e6e
mov ecx, esi
call fcn.10001691
push ebx
push 8
lea eax, [ebp + 0x53]
mov ecx, esi
push eax
call fcn.100015d1
push 0x3f
lea eax, [ebp]
mov ecx, esi
push eax
call fcn.10001583
mov eax, dword [0x1014d750]
cmp dword [eax + 0xee64], 0
je 0x10037d12
call fcn.1005befa
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp + 0x5c], xmm0
call fcn.1005befa
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp + 0x48], xmm0
call fcn.1005befa
movss xmm3, dword [ebp + 0x5c]
mulss xmm3, dword [0x100836d0]
movss xmm2, dword [0x100836dc]
movaps xmm0, xmm2
movd xmm4, eax
subss xmm0, xmm3
cvtdq2ps xmm4, xmm4
lea eax, [ebx + 0x7f]
mov word [ebp + 4], ax
mov eax, dword [0x1014d750]
addss xmm0, dword [ebp + 0x24]
mulss xmm4, dword [0x100836d4]
addss xmm4, dword [0x1007b568]
movss dword [ebp + 0x24], xmm0
movss xmm0, dword [ebp + 0x48]
mulss xmm0, dword [0x100836d0]
addss xmm4, dword [ebp + 0x2c]
subss xmm2, xmm0
movss dword [ebp + 0x2c], xmm4
addss xmm2, dword [ebp + 0x28]
movss dword [ebp + 0x28], xmm2
cmp byte [eax + 0x658], 0
je 0x10037daf
mov eax, dword [0x1017eec8]
xor ecx, ecx
mov edi, 0x4fb4
cmp dword [edi + eax - 0x1f40], ebx
jne 0x10037d5f
mov ecx, dword [0x1014d74c]
mov eax, dword [edi + eax]
push 0
sub eax, dword [ecx]
mov ecx, 0xa18
cdq
idiv ecx
push eax
call fcn.1002afa3
push eax
call fcn.1003d59f
mov ecx, eax
add esp, 0xc
mov eax, dword [0x1017eec8]
add edi, 4
cmp edi, 0x6ef4
jl 0x10037d2b
mov word [ebp], cx
mov ecx, dword [0x1017eec4]
mov eax, dword [ecx + 0x1e]
movss xmm0, dword [eax + 0x8a]
movss dword [ebp + 0x18], xmm0
mov eax, dword [ecx + 0x1e]
movss xmm0, dword [eax + 0x8e]
movss dword [ebp + 0x1c], xmm0
mov eax, dword [ecx + 0x1e]
movss xmm0, dword [eax + 0x92]
mov eax, dword [0x1014d750]
movss dword [ebp + 0x20], xmm0
mov byte [ebp + 0x36], 0
jmp 0x10037db5
mov ecx, dword [0x1017eec4]
cmp byte [eax + 0x24e], 0
je 0x10037e48
cmp dword [eax + 0x6da], 0xffffffff
je 0x10037e48
movss xmm0, dword [ebp + 0x24]
addss xmm0, dword [0x100836e0]
movss dword [ebp + 0x24], xmm0
movss xmm0, dword [ebp + 0x28]
addss xmm0, dword [0x100836e4]
movss dword [ebp + 0x28], xmm0
movss xmm0, dword [ebp + 0x2c]
addss xmm0, dword [0x100836e8]
movss dword [ebp + 0x2c], xmm0
mov eax, dword [eax + 0x6da]
mov eax, dword [ecx + eax*4 + 0x26]
mov ecx, dword [eax + 8]
movzx eax, byte [ecx + 0x1a]
sub eax, 0x11
je 0x10037e2d
sub eax, 1
je 0x10037e21
sub eax, 1
jne 0x10037e48
lea eax, [ebp + 0x18]
push eax
mov eax, dword [ecx + 8]
mov eax, dword [eax + 0x4c]
jmp 0x10037e3a
lea eax, [ebp + 0x18]
push eax
mov eax, dword [ecx + 4]
mov eax, dword [eax + 0x2a4]
mov eax, dword [eax + 0x14]
add eax, 0x30
push eax
call fcn.1003c448
pop ecx
pop ecx
mov ecx, esi
call fcn.10001689
push ebx
push 8
lea eax, [ebp + 0x5c]
mov byte [ebp + 0x5c], 0xc8
push eax
mov ecx, esi
call fcn.10001743
push 0x3f
lea eax, [ebp]
mov ecx, esi
push eax
call fcn.100016f2
cmp byte [ebp + 0x53], 0xce
jne 0x100380d9
push str.ID_BULLET_SYNC
call fcn.1004cccc
pop ecx
push 0x28
lea eax, [ebp + 0x14]
mov ecx, esi
push eax
call fcn.10001583
mov eax, dword [0x1014d750]
cmp byte [eax + 0x656], 0
je 0x10037ee5
push 0
push 0xffffffffffffffff
call fcn.1002880a
mov edx, eax
pop ecx
pop ecx
mov eax, dword [edx + 0x530]
cmp eax, 0x36
je 0x100385df
cmp eax, 0x37
je 0x100385df
movzx ecx, byte [edx + 0x718]
imul ecx, ecx, 0x1c
mov eax, dword [ecx + edx + 0x5a8]
test eax, eax
jle 0x10037ee0
inc eax
mov dword [ecx + edx + 0x5a8], eax
mov eax, dword [0x1014d750]
cmp byte [eax + 0x261], 0
je 0x100380d9
cmp byte [ebp + 0x14], 1
je 0x100380d9
cmp dword [eax + 0x6da], 0xffffffff
je 0x100380d9
movzx eax, word [eax + 0x6da]
lea ecx, [ebp - 0x68]
push ecx
lea ecx, [ebp - 0x5c]
push ecx
push eax
call fcn.1003708e
movzx ebx, al
mov eax, dword [0x1014d750]
push dword [eax + 0x6da]
call fcn.1003d238
mov ecx, dword [0x10193884]
add esp, 0x10
mov edi, eax
mov edx, dword [ecx]
call dword [edx]
push edi
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x64]
and dword [ebp + 0x40], 0
lea ecx, [ebp + 0x40]
and dword [ebp + 0x44], 0
and dword [ebp + 0x48], 0
mov edx, dword [eax]
push ecx
mov ecx, dword [0x1014d750]
push dword [ecx + 0x6f2]
mov ecx, eax
call dword [edx + 0x74]
test edi, edi
je 0x10038002
movss xmm0, dword [edi + 0x544]
ucomiss xmm0, dword [0x10075d48]
lahf
test ah, 0x44
jnp 0x10038002
lea eax, [ebp - 0x5c]
push eax
mov eax, dword [edi + 0x14]
add eax, 0x30
push eax
call fcn.1003c448
lea eax, [ebp + 0x23]
mov byte [ebp + 0x14], 2
push eax
mov eax, dword [0x1014d750]
mov ecx, dword [eax + 0x6da]
mov eax, dword [0x1017eec4]
mov eax, dword [eax + ecx*4 + 0x26]
mov eax, dword [eax + 8]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x2a4]
mov eax, dword [eax + 0x14]
add eax, 0x30
push eax
call fcn.1003c448
movss xmm0, dword [ebp + 0x40]
add esp, 0x10
movss dword [ebp + 0x23], xmm0
movss xmm0, dword [ebp + 0x44]
movss dword [ebp + 0x27], xmm0
movss xmm0, dword [ebp + 0x48]
mov dword [ebp + 0x2f], 0xbc23d70a
mov dword [ebp + 0x33], 0xbc23d70a
mov dword [ebp + 0x37], 0xbc23d70a
movss dword [ebp + 0x2b], xmm0
mov ecx, dword [0x1014d750]
mov ax, word [ecx + 0x6da]
mov word [ebp + 0x15], ax
cmp byte [ecx + 0xb379], 0
je 0x10038029
mov eax, 0xffff
mov byte [ebp + 0x14], 0
mov word [ebp + 0x15], ax
mov ecx, dword [ecx + 0x6da]
mov eax, dword [0x1017eec4]
mov eax, dword [eax + ecx*4 + 0x26]
mov eax, dword [eax + 8]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x2a4]
movss xmm0, dword [eax + 0x540]
ucomiss xmm0, dword [0x10075d48]
lahf
test ah, 0x44
jnp 0x100380d6
mov ecx, esi
call fcn.10001689
push 1
push 8
lea eax, [ebp + 0x68]
mov byte [ebp + 0x68], 0xce
push eax
mov ecx, esi
call fcn.10001743
push 0x28
lea eax, [ebp + 0x14]
mov ecx, esi
push eax
call fcn.100016f2
mov ecx, dword [0x1017eea0]
push 0
push 7
push 1
push esi
call fcn.1003cac6
mov eax, dword [0x1014d750]
cmp dword [eax + 0x6da], 0xffffffff
je 0x100385df
mov eax, dword [0x1017eec4]
push ebx
mov eax, dword [eax + 0x1e]
movzx eax, byte [eax + 0x18d]
push eax
call fcn.10036f1a
mov eax, dword [0x1014d750]
push ecx
fstp dword [esp]
push dword [eax + 0x6da]
call fcn.10038667
add esp, 0x10
jmp 0x100385df
xor ebx, ebx
inc ebx
cmp byte [ebp + 0x53], 0xcb
jne 0x1003813d
mov ecx, esi
call fcn.10001691
push ebx
push 8
lea eax, [ebp + 0x53]
mov ecx, esi
push eax
call fcn.100015d1
push 0x1f
lea eax, [ebp + 0x20]
mov ecx, esi
push eax
call fcn.10001583
mov ecx, dword [0x1014d750]
cmp byte [ecx + 0x653], 0
je 0x1003813d
mov ecx, dword [ecx + 0x6da]
lea eax, [ebp + 0x2d]
push eax
mov eax, dword [0x1017eec4]
mov eax, dword [eax + ecx*4 + 0x26]
mov eax, dword [eax + 8]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x2a4]
mov eax, dword [eax + 0x14]
add eax, 0x30
push eax
call fcn.1003c448
pop ecx
pop ecx
cmp byte [ebp + 0x53], 0xcf
jne 0x100385c5
mov ecx, esi
call fcn.10001691
push ebx
push 8
lea eax, [ebp + 0x53]
mov ecx, esi
push eax
call fcn.100015d1
push 0x44
lea eax, [ebp - 0x50]
mov ecx, esi
push eax
call fcn.10001583
mov ecx, dword [0x1014d750]
push 0x20
pop edi
cmp byte [ecx + 0x40], 0
je 0x1003823c
test byte [ebp - 0x4c], 4
jne 0x1003823c
lea ecx, [ebp - 0x17c]
call fcn.100014cd
and dword [ebp - 4], 0
lea ecx, [ebp - 0x17c]
call fcn.100016c3
and dword [ebp + 0x5c], 0
lea eax, [ebp + 0x5c]
push ebx
push 0x10
push eax
lea ecx, [ebp - 0x17c]
call fcn.10001743
movsd xmm0, qword [0x100836f0]
lea eax, [ebp + 0x44]
push ebx
push 0x40
push eax
lea ecx, [ebp - 0x17c]
movsd qword [ebp + 0x44], xmm0
call fcn.10001743
push ebx
push edi
lea eax, [ebp + 0x5c]
mov dword [ebp + 0x5c], 0x36
push eax
lea ecx, [ebp - 0x17c]
call fcn.10001743
push ebx
push edi
lea eax, [ebp + 0x5c]
mov dword [ebp + 0x5c], 3
push eax
lea ecx, [ebp - 0x17c]
call fcn.10001743
mov ecx, dword [0x1017eea0]
lea eax, [ebp - 0x17c]
push 0
push 0
push 0xa
push ebx
push eax
push 0x73
call fcn.1003ca9d
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x17c]
mov dword [ebp - 0x42], 0x46a16800
call fcn.100014e8
mov ecx, dword [0x1014d750]
cmp byte [ecx + 0x41], 0
je 0x100382fb
lea ecx, [ebp - 0x17c]
call fcn.100014cd
lea ecx, [ebp - 0x17c]
mov dword [ebp - 4], ebx
call fcn.100016c3
and dword [ebp + 0x5c], 0
lea eax, [ebp + 0x5c]
push ebx
push 0x10
push eax
lea ecx, [ebp - 0x17c]
call fcn.10001743
movsd xmm0, qword [0x100836f0]
lea eax, [ebp + 0x44]
push ebx
push 0x40
push eax
lea ecx, [ebp - 0x17c]
movsd qword [ebp + 0x44], xmm0
call fcn.10001743
push ebx
push edi
lea eax, [ebp + 0x5c]
mov dword [ebp + 0x5c], 0x36
push eax
lea ecx, [ebp - 0x17c]
call fcn.10001743
push ebx
push edi
lea eax, [ebp + 0x5c]
mov dword [ebp + 0x5c], 3
push eax
lea ecx, [ebp - 0x17c]
call fcn.10001743
mov ecx, dword [0x1017eea0]
lea eax, [ebp - 0x17c]
push 0
push 0
push 0xa
push ebx
push eax
push 0x73
call fcn.1003ca9d
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x17c]
mov dword [ebp - 0x42], 0x44778000
call fcn.100014e8
mov ecx, dword [0x1014d750]
cmp byte [ecx + 0x6c4], 0
je 0x1003833c
mov eax, 0x80
test byte [ebp - 0x4c], al
je 0x1003833c
mov eax, dword [0x1017eec4]
push 9
mov eax, dword [eax + 0x1e]
movzx eax, byte [eax + 0x18d]
push eax
push ecx
mov dword [esp], 0x4028f5c3
push dword [ecx + 0x6da]
call fcn.10038667
mov ecx, dword [0x1014d750]
add esp, 0x10
cmp byte [ecx + 0x6ce], 0
je 0x100383d4
push dword [ecx + 0x6cf]
call fcn.1003d238
push ebx
push 0xffffffffffffffff
mov edi, eax
call fcn.1002880a
mov ebx, eax
add esp, 0xc
mov eax, dword [0x1017eec4]
xor edx, edx
test eax, eax
je 0x100385df
mov ecx, dword [0x1014d750]
mov ecx, dword [ecx + 0x6cf]
cmp dword [eax + ecx*4 + 0x26], edx
je 0x100385df
test edi, edi
jne 0x10038393
mov edx, str.Player_does_not_exist.
jmp 0x100383a8
mov eax, dword [edi + 0x530]
cmp eax, 0x36
je 0x100383a3
cmp eax, 0x37
jne 0x100383a8
mov edx, str.The_player_is_dead.
test ebx, ebx
mov eax, str.You_are_dead.
cmovne eax, edx
cmp dword [0x100d4648], 1
jne 0x100385e3
mov eax, str.You_are_spectating
push eax
call fcn.1003cf20
pop ecx
mov ecx, dword [0x1014d750]
xor ebx, ebx
inc ebx
cmp dword [ecx + 0x14], 0
je 0x1003846a
call fcn.1005befa
movss xmm1, dword [0x100836d8]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x100836c8]
subss xmm1, xmm0
movss dword [ebp + 0x5c], xmm1
call fcn.1005befa
movss xmm1, dword [0x100836d8]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x100836c8]
subss xmm1, xmm0
movss dword [ebp + 0x48], xmm1
call fcn.1005befa
movss xmm1, dword [ebp + 0x5c]
mov ecx, dword [0x1014d750]
movss dword [ebp - 0x2a], xmm1
movss xmm1, dword [ebp + 0x48]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x10], 0x11040000
movss dword [ebp - 0x26], xmm1
mulss xmm0, dword [0x100836d4]
addss xmm0, dword [0x1007b568]
movss dword [ebp - 0x22], xmm0
cmp byte [ecx + 0x65c], 0
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
je 0x100384ad
call edi
mov ecx, dword [0x1014d750]
cmp dword [ecx + 0x65d], eax
jae 0x100384ad
push str._uuret
call fcn.1003dc1d
pop ecx
call edi
lea ecx, [eax + 0x4e20]
mov eax, dword [0x1014d750]
mov dword [eax + 0x65d], ecx
mov ecx, dword [0x1014d750]
cmp byte [ecx + 0xee53], 0
je 0x100384fa
call edi
mov ecx, dword [0x1014d750]
cmp dword [ecx + 0x65d], eax
jae 0x100384fa
call edi
mov ecx, dword [0x1014d750]
cmp dword [ecx + 0x65d], eax
jae 0x100384fa
push str._otopla
call fcn.1003dc1d
pop ecx
call edi
lea ecx, [eax + 0x4e20]
mov eax, dword [0x1014d750]
mov dword [eax + 0x65d], ecx
mov ecx, dword [0x1014d750]
cmp byte [ecx + 0x25c], 0
je 0x1003857b
xor eax, eax
mov dword [ebp + 0x44], 0xc2700000
mov dword [ebp + 0x48], 0xc2700000
mov word [ebp - 0x12], ax
call fcn.1005befa
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x100836cc]
addss xmm0, dword [0x10075d60]
movss dword [ebp - 0x1e], xmm0
call fcn.1005befa
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x100836cc]
addss xmm0, dword [0x10075d60]
movss dword [ebp - 0x1a], xmm0
call fcn.1005befa
and eax, 0x80000001
jns 0x1003856a
dec eax
or eax, 0xfffffffe
inc eax
movss xmm0, dword [ebp + eax*4 + 0x44]
mov ecx, dword [0x1014d750]
movss dword [ebp - 0x16], xmm0
cmp byte [ecx + 0x6c7], 0
je 0x1003859f
test byte [ebp - 0x4c], 4
jne 0x1003859f
mov dword [ebp - 0x3e], 0xffc00000
mov dword [ebp - 0x3a], 0xffc00000
mov dword [ebp - 0x36], 0xffc00000
mov ecx, esi
call fcn.10001689
push ebx
push 8
lea eax, [ebp + 0x4c]
mov byte [ebp + 0x4c], 0xcf
push eax
mov ecx, esi
call fcn.10001743
push 0x44
lea eax, [ebp - 0x50]
mov ecx, esi
push eax
call fcn.100016f2
test esi, esi
je 0x10038622
push dword [ebp + 0x68]
push dword [ebp + 0x64]
push dword [ebp + 0x60]
push esi
call fcn.10003b64
add esp, 0x10
test al, al
jne 0x10038622
xor al, al
jmp 0x10038638
test eax, eax
jne 0x100383c4
mov eax, dword [0x1014d750]
mov eax, dword [eax + 0xeec5]
cmp eax, 0xffffffff
jne 0x1003860c
movzx eax, byte [edi + 0x718]
imul eax, eax, 0x1c
mov eax, dword [eax + edi + 0x5a0]
mov dword [ebx + 0x760], eax
mov dword [ebx + 0x764], edi
call fcn.1003dc83
jmp 0x100383cb
mov eax, dword [0x1017eea0]
push dword [ebp + 0x68]
push dword [ebp + 0x64]
mov ecx, dword [eax]
push dword [ebp + 0x60]
push esi
mov eax, dword [ecx]
call dword [eax + 0x18]
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
add ebp, 0x54
leave
ret 0x10