Function at 0x100027f0
Capabilities:
Check for time delay via gettickcount
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x88
mov eax, dword [0x10187080]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0x74], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x74]
mov ecx, eax
call fcn.100414c0
call fcn.10027530
push 0x1018b11c
push dword [ebp - 0x74]
mov edx, 0x1018b0e8
mov dword [ebp - 0x70], eax
mov ecx, 0x1018b0f4
call fcn.10028080
push dword [ebp - 0x74]
mov ecx, 0x1018b118
call fcn.10028310
add esp, 0xc
cmp byte [0x1018ae58], 0
je 0x1000286a
cmp byte [0x1018b1e1], 0
je 0x1000286f
cmp byte [0x1018ae37], 0
jne 0x1000286f
call fcn.1001d600
cmp byte [0x1018b0f9], 0
je 0x10002896
call fcn.10027530
mov edx, dword [0x1018b108]
mov ecx, eax
call fcn.10027350
call fcn.10027530
mov ecx, eax
call fcn.100273f0
push ebx
push esi
push edi
call fcn.10027530
cmp byte [0x1018b25b], 0
mov esi, eax
mov dword [ebp - 0x64], 0
je 0x1000295a
mov dword [ebp - 0x6c], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x6c]
mov ecx, eax
call fcn.100414c0
push dword [ebp - 0x6c]
call fcn.1004d6b0
add esp, 4
test al, al
je 0x1000295a
lea edx, [ebp - 0x64]
mov ecx, esi
call fcn.100414c0
push dword [ebp - 0x64]
lea ecx, [ebp - 0x6c]
call fcn.100284f0
mov ecx, dword [ebp - 0x6c]
add esp, 4
lea eax, [ecx - 4]
cmp eax, 0x20
ja case.0x1000290a.6
movzx eax, byte [eax + 0x10004554]
jmp dword [eax*4 + 0x1000454c]
mov dword [ebp - 0x68], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x68]
mov ecx, eax
call fcn.100414c0
push dword [ebp - 0x68]
mov ecx, dword [ebp - 0x6c]
call fcn.1004d540
add esp, 4
jmp 0x1000295a
push dword [ebp - 0x64]
lea edx, [ebp - 0x60]
call fcn.10028590
push dword [ebp - 0x64]
mov edx, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x6c]
call fcn.1004b940
add esp, 8
cmp byte [0x1018b276], 0
je 0x10002973
lea ecx, [ebp - 0x60]
call fcn.1003d270
mov ecx, dword [ebp - 0x60]
call fcn.1002b480
cmp byte [0x1018b275], 0
jne 0x1000298d
mov edx, 0x1018b268
mov ecx, 0x1018b264
call fcn.1002bb10
jmp 0x1000299e
mov edx, dword [0x1018b278]
mov ecx, dword [0x1018b26c]
call fcn.1002bbb0
cmp byte [0x1018b0b9], 0
je 0x100029b7
xorps xmm0, xmm0
call fcn.1002dcf0
xorps xmm0, xmm0
call fcn.1002dc50
cmp byte [0x1018b0d7], 0
mov edi, dword [sym.imp.USER32.dll_GetKeyState]
mov ebx, dword [sym.imp.ScriptHook.dll_protected:_void___thiscall_ScriptThread::Wait_unsigned_int_]
je 0x10002b41
mov dword [ebp - 0x6c], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x6c]
mov ecx, eax
call fcn.100414c0
cmp byte [0x1018b0bf], 0
push dword [ebp - 0x6c]
je 0x10002ab1
xor cl, cl
call fcn.10041e60
push dword [ebp - 0x6c]
lea ecx, [ebp - 0x60]
call fcn.1003c960
push dword [ebp - 0x6c]
call fcn.10041710
movss xmm0, dword [0x1017e468]
add esp, 0xc
comiss xmm0, dword [ebp - 0x60]
jb 0x10002b41
push dword [ebp - 0x6c]
call fcn.10027d40
mov esi, dword [ebp - 0x6c]
add esp, 4
mov ecx, str.jump_std
call fcn.10042680
mov ecx, str.jump_std
call fcn.100425e0
test al, al
jne 0x10002a6a
mov ecx, dword [0x1018b210]
push 0
call ebx
mov ecx, str.jump_std
call fcn.100425e0
test al, al
je 0x10002a52
push 0x578
sub esp, 0x10
mov edx, str.jump_land_roll
push 1
push 1
push 0
push ecx
mov dword [esp], 0x41000000
push str.jump_std
push esi
call fcn.10042930
cmp byte [0x1018b117], 0
push dword [ebp - 0x6c]
sete cl
call fcn.10041e60
add esp, 0x30
mov byte [0x1018b0bf], 0
jmp 0x10002b41
call fcn.10028b50
add esp, 4
test al, al
je 0x10002b41
push 0x20
call edi
test ax, ax
mov al, byte [0x1018aea8]
jns 0x10002ade
test al, al
jne 0x10002ade
mov word [0x1018aea8], 1
jmp 0x10002b02
cmp al, 1
jne 0x10002af4
push 0x20
call edi
test ax, ax
js 0x10002af4
mov word [0x1018aea8], 0x100
mov edx, 0xe
call fcn.1002b9d0
test al, al
je 0x10002b41
movss xmm3, dword [0x1017e4e4]
sub esp, 0x1c
xorps xmm2, xmm2
mov dword [esp + 0xc], 0x42c80000
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0x42d20000
push dword [ebp - 0x6c]
call fcn.10041600
add esp, 0x20
mov byte [0x1018b0bf], 1
call fcn.1003f180
cmp byte [0x1018b274], 0
je 0x10002b90
mov edx, 0x1018b268
mov ecx, 0x1018b264
call fcn.1002bb10
mov edx, dword [0x1018b268]
mov ecx, dword [0x1018b264]
cmp edx, 0x3b
jae 0x10002b78
inc edx
mov dword [0x1018b268], edx
jmp 0x10002b8b
inc ecx
mov dword [0x1018b268], 0
mov dword [0x1018b264], ecx
xor edx, edx
call fcn.1002bbb0
mov dword [ebp - 0x64], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x64]
mov ecx, eax
call fcn.100414c0
push dword [ebp - 0x64]
call fcn.1003cac0
add esp, 4
test al, al
je 0x10002c16
cmp byte [0x1018b246], 0
je 0x10002c16
push dword [ebp - 0x64]
lea ecx, [ebp - 0x68]
mov dword [ebp - 0x68], 0
call fcn.10029d10
mov ecx, dword [0x1018b23c]
add esp, 4
cmp ecx, 0x85
jne 0x10002bec
xor ecx, ecx
jmp 0x10002bed
inc ecx
mov edx, dword [0x101899c8]
mov dword [0x1018b23c], ecx
test edx, edx
jne 0x10002c04
mov edx, 0x85
jmp 0x10002c05
inc edx
push dword [ebp - 0x68]
mov dword [0x101899c8], edx
call fcn.10029930
add esp, 4
cmp byte [0x1018b0a8], 0
je 0x10002d35
mov edx, 8
lea ecx, [ebp - 0x60]
call fcn.1002b050
mov eax, dword [ebp - 0x60]
test eax, eax
je 0x10002d35
push eax
lea ecx, [ebp - 0x5c]
call fcn.1003cca0
mov dword [ebp - 0x68], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x68]
mov ecx, eax
call fcn.100414c0
movss xmm0, dword [ebp - 0x5c]
lea eax, [ebp - 0x48]
movss dword [ebp - 0x6c], xmm0
lea edx, [ebp - 0x4c]
movss xmm0, dword [ebp - 0x58]
lea ecx, [ebp - 0x50]
push eax
push dword [ebp - 0x68]
movss dword [ebp - 0x64], xmm0
movss xmm0, dword [ebp - 0x54]
movss dword [ebp - 0x60], xmm0
call fcn.10028080
movss xmm0, dword [ebp - 0x60]
lea ecx, [ebp - 0x7c]
movss xmm3, dword [ebp - 0x6c]
add esp, 4
movss xmm2, dword [ebp - 0x48]
movss xmm1, dword [ebp - 0x4c]
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x64]
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x50]
call fcn.10042720
movss xmm0, dword [0x1017e4e0]
add esp, 8
comiss xmm0, dword [ebp - 0x7c]
mov edi, 0x96
mov ecx, 0xff
mov esi, 0x2f
xorps xmm0, xmm0
movss dword [ebp - 0x68], xmm0
setae al
test al, al
cmove edi, ecx
movss xmm2, dword [ebp - 0x54]
movss xmm3, dword [0x1017e4b0]
addss xmm2, xmm0
movss xmm1, dword [ebp - 0x58]
movss xmm0, dword [ebp - 0x5c]
push edi
push ecx
call fcn.1003d800
movss xmm0, dword [ebp - 0x68]
add esp, 8
addss xmm0, dword [0x1017e484]
movss dword [ebp - 0x68], xmm0
sub esi, 1
jne 0x10002cf3
mov edi, dword [sym.imp.USER32.dll_GetKeyState]
call fcn.1004ac30
call fcn.1004aea0
cmp byte [0x1018b0d6], 0
je 0x10002e43
mov dword [ebp - 0x68], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x68]
mov ecx, eax
call fcn.100414c0
push dword [ebp - 0x68]
lea ecx, [ebp - 0x7c]
call fcn.100284f0
add esp, 4
cmp dword [ebp - 0x7c], 0
jne 0x10002e43
push 1
call edi
test ax, ax
mov al, byte [0x1018ae6a]
jns 0x10002d9e
test al, al
jne 0x10002d9e
mov word [0x1018ae6a], 1
jmp 0x10002dc6
cmp al, 1
jne 0x10002db4
push 1
call edi
test ax, ax
js 0x10002db4
mov word [0x1018ae6a], 0x100
mov edx, 0x11
call fcn.1002b9d0
test al, al
je 0x10002e43
push 0x2bc
call dword [sym.imp.ScriptHook.dll_public:_static_void___cdecl_ScriptingHelpers::Wait_unsigned_int_]
mov dword [ebp - 0x68], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x68]
mov ecx, eax
call fcn.100414c0
lea eax, [ebp - 0x48]
xorps xmm3, xmm3
push eax
push dword [ebp - 0x68]
lea edx, [ebp - 0x4c]
xorps xmm2, xmm2
lea ecx, [ebp - 0x50]
xorps xmm1, xmm1
call fcn.10028810
movss xmm1, dword [ebp - 0x4c]
add esp, 8
addss xmm1, dword [0x1017e468]
movss xmm2, dword [ebp - 0x48]
xor dl, dl
movss xmm0, dword [ebp - 0x50]
mov dword [esp], 0
push 1
push ecx
mov ecx, 2
mov dword [esp], 0x41200000
call fcn.1002bf30
add esp, 0xc
call dword [sym.imp.ScriptHook.dll_public:_static_enum_Game::eVersion___cdecl_Game::GetVersion_void_]
cmp eax, 1
jne 0x10002e55
call fcn.10040e70
jmp 0x10002e5a
call fcn.10040720
cmp byte [0x1018b24f], 0
je 0x10002eef
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x68], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x68]
mov ecx, eax
call fcn.100414c0
push dword [ebp - 0x68]
lea ecx, [ebp - 0x64]
call fcn.10029d10
add esp, 4
call fcn.10027530
mov ecx, eax
call fcn.1004b4c0
test al, al
je 0x10002eef
mov eax, dword [ebp - 0x64]
test eax, eax
je 0x10002eef
movss xmm3, dword [0x1017e4f0]
sub esp, 8
xor edx, edx
xorps xmm2, xmm2
xor ecx, ecx
push 1
sub esp, 0x10
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
push eax
call fcn.10041f10
add esp, 0x20
cmp byte [0x1018b250], 0
je 0x10002f49
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x68], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x68]
mov ecx, eax
call fcn.100414c0
push dword [ebp - 0x68]
lea ecx, [ebp - 0x64]
call fcn.10029d10
mov eax, dword [ebp - 0x64]
add esp, 4
test eax, eax
je 0x10002f49
push eax
call fcn.1004c2d0
add esp, 4
test al, al
je 0x10002f49
push dword [ebp - 0x64]
call fcn.1002a7b0
add esp, 4
call fcn.1004a970
call fcn.1004cd30
cmp byte [0x1018ae5a], 0
je 0x10002fac
call fcn.1002d3a0
test al, al
je 0x10002fac
mov ecx, dword [0x1018b068]
cmp ecx, str.intro
jne 0x10002f83
mov ecx, str.shipintro
call fcn.1002c920
mov ecx, dword [0x1018b068]
call fcn.1002d430
call fcn.10027530
mov dl, 1
mov ecx, eax
call fcn.10027700
call fcn.1003d4e0
mov eax, dword [0x101899ac]
mov byte [0x1018ae5a], 0
mov dword [0x1018b228], eax
mov ecx, dword [0x1018b350]
mov eax, 0x2aaaaaab
mov esi, dword [0x1018b34c]
xor ebx, ebx
sub ecx, esi
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
test eax, eax
jle 0x10003009
xor edi, edi
push dword [esi + edi]
mov ecx, dword [esi + edi + 0x24]
call fcn.1002cf40
mov ecx, dword [0x1018b350]
lea edi, [edi + 0x30]
mov esi, dword [0x1018b34c]
mov eax, 0x2aaaaaab
sub ecx, esi
inc ebx
imul ecx
add esp, 4
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ebx, eax
jl 0x10002fd3
mov ecx, dword [0x1018b340]
mov eax, 0x38e38e39
mov esi, dword [0x1018b33c]
xor ebx, ebx
sub ecx, esi
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
test eax, eax
jle 0x10003066
xor edi, edi
push dword [esi + edi]
mov cl, byte [esi + edi + 0x1e]
call fcn.10029140
mov ecx, dword [0x1018b340]
lea edi, [edi + 0x24]
mov esi, dword [0x1018b33c]
mov eax, 0x38e38e39
sub ecx, esi
inc ebx
imul ecx
add esp, 4
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ebx, eax
jl 0x10003030
mov dl, byte [0x1018b0d4]
mov ecx, dword [ebp - 0x70]
call fcn.10027980
mov dl, byte [0x1018b0fa]
mov ecx, dword [ebp - 0x70]
call fcn.100277a0
call fcn.1004a610
cmp byte [0x1018b227], 0
je 0x10003131
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x68], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x68]
mov ecx, eax
call fcn.100414c0
push dword [ebp - 0x68]
lea ecx, [ebp - 0x64]
call fcn.10029d10
mov ebx, dword [sym.imp.USER32.dll_GetKeyState]
add esp, 4
cmp dword [ebp - 0x64], 0
je 0x10003137
push 0x53
call ebx
test ax, ax
mov al, byte [0x1018af0e]
jns 0x100030fd
test al, al
jne 0x100030fd
push dword [ebp - 0x64]
xorps xmm1, xmm1
mov word [0x1018af0e], 1
call fcn.1004c410
add esp, 4
jmp 0x10003137
cmp al, 1
jne 0x10003113
push 0x53
call ebx
test ax, ax
js 0x10003113
mov word [0x1018af0e], 0x100
mov edx, 5
call fcn.1002b9d0
test al, al
je 0x10003137
push dword [ebp - 0x64]
xorps xmm1, xmm1
call fcn.1004c410
add esp, 4
jmp 0x10003137
mov ebx, dword [sym.imp.USER32.dll_GetKeyState]
cmp byte [0x1018b18a], 0
je 0x10003258
cmp byte [0x10188eec], 0
je 0x100031a5
mov cl, byte [0x10188ee6]
mov eax, dword [0x1018b164]
test cl, cl
je 0x1000315f
inc eax
jmp 0x10003160
dec eax
mov dword [0x1018b164], eax
cmp eax, 0xff
jne 0x10003187
test cl, cl
je 0x100031a5
mov byte [0x10188ee6], 0
mov byte [0x10188eec], 0
mov byte [0x1018b150], 1
jmp 0x100031ae
test eax, eax
jne 0x100031a5
test cl, cl
jne 0x100031a5
mov byte [0x10188ee6], 1
mov byte [0x10188eec], cl
mov byte [0x1018b150], 1
jmp 0x100031ae
cmp byte [0x1018b150], 0
je 0x10003206
mov cl, byte [0x10188ee7]
mov eax, dword [0x1018b168]
test cl, cl
je 0x100031c0
inc eax
jmp 0x100031c1
dec eax
mov dword [0x1018b168], eax
cmp eax, 0xff
jne 0x100031e8
test cl, cl
je 0x10003206
mov byte [0x10188ee7], 0
mov byte [0x1018b150], 0
mov byte [0x1018b152], 1
jmp 0x1000320f
test eax, eax
jne 0x10003206
test cl, cl
jne 0x10003206
mov byte [0x10188ee7], 1
mov byte [0x1018b150], cl
mov byte [0x1018b152], 1
jmp 0x1000320f
cmp byte [0x1018b152], 0
je 0x10003258
mov cl, byte [0x10188ee5]
mov eax, dword [0x1018b16c]
test cl, cl
je 0x10003221
inc eax
jmp 0x10003222
dec eax
mov dword [0x1018b16c], eax
cmp eax, 0xff
jne 0x1000323b
test cl, cl
je 0x10003258
mov byte [0x10188ee5], 0
jmp 0x1000324a
test eax, eax
jne 0x10003258
test cl, cl
jne 0x10003258
mov byte [0x10188ee5], 1
mov byte [0x10188eec], 1
mov byte [0x1018b152], 0
cmp byte [0x1018b1e0], 0
je 0x100032b3
cmp byte [0x1018b151], 0
je 0x10003294
mov eax, dword [0x1018b1f8]
mov edx, dword [0x10189508]
sub eax, edx
mov ecx, dword [0x1018b1ac]
cmp ecx, eax
jge 0x1000328b
add ecx, edx
mov dword [0x1018b1ac], ecx
jmp 0x100032b3
mov byte [0x1018b151], 0
jmp 0x100032b3
mov eax, dword [0x1018b1ac]
mov ecx, dword [0x10189508]
cmp eax, ecx
jle 0x100032ac
sub eax, ecx
mov dword [0x1018b1ac], eax
jmp 0x100032b3
mov byte [0x1018b151], 1
cmp byte [0x1018b0b1], 0
je 0x100033fd
push 2
call ebx
test ax, ax
jns 0x100032d5
mov byte [0x1018ae6d], 0
jmp 0x100033ba
mov edx, 5
mov byte [0x1018ae6d], 1
call fcn.10032960
test al, al
jne 0x100033ba
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x64], 0
call fcn.1002b1c0
lea eax, [ebp - 0x54]
push eax
push dword [ebp - 0x64]
lea edx, [ebp - 0x58]
lea ecx, [ebp - 0x5c]
call fcn.1003cfd0
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x64]
lea edx, [ebp - 0x4c]
lea ecx, [ebp - 0x50]
call fcn.1003cf20
movss xmm1, dword [0x1018b0e8]
lea ecx, [ebp - 0x6c]
movss xmm0, dword [0x1018b0f4]
subss xmm1, dword [ebp - 0x4c]
subss xmm0, dword [ebp - 0x50]
call fcn.1003d6c0
movss xmm0, dword [ebp - 0x6c]
subss xmm0, dword [0x1017e498]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x68], 0
movss dword [ebp - 0x6c], xmm0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x68]
mov ecx, eax
call fcn.100414c0
push dword [ebp - 0x68]
lea ecx, [ebp - 0x60]
call fcn.10029d10
add esp, 0x14
cmp dword [ebp - 0x60], 0
jne 0x100033ba
mov dword [ebp - 0x60], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x60]
mov ecx, eax
call fcn.100414c0
push dword [ebp - 0x60]
movss xmm1, dword [ebp - 0x6c]
call fcn.10029000
add esp, 4
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x60], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x60]
mov ecx, eax
call fcn.100414c0
push dword [ebp - 0x60]
lea ecx, [ebp - 0x68]
call fcn.10029d10
add esp, 4
cmp dword [ebp - 0x68], 0
je 0x100033f6
xor cl, cl
jmp 0x100033f8
mov cl, 1
call fcn.1002d7e0
cmp byte [0x1018ae5b], 0
mov edi, 0xea60
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
je 0x10003448
call esi
cmp eax, dword [0x1018b074]
jb 0x10003448
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x60], 0
call fcn.1002cdf0
push dword [ebp - 0x60]
movss xmm1, dword [0x1017e3f0]
mov ecx, edi
call fcn.1002d920
add esp, 4
call esi
add eax, edi
mov dword [0x1018b074], eax
call fcn.1003ae70
cmp byte [0x1018b0b0], 0
push dword [0x1018b2fc]
je 0x10003544
call fcn.1003ce80
add esp, 4
test al, al
jne 0x100034a0
mov edx, 0x1018b2fc
mov byte [0x1018b0a9], al
mov byte [0x1018b066], al
call fcn.1003cd40
push dword [0x1018b2fc]
mov cl, 1
call fcn.1002b110
push dword [0x1018b2fc]
call fcn.1003d1c0
add esp, 8
jmp 0x10003567
push 2
call ebx
test ax, ax
jns 0x100034ad
xor ecx, ecx
jmp 0x100034be
mov edx, 5
call fcn.10032960
xor ecx, ecx
test al, al
sete cl
mov edx, ecx
call fcn.1003dd20
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x64], 0
call fcn.1002b1c0
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x64]
lea edx, [ebp - 0x4c]
lea ecx, [ebp - 0x50]
call fcn.1003cfd0
lea eax, [ebp - 0x54]
push eax
push dword [ebp - 0x64]
lea edx, [ebp - 0x58]
lea ecx, [ebp - 0x5c]
call fcn.1003cf20
push dword [0x1018b2fc]
movss xmm3, dword [ebp - 0x48]
movss xmm2, dword [ebp - 0x4c]
movss xmm1, dword [ebp - 0x50]
call fcn.1002b310
push dword [0x1018b2fc]
movss xmm3, dword [ebp - 0x54]
movss xmm2, dword [ebp - 0x58]
movss xmm1, dword [ebp - 0x5c]
call fcn.1002b260
push dword [0x1018b2fc]
movss xmm1, dword [0x10188ea8]
call fcn.1003d120
add esp, 0x1c
jmp 0x10003567
call fcn.1003ce80
add esp, 4
test al, al
je 0x10003567
push dword [0x1018b2fc]
call fcn.1003cde0
add esp, 4
xor edx, edx
xor ecx, ecx
call fcn.1003dd20
call fcn.1003c510
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x64], 0
call fcn.1002b1c0
cmp byte [0x10188eee], 0
je 0x10003690
mov eax, dword [0x1018b228]
cmp eax, 6
je 0x1000359b
cmp eax, 7
jne 0x10003690
push dword [0x1018b31c]
call fcn.1003ce80
add esp, 4
test al, al
jne 0x100035d4
mov edx, 0x1018b31c
call fcn.1003cd40
push dword [0x1018b31c]
mov cl, 1
call fcn.1002b110
push dword [0x1018b31c]
call fcn.1003d1c0
jmp 0x100036c7
mov edx, 1
mov ecx, edx
call fcn.1003dd20
xor cl, cl
call fcn.1002d7e0
push dword [ebp - 0x64]
xor cl, cl
call fcn.1002b110
mov dword [ebp - 0x60], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x60]
mov ecx, eax
call fcn.100414c0
movss xmm3, dword [0x1017e430]
lea eax, [ebp - 0x48]
movss xmm2, dword [0x1017e488]
lea edx, [ebp - 0x4c]
push eax
push dword [ebp - 0x60]
lea ecx, [ebp - 0x50]
xorps xmm1, xmm1
call fcn.10028810
push dword [0x1018b31c]
movss xmm1, dword [0x1017e4dc]
call fcn.1003d120
push dword [0x1018b31c]
movss xmm3, dword [ebp - 0x48]
movss xmm2, dword [ebp - 0x4c]
movss xmm1, dword [ebp - 0x50]
call fcn.1002b260
mov dword [ebp - 0x60], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x60]
mov ecx, eax
call fcn.100414c0
push dword [ebp - 0x60]
push dword [0x1018b31c]
call fcn.1002d9c0
add esp, 0x1c
jmp 0x100036ca
push dword [0x1018b31c]
call fcn.1003ce80
add esp, 4
test al, al
je 0x100036ca
push dword [0x1018b31c]
call fcn.1003cde0
xor edx, edx
xor ecx, ecx
call fcn.1003dd20
mov cl, 1
call fcn.1002d7e0
push dword [ebp - 0x64]
mov cl, 1
call fcn.1002b110
add esp, 8
mov dword [ebp - 0x60], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x60]
mov ecx, eax
call fcn.100414c0
push dword [ebp - 0x60]
call fcn.10041b30
add esp, 4
mov dword [ebp - 0x60], 0
test al, al
je 0x1000371d
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x60]
mov ecx, eax
call fcn.100414c0
movss xmm1, dword [0x10188ee0]
jmp 0x1000373b
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x60]
mov ecx, eax
call fcn.100414c0
movss xmm1, dword [0x10188ed8]
push dword [ebp - 0x60]
call fcn.1002d4d0
add esp, 4
cmp byte [0x1018b25a], 0
je 0x100037d7
mov dword [ebp - 0x6c], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x6c]
mov ecx, eax
call fcn.100414c0
push dword [ebp - 0x6c]
lea ecx, [ebp - 0x64]
call fcn.100284f0
push dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x64]
lea edx, [ebp - 0x60]
call fcn.10028630
push dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x64]
lea edx, [ebp - 0x7c]
call fcn.10027fe0
push dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x64]
lea edx, [ebp - 0x70]
call fcn.10027f40
mov edx, dword [ebp - 0x70]
add esp, 0x10
mov eax, dword [ebp - 0x60]
cmp edx, eax
jb 0x100037d7
cmp dword [ebp - 0x7c], 1
jne 0x100037d7
push dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x64]
sub edx, eax
inc edx
call fcn.1004b940
push dword [ebp - 0x6c]
mov edx, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x64]
call fcn.1004b800
add esp, 8
cmp byte [0x1018b24c], 0
je 0x100038da
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x60]
mov ecx, eax
call fcn.100414c0
push dword [ebp - 0x60]
lea ecx, [ebp - 0x64]
call fcn.10029d10
add esp, 4
cmp dword [ebp - 0x64], 0
je 0x100038da
push 0x20
call ebx
test ax, ax
mov al, byte [0x1018aea8]
jns 0x1000383d
test al, al
jne 0x1000383d
mov word [0x1018aea8], 1
jmp 0x10003865
cmp al, 1
jne 0x10003853
push 0x20
call ebx
test ax, ax
js 0x10003853
mov word [0x1018aea8], 0x100
mov edx, 0xe
call fcn.1002b9d0
test al, al
je 0x100038da
mov dword [ebp - 0x60], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x60]
mov ecx, eax
call fcn.100414c0
push dword [ebp - 0x60]
lea ecx, [ebp - 0x70]
call fcn.1003c960
movss xmm0, dword [0x1017e468]
add esp, 4
comiss xmm0, dword [ebp - 0x70]
jb 0x100038da
sub esp, 8
xor edx, edx
xorps xmm3, xmm3
xorps xmm2, xmm2
xor ecx, ecx
push 1
sub esp, 0x10
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0x449c4000
push dword [ebp - 0x64]
call fcn.10041f10
add esp, 0x20
call fcn.1003a1c0
call fcn.1004b2a0
call fcn.1003b210
cmp byte [0x1018b0b3], 0
mov ebx, 0x3e8
je 0x100039cf
call esi
mov esi, eax
mov eax, 0x95217cb1
sub esi, dword [0x1018b0c0]
mul esi
mov edi, edx
xor edx, edx
shr edi, 0x15
imul ecx, edi, 0x36ee80
sub esi, ecx
mov ecx, 0xea60
mov eax, esi
div ecx
mov ecx, edx
mov esi, eax
xor edx, edx
mov eax, ecx
div ebx
mov eax, 0x10624dd3
push edx
mul ecx
lea eax, [ebp - 0x44]
shr edx, 6
push edx
push esi
push edi
push str._lu_:__lu_:__lu_:__lu
push 0x40
push eax
call fcn.100012c0
add esp, 0x1c
cmp byte [0x1018b226], 0
je 0x10003961
cmp byte [0x1018b217], 0
je 0x100039cf
xor ecx, ecx
call fcn.10034980
sub esp, 0xc
call fcn.10034800
call fcn.100348c0
push 0xff
push 0xff
or dl, 0xff
or cl, 0xff
call fcn.10034730
movss xmm1, dword [0x1017e438]
add esp, 0x14
movss xmm0, dword [0x1017e394]
call fcn.100345f0
xor cl, cl
call fcn.10034690
mov cl, 1
call fcn.10034a20
movss xmm1, dword [0x1017e44c]
lea edx, [ebp - 0x44]
movss xmm0, dword [0x1017e380]
call fcn.10034540
xor cl, cl
call fcn.10034a20
cmp byte [0x1018b0d5], 0
je 0x10003a33
mov dword [ebp - 0x64], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x64]
mov ecx, eax
call fcn.100414c0
push dword [ebp - 0x64]
call fcn.10041bd0
add esp, 4
test al, al
je 0x10003a13
movss xmm0, dword [0x10188edc]
call fcn.1002bc50
jmp 0x10003a33
movss xmm0, dword [0x10189a1c]
call fcn.1002bc50
push dword [ebp - 0x64]
movss xmm1, dword [0x1017e468]
call fcn.10041c70
add esp, 4
cmp byte [0x1018b25d], 0
jne 0x10003a49
cmp byte [0x1018b25c], 0
je 0x10003bb2
mov dword [ebp - 0x64], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x64]
mov ecx, eax
call fcn.100414c0
push dword [ebp - 0x64]
call fcn.1004d750
add esp, 4
test al, al
je 0x10003a90
push dword [ebp - 0x64]
lea ecx, [ebp - 0x70]
call fcn.1004d5f0
mov eax, dword [ebp - 0x70]
add esp, 4
mov dword [0x1018b390], eax
jmp 0x10003bb2
mov eax, dword [0x1018b390]
test eax, eax
je 0x10003bb2
push eax
call fcn.1004d7f0
add esp, 4
test al, al
je 0x10003bb2
lea eax, [ebp - 0x54]
push eax
push dword [0x1018b390]
lea edx, [ebp - 0x58]
lea ecx, [ebp - 0x5c]
call fcn.1002abc0
add esp, 8
cmp byte [0x1018b25d], 0
je 0x10003b07
movss xmm2, dword [ebp - 0x54]
mov dl, 1
movss xmm1, dword [ebp - 0x58]
movss xmm0, dword [ebp - 0x5c]
push ecx
mov dword [esp], 0
push 0
push ecx
mov ecx, dword [0x10189a14]
mov dword [esp], 0x3dcccccd
mov ecx, dword [ecx*8 + 0x1008308c]
call fcn.1002bf30
add esp, 0xc
cmp byte [0x1018b25c], 0
je 0x10003ba8
movss xmm1, dword [ebp - 0x58]
movss xmm0, dword [ebp - 0x5c]
movaps xmm2, xmm1
mov esi, dword [ebp - 0x64]
movss xmm3, dword [ebp - 0x54]
movss dword [ebp - 0x60], xmm1
movaps xmm1, xmm0
push esi
movss dword [ebp - 0x68], xmm0
movss dword [ebp - 0x6c], xmm3
call fcn.10028ea0
movss xmm3, dword [ebp - 0x6c]
add esp, 4
xorps xmm0, xmm0
ucomiss xmm3, xmm0
lahf
test ah, 0x44
jp 0x10003b95
mov edi, dword [sym.imp.ScriptHook.dll_protected:_void___thiscall_ScriptThread::Wait_unsigned_int_]
nop dword [eax + eax]
movss xmm2, dword [0x1017e51c]
lea ecx, [ebp - 0x6c]
movss xmm1, dword [ebp - 0x60]
movss xmm0, dword [ebp - 0x68]
call fcn.10042480
mov ecx, dword [0x1018b210]
push 0
call edi
movss xmm3, dword [ebp - 0x6c]
xorps xmm0, xmm0
ucomiss xmm3, xmm0
lahf
test ah, 0x44
jnp 0x10003b60
movss xmm2, dword [ebp - 0x60]
movss xmm1, dword [ebp - 0x68]
push esi
call fcn.10028ea0
add esp, 4
mov dword [0x1018b390], 0
cmp byte [0x1018b24a], 0
je 0x10003c0c
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x60]
mov ecx, eax
call fcn.100414c0
push dword [ebp - 0x60]
lea ecx, [ebp - 0x64]
call fcn.10029d10
mov eax, dword [ebp - 0x64]
add esp, 4
test eax, eax
je 0x10003c0c
push eax
call fcn.1004c230
add esp, 4
test al, al
je 0x10003c0c
push dword [ebp - 0x64]
call fcn.1004bfb0
add esp, 4
call fcn.1004d250
push dword [ebp - 0x74]
mov edx, dword [0x10188ee8]
call fcn.1002da60
add esp, 4
cmp byte [0x1018b244], 0
je 0x10003c77
push dword [ebp - 0x74]
call fcn.10028bf0
add esp, 4
test al, al
je 0x10003c77
movss xmm3, dword [0x1018b11c]
movss xmm2, dword [0x1018b0e8]
movss xmm1, dword [0x1018b0f4]
push 0x46
push ecx
lea ecx, [ebp - 0x70]
mov dword [esp], 0x40400000
call fcn.1002a040
mov eax, dword [ebp - 0x70]
add esp, 8
test eax, eax
je 0x10003c77
push eax
call fcn.1002a5b0
add esp, 4
cmp byte [0x1018b24e], 0
je 0x10003c94
push dword [ebp - 0x74]
call fcn.10028a10
add esp, 4
test al, al
je 0x10003c94
call fcn.1004a3c0
cmp byte [0x1018b0f8], 0
je 0x10003caa
push dword [ebp - 0x74]
mov ecx, ebx
call fcn.100290a0
add esp, 4
cmp byte [0x1018b25e], 0
je 0x10003cb8
call fcn.1004d960
mov cl, byte [0x1018b09a]
movss xmm0, dword [0x1017e3b4]
mov al, byte [0x1018b0ab]
test cl, cl
jne 0x10003cd3
test al, al
je 0x10003d09
movss xmm3, dword [0x1017e468]
movss xmm1, dword [0x1017e544]
movaps xmm2, xmm3
test cl, cl
je 0x10003ced
movaps xmm2, xmm1
test al, al
je 0x10003cf4
movaps xmm3, xmm1
sub esp, 0xc
movaps xmm1, xmm0
mov dword [esp], 0
call fcn.1002e150
add esp, 0xc
push dword [ebp - 0x74]
lea ecx, [ebp - 0x78]
mov dword [ebp - 0x78], 0
call fcn.10029d10
mov eax, dword [ebp - 0x78]
add esp, 4
test eax, eax
je 0x10003ec3
mov edx, dword [0x101899e4]
push eax
call fcn.1002eba0
mov cl, byte [0x1018b245]
add esp, 4
test cl, cl
je 0x10003d51
movzx eax, cl
mov dl, cl
push eax
movzx eax, cl
push eax
movzx eax, cl
jmp 0x10003d74
movzx eax, byte [0x10189a10]
mov dl, byte [0x101899f8]
mov cl, byte [0x101899f0]
push eax
movzx eax, byte [0x10189a08]
push eax
movzx eax, byte [0x10189a00]
push eax
push dword [ebp - 0x78]
call fcn.1002a850
add esp, 0x10
cmp byte [0x1018b248], 0
je 0x10003ec3
push dword [ebp - 0x78]
xor cl, cl
call fcn.1002a650
push dword [ebp - 0x78]
xor cl, cl
call fcn.1002a700
add esp, 8
mov dword [0x1018ae44], 0
xor eax, eax
push dword [ebp - 0x78]
mov ecx, eax
call fcn.1002a3d0
add esp, 4
test al, al
je 0x10003dd2
push dword [ebp - 0x78]
mov ecx, dword [0x1018ae44]
call fcn.10029b20
add esp, 4
mov eax, dword [0x1018ae44]
inc eax
mov dword [0x1018ae44], eax
cmp eax, 8
jl 0x10003db0
mov dword [0x1018ae44], 0
xor eax, eax
nop
push dword [ebp - 0x78]
mov ecx, eax
call fcn.1002a290
add esp, 4
test al, al
je 0x10003e43
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x60], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x60]
mov ecx, eax
call fcn.100414c0
push dword [ebp - 0x60]
lea ecx, [ebp - 0x68]
call fcn.10029d10
mov eax, dword [ebp - 0x68]
add esp, 4
test eax, eax
je 0x10003e43
push eax
call fcn.1004c050
add esp, 4
mov eax, dword [0x1018ae44]
inc eax
mov dword [0x1018ae44], eax
cmp eax, 6
jl 0x10003df0
mov dword [0x1018ae44], 0
xor eax, eax
nop
push dword [ebp - 0x78]
mov ecx, eax
call fcn.1002a470
add esp, 4
test al, al
jne 0x10003eb3
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x60], 0
call fcn.10027530
mov ecx, eax
call fcn.10041420
lea edx, [ebp - 0x60]
mov ecx, eax
call fcn.100414c0
push dword [ebp - 0x60]
lea ecx, [ebp - 0x68]
call fcn.10029d10
mov eax, dword [ebp - 0x68]
add esp, 4
test eax, eax
je 0x10003eb3
push eax
call fcn.1004c050
add esp, 4
mov eax, dword [0x1018ae44]
inc eax
mov dword [0x1018ae44], eax
cmp eax, 4
jl 0x10003e60
cmp byte [0x1018b0b2], 0
je 0x10003f13
push dword [ebp - 0x74]
lea ecx, [ebp - 0x70]
call fcn.10028130
add esp, 4
cmp dword [ebp - 0x70], 0x64
jbe 0x10003ef0
push dword [ebp - 0x74]
mov ecx, 0x64
call fcn.100290a0
add esp, 4
push dword [ebp - 0x74]
lea ecx, [ebp - 0x80]
call fcn.100281d0
push dword [ebp - 0x74]
mov ecx, 0x64
call fcn.10027b60
push dword [ebp - 0x74]
call fcn.10027de0
add esp, 0xc
cmp byte [0x1018ae35], 0
je 0x100043a5
mov ecx, dword [0x1018b2c8]
mov eax, 0x66666667
mov esi, dword [0x1018b2c4]
xor edi, edi
sub ecx, esi
mov dword [0x1018ae44], edi
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
test eax, eax
jle 0x10003fee
xor ebx, ebx
nop dword [eax]
nop word [eax + eax]
cmp byte [0x1018b226], 0
lea eax, [ebx + ebx*4]
movss xmm4, dword [esi + eax*8 + 8]
movss xmm3, dword [esi + eax*8 + 0xc]
je 0x10003f81
cmp byte [0x1018b217], 0
je 0x10003fc4
movaps xmm1, xmm3
movaps xmm0, xmm4
mulss xmm1, dword [0x1017e3b4]
xor dl, dl
xor cl, cl
mulss xmm0, dword [0x1017e3b4]
movaps xmm2, xmm4
push 0xff
addss xmm1, dword [esi + eax*8 + 4]
push 0
addss xmm0, dword [esi + eax*8]
call fcn.10034cc0
mov edi, dword [0x1018ae44]
add esp, 8
mov esi, dword [0x1018b2c4]
mov ecx, dword [0x1018b2c8]
mov eax, 0x66666667
sub ecx, esi
inc edi
imul ecx
mov ebx, edi
mov dword [0x1018ae44], edi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ebx, eax
jl 0x10003f60
mov ecx, dword [0x1018b28c]
mov eax, 0x2e8ba2e9
mov esi, dword [0x1018b288]
xor ebx, ebx
sub ecx, esi
mov dword [0x1018ae44], ebx
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
test eax, eax
jle 0x10004132
xor edi, edi
nop
imul eax, edi, 0x2c
lea edi, [esi + 0x14]
add edi, eax
cmp dword [edi + 0x14], 0xf
jbe 0x10004030
mov edi, dword [edi]
cmp byte [0x1018b226], 0
movss xmm0, dword [eax + esi]
mov ecx, dword [0x1018b1e4]
movss dword [ebp - 0x88], xmm0
movss xmm0, dword [eax + esi + 4]
mov dword [ebp - 0x68], ecx
mov ecx, dword [0x1018b1e8]
movss dword [ebp - 0x84], xmm0
movss xmm0, dword [eax + esi + 8]
mov dword [ebp - 0x60], ecx
mov ecx, dword [0x1018b1ec]
mov dword [ebp - 0x7c], ecx
mov ecx, dword [0x1018b1f0]
movss dword [ebp - 0x6c], xmm0
movss xmm0, dword [eax + esi + 0xc]
mov dword [ebp - 0x70], ecx
mov ecx, dword [eax + esi + 0x10]
movss dword [ebp - 0x64], xmm0
je 0x1000409b
cmp byte [0x1018b217], 0
je 0x10004108
call fcn.10034980
sub esp, 0xc
call fcn.10034800
call fcn.100348c0
push dword [ebp - 0x70]
mov dl, byte [ebp - 0x60]
push dword [ebp - 0x7c]
mov cl, byte [ebp - 0x68]
call fcn.10034730
movss xmm1, dword [ebp - 0x64]
add esp, 0x14
movss xmm0, dword [ebp - 0x6c]
call fcn.100345f0
xor cl, cl
call fcn.10034690
mov cl, 1
call fcn.10034a20
movss xmm1, dword [ebp - 0x84]
mov edx, edi
movss xmm0, dword [ebp - 0x88]
call fcn.10034540
xor cl, cl
call fcn.10034a20
mov ebx, dword [0x1018ae44]
mov esi, dword [0x1018b288]
mov ecx, dword [0x1018b28c]
mov eax, 0x2e8ba2e9
sub ecx, esi
inc ebx
imul ecx
mov edi, ebx
mov dword [0x1018ae44], ebx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jl 0x10004020
mov ecx, dword [0x1018b280]
mov eax, 0x88888889
mov esi, dword [0x1018b27c]
sub ecx, esi
imul ecx
mov dword [0x1018ae44], 0
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
test eax, eax
jle 0x100043a5
xor edi, edi
mov ecx, edi
shl ecx, 4
sub ecx, edi
cmp byte [esi + ecx*8 + 0x6c], 0
je 0x10004315
lea ebx, [ecx*8 + 0x3c]
add ebx, esi
cmp dword [ebx + 0x14], 0xf
jbe 0x1000418a
mov ebx, dword [ebx]
lea edi, [ecx*8 + 0x24]
add edi, esi
cmp dword [edi + 0x14], 0xf
jbe 0x1000419b
mov edi, dword [edi]
movss xmm0, dword [esi + ecx*8]
mov eax, dword [esi + ecx*8 + 0x14]
movss dword [ebp - 0x68], xmm0
movss xmm0, dword [esi + ecx*8 + 4]
movss dword [ebp - 0x7c], xmm0
movss xmm0, dword [esi + ecx*8 + 8]
movss dword [ebp - 0x60], xmm0
movss xmm0, dword [esi + ecx*8 + 0xc]
mov dword [ebp - 0x80], eax
mov eax, dword [esi + ecx*8 + 0x18]
movss dword [ebp - 0x70], xmm0
movss xmm0, dword [esi + ecx*8 + 0x10]
mov dword [ebp - 0x6c], eax
mov eax, dword [esi + ecx*8 + 0x1c]
mov esi, dword [esi + ecx*8 + 0x20]
mov ecx, edi
movss dword [ebp - 0x84], xmm0
mov dword [ebp - 0x88], eax
call fcn.10034b80
test al, al
jne 0x100042b8
mov ecx, edi
call fcn.10034c20
mov ecx, edi
call fcn.10034b80
test al, al
jne 0x100042b8
cmp byte [0x1018b226], 0
je 0x1000422b
cmp byte [0x1018b217], 0
je 0x1000429b
xor ecx, ecx
call fcn.10034980
sub esp, 0xc
call fcn.10034800
call fcn.100348c0
push 0xff
push 0xff
or dl, 0xff
or cl, 0xff
call fcn.10034730
movss xmm1, dword [0x1017e364]
add esp, 0x14
movss xmm0, dword [0x1017e304]
call fcn.100345f0
mov cl, 1
call fcn.10034690
mov cl, 1
call fcn.10034a20
movss xmm1, dword [0x1017e44c]
mov edx, str.Loading_texture_dictionary
movss xmm0, dword [0x1017e3b4]
call fcn.10034540
xor cl, cl
call fcn.10034a20
mov ecx, dword [0x1018b210]
push 0
call dword [sym.imp.ScriptHook.dll_protected:_void___thiscall_ScriptThread::Wait_unsigned_int_]
mov ecx, edi
call fcn.10034b80
test al, al
je 0x10004215
push ebx
mov edx, edi
lea ecx, [ebp - 0x64]
call fcn.10034ac0
movss xmm0, dword [ebp - 0x84]
add esp, 4
movss xmm2, dword [ebp - 0x70]
movss xmm3, dword [ebp - 0x60]
mov edx, dword [ebp - 0x6c]
movaps xmm1, xmm3
mulss xmm1, dword [0x1017e3b4]
mov ecx, dword [ebp - 0x80]
push esi
push dword [ebp - 0x88]
addss xmm1, dword [ebp - 0x68]
sub esp, 8
movss dword [esp + 4], xmm0
movss dword [esp], xmm2
mulss xmm2, dword [0x1017e3b4]
push dword [ebp - 0x64]
addss xmm2, dword [ebp - 0x7c]
jmp 0x10004367
push dword [esi + ecx*8 + 0x20]
movss xmm3, dword [esi + ecx*8 + 8]
push dword [esi + ecx*8 + 0x1c]
movss xmm2, dword [esi + ecx*8 + 0xc]
movaps xmm1, xmm3
movss xmm0, dword [esi + ecx*8 + 0x10]
sub esp, 8
mulss xmm1, dword [0x1017e3b4]
mov edx, dword [esi + ecx*8 + 0x18]
movss dword [esp + 4], xmm0
addss xmm1, dword [esi + ecx*8]
movss dword [esp], xmm2
mulss xmm2, dword [0x1017e3b4]
push dword [esi + ecx*8 + 0x74]
addss xmm2, dword [esi + ecx*8 + 4]
mov ecx, dword [esi + ecx*8 + 0x14]
call fcn.10034da0
mov ecx, dword [0x1018b280]
mov eax, 0x88888889
mov esi, dword [0x1018b27c]
add esp, 0x14
mov edi, dword [0x1018ae44]
sub ecx, esi
imul ecx
inc edi
add edx, ecx
mov dword [0x1018ae44], edi
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jl 0x10004167
call fcn.1002c3e0
test al, al
je 0x100043da
call fcn.1002d310
test al, al
jne 0x100043da
push dword [ebp - 0x74]
lea ecx, [ebp - 0x80]
call fcn.100283b0
add esp, 4
cmp dword [ebp - 0x80], 0x6f0783f5
je 0x100043da
mov dl, 1
mov ecx, str.PLAYER
call fcn.1003ebe0
cmp byte [0x1018b0be], 0
je 0x1000440b
movss xmm3, dword [0x1017e468]
sub esp, 0xc
movss xmm0, dword [0x1017e3b4]
movaps xmm2, xmm3
movaps xmm1, xmm0
mov dword [esp], 0
call fcn.1002ec50
add esp, 0xc
mov ecx, dword [0x1018b0b4]
test ecx, ecx
je 0x1000441f
call fcn.1003da70
call fcn.1003db10
mov edx, 0x1018b278
mov ecx, 0x1018b26c
call fcn.1002bb10
mov ebx, dword [sym.imp.USER32.dll_GetKeyState]
xor eax, eax
mov dword [0x1018ae44], 0
shl eax, 5
mov edi, dword [eax + 0x10188ef0]
push edi
lea esi, [edi + edi]
call ebx
test ax, ax
jns 0x1000450d
cmp byte [esi + 0x1018ae68], 0
jne 0x1000450d
mov edx, dword [0x1018ae44]
shl edx, 5
mov word [esi + 0x1018ae68], 1
mov ecx, dword [edx + 0x10188ef8]
test ecx, ecx
je 0x10004527
mov eax, dword [0x101899b4]
mov dword [0x1018b1b8], eax
mov eax, dword [0x101899b0]
mov dword [0x1018b1bc], eax
mov eax, dword [0x101899c0]
mov dword [0x1018b1c0], eax
mov eax, dword [0x1018b228]
mov dword [0x1018b1c4], eax
mov eax, dword [0x1018b238]
mov dword [0x1018b1c8], eax
mov eax, dword [edx + 0x10188f08]
mov dword [0x1018b238], eax
mov eax, dword [edx + 0x10188f04]
mov dword [0x1018b228], eax
mov eax, dword [edx + 0x10188efc]
mov dword [0x101899b0], eax
mov eax, dword [edx + 0x10188f00]
mov edx, dword [edx + 0x10188f0c]
push ecx
push 0x1b58
mov dword [0x101899b4], ecx
mov dword [0x101899c0], eax
mov byte [0x1018b225], 1
mov byte [0x1018b226], 1
call fcn.1002b660
add esp, 8
jmp 0x10004527
cmp byte [esi + 0x1018ae68], 1
jne 0x10004527
push edi
call ebx
test ax, ax
js 0x10004527
mov word [esi + 0x1018ae68], 0x100
mov eax, dword [0x1018ae44]
inc eax
mov dword [0x1018ae44], eax
cmp eax, 0x30
jl 0x10004440
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.1004ecf8
mov esp, ebp
pop ebp
ret