Function at 0x1009e6f0
Capabilities:
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 0x100afb96
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x278
mov eax, dword [0x100c3008]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ecx, dword [ebx + 8]
xor eax, eax
lea edi, [ecx + 8]
mov dword [ebp - 0x1c0], eax
mov dword [ebp - 0x228], eax
mov eax, dword [edi]
mov dword [ebp - 0x1d4], ecx
mov ecx, edi
mov dword [ebp - 0x240], edi
mov eax, dword [eax + 0x28]
call eax
mov edx, dword [0x10104c04]
mov ecx, dword [0x10104a28]
add edx, 0xffffffd6
mov dword [ebp - 0x18], eax
xor edx, 0xe49bf67d
lea esi, [eax*4 + 0x10107a04]
mov eax, dword [ebp - 0x1d4]
movss xmm0, dword [ecx + 0x14]
mulss xmm0, dword [0x100b86d4]
mov ecx, dword [edx + eax]
mov eax, dword [0x100c3240]
movss dword [ebp - 0x1cc], xmm0
cmp ecx, dword [edx + eax]
je 0x1009e7aa
mov byte [ebp - 0x1b9], 1
jmp 0x1009e7c0
mov ecx, dword [0x10104aa8]
mov eax, dword [ecx]
mov eax, dword [eax + 0x34]
call eax
test eax, eax
setne byte [ebp - 0x1b9]
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x24]
call eax
cmp byte [0x100cc9e0], 0
mov dh, al
mov dl, byte [ebp - 0x1b9]
mov byte [ebp - 0x1c5], dh
je 0x1009e80b
test dl, dl
je 0x1009e80b
test dh, dh
jne 0x1009e81b
mov eax, dword [0x10104c84]
mov ecx, dword [ebp - 0x1d4]
add eax, 0xffffffb6
xor eax, 0xe49bf69d
mov byte [eax + ecx], 1
mov eax, dword [ebp - 0x18]
mov byte [eax + 0x101079c7], 1
jmp 0x1009e82b
test dh, dh
jne 0x1009e81b
mov eax, dword [ebp - 0x18]
mov byte [eax + 0x101079c7], 1
jmp 0x1009e82b
mov eax, dword [ebp - 0x18]
cmp byte [eax + 0x101079c7], 0
je 0x100a0e0c
movss xmm0, dword [esi]
test dh, dh
je 0x1009e83d
subss xmm0, dword [ebp - 0x1cc]
jmp 0x1009e845
addss xmm0, dword [ebp - 0x1cc]
movss dword [esi], xmm0
test dl, dl
je 0x1009e85a
cmp byte [0x100c7bb0], 0
je 0x1009e85a
mov dl, 1
jmp 0x1009e85c
xor dl, dl
movss xmm0, dword [esi]
lea ecx, [ebp - 0x1cc]
comiss xmm0, dword [0x100b8664]
mov dword [ebp - 0x1cc], 0x3f800000
lea eax, [ebp - 0x1e8]
mov dword [ebp - 0x1e8], 0
xorps xmm2, xmm2
cmovbe ecx, esi
movss xmm0, dword [ecx]
comiss xmm0, xmm2
cmova eax, ecx
movss xmm1, dword [eax]
ucomiss xmm1, xmm2
movss dword [esi], xmm1
lahf
test ah, 0x44
jp 0x1009e8b0
test dl, dl
je 0x100a0e0c
mov ecx, dword [0x10104c60]
mov eax, dword [0x10104a28]
add ecx, 0xffffffbf
mov esi, dword [ebp - 0x1d4]
xor ecx, 0xe49bf694
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [ecx + esi]
test dh, dh
je 0x1009e8e5
comiss xmm2, dword [0x100b8708]
ja 0x100a0e0c
movaps xmm0, xmm1
mulss xmm1, dword [0x100b87e0]
mulss xmm0, dword [0x100b87f0]
cvttss2si eax, xmm0
mov dword [ebp - 0x234], eax
cvttss2si eax, xmm1
mov dword [ebp - 0x1c4], eax
mov eax, dword [0x100c7998]
mov dword [ebp - 0x1e8], eax
mov dword [ebp - 0x1cc], eax
test dh, dh
je 0x1009e9ad
test dl, dl
je 0x1009e9ad
movss xmm0, dword [0x100b86ec]
comiss xmm2, xmm0
mov dword [ebp - 0x234], 0x70
mov dword [ebp - 0x1c4], 0x50
jbe 0x1009e991
subss xmm2, xmm0
movss xmm0, dword [0x100b87c0]
movaps xmm1, xmm2
mulss xmm2, dword [0x100b8720]
mulss xmm1, dword [0x100b873c]
subss xmm0, xmm1
cvttss2si eax, xmm0
movss xmm0, dword [0x100b879c]
subss xmm0, xmm2
mov dword [ebp - 0x234], eax
cvttss2si eax, xmm0
mov dword [ebp - 0x1c4], eax
mov dword [ebp - 0x1d0], 0xffd2d2d2
mov eax, dword [ebp - 0x1d0]
mov dword [ebp - 0x1e8], eax
mov dword [ebp - 0x1cc], eax
mov ecx, dword [0x101049c8]
lea edx, [ebp - 0x1b8]
push edx
push dword [ebp - 0x18]
mov eax, dword [ecx]
mov eax, dword [eax + 0x20]
call eax
test al, al
je 0x100a0e0c
push dword [ebp - 0x234]
push esi
call fcn.1009e090
lea eax, [ebp - 0x1e4]
push eax
push esi
call fcn.100a1e10
test al, al
je 0x100a0e0c
cmp byte [ebp - 0x1b9], 0
je 0x1009ea01
cmp byte [0x100c8cb8], 0
jne 0x1009ea0e
jmp 0x1009ea23
cmp byte [0x100c786c], 0
je 0x1009eb03
push ecx
push esi
mov ecx, 0x101079c8
call fcn.100a2a80
cmp byte [ebp - 0x1b9], 0
je 0x1009ea2e
cmp byte [0x100ca324], 0
jne 0x1009ea3b
jmp 0x1009ea50
cmp byte [0x100c786c], 0
je 0x1009eb03
push dword [ebp - 0x234]
push esi
call fcn.100a3650
cmp byte [ebp - 0x1b9], 0
je 0x1009ea5e
cmp byte [0x100c78f4], 0
jne 0x1009ea6b
jmp 0x1009eafa
cmp byte [0x100c786c], 0
je 0x1009eb03
cmp byte [ebp - 0x1c5], 0
je 0x1009ea9e
mov eax, dword [ebp - 0x234]
mov edx, dword [ebp - 0x1c4]
movzx ecx, al
shl ecx, 0x18
or ecx, 0xd2d2d2
push ecx
mov eax, esp
push ecx
mov word [eax], 0
mov byte [eax + 2], 0
mov byte [eax + 3], dl
jmp 0x1009ead1
cvttss2si eax, dword [0x100c8c00]
movzx edx, al
mov eax, edx
shl edx, 8
bswap eax
push eax
movzx eax, byte [ebp - 0x1ca]
or edx, eax
mov eax, dword [ebp - 0x1e8]
shl edx, 8
movzx ecx, ah
or edx, ecx
movzx eax, al
shl edx, 8
or edx, eax
push edx
push dword [ebp - 0x1d8]
mov edx, dword [ebp - 0x1e0]
push dword [ebp - 0x1dc]
mov ecx, dword [ebp - 0x1e4]
call fcn.10094870
add esp, 0x10
cmp byte [ebp - 0x1b9], 0
je 0x1009eb2f
cmp byte [0x100c7ec0], 0
jne 0x1009eb38
mov eax, dword [ebp - 0x1c4]
mov dword [ebp - 0x1c4], eax
mov al, byte [ebp - 0x1b9]
test al, al
je 0x1009ed10
cmp byte [0x100c80c0], 0
jne 0x1009ed1d
jmp 0x1009f019
cmp byte [0x100c786c], 0
je 0x1009eb03
lea eax, [ebp - 0x1a8]
push eax
lea ecx, [ebp - 0x218]
call fcn.10025420
push 0x18
push 0
lea ecx, [ebp - 0x48]
mov dword [ebp - 4], 0
push ecx
mov ecx, eax
call fcn.10042680
lea ecx, [ebp - 0x218]
mov byte [ebp - 4], 2
call fcn.100253d0
mov eax, dword [0x100c7f64]
mov ecx, eax
shr ecx, 8
mov dword [ebp - 0x1cc], ecx
mov ecx, eax
shr ecx, 8
mov dword [ebp - 0x18], ecx
mov ecx, dword [0x100d62c0]
test ecx, ecx
jne 0x1009ec31
push 2
cmp byte [ebp - 0x1c5], cl
je 0x1009ebf2
mov ecx, dword [ebp - 0x1e0]
lea eax, [ebp - 0x48]
sub ecx, dword [0x101074ac]
push eax
mov eax, dword [ebp - 0x1c4]
movzx eax, al
shl eax, 0x18
or eax, 0xd2d2d2
push eax
mov eax, dword [ebp - 0x1dc]
cdq
sub eax, edx
sar eax, 1
add eax, dword [ebp - 0x1e4]
push ecx
push eax
mov ecx, 0x101074a4
call fcn.10094920
lea ecx, [ebp - 0x48]
mov dword [ebp - 4], 0xffffffff
call fcn.100253d0
jmp 0x1009eb0f
cvttss2si ecx, dword [0x100c7a3c]
mov esi, dword [ebp - 0x1e0]
lea edx, [ebp - 0x48]
sub esi, dword [0x101074ac]
push edx
movzx edx, cl
mov cx, word [0x100c7f66]
movzx ecx, cl
shl edx, 8
or edx, ecx
mov ecx, dword [ebp - 0x18]
movzx ecx, cl
shl edx, 8
or edx, ecx
mov ecx, 0x101074a4
jmp 0x1009ecd5
cmp ecx, 1
jne 0x1009ecfc
cmp byte [ebp - 0x1c5], 0
push 2
je 0x1009ec98
mov ecx, dword [ebp - 0x1e0]
lea eax, [ebp - 0x48]
sub ecx, dword [0x101074d0]
push eax
mov eax, dword [ebp - 0x1c4]
movzx eax, al
shl eax, 0x18
or eax, 0xd2d2d2
push eax
mov eax, dword [ebp - 0x1dc]
cdq
sub eax, edx
sar eax, 1
add eax, dword [ebp - 0x1e4]
push ecx
push eax
mov ecx, 0x101074c8
call fcn.10094920
lea ecx, [ebp - 0x48]
mov dword [ebp - 4], 0xffffffff
call fcn.100253d0
jmp 0x1009eb0f
cvttss2si ecx, dword [0x100c7a3c]
mov esi, dword [ebp - 0x1e0]
lea edx, [ebp - 0x48]
sub esi, dword [0x101074d0]
push edx
movzx edx, cl
mov cx, word [0x100c7f66]
movzx ecx, cl
shl edx, 8
or edx, ecx
mov ecx, dword [ebp - 0x1cc]
movzx ecx, cl
shl edx, 8
or edx, ecx
mov ecx, 0x101074c8
movzx eax, al
shl edx, 8
or edx, eax
mov eax, dword [ebp - 0x1dc]
push edx
cdq
sub eax, edx
sar eax, 1
add eax, dword [ebp - 0x1e4]
push esi
push eax
call fcn.10094920
mov esi, dword [ebp - 0x1d4]
lea ecx, [ebp - 0x48]
mov dword [ebp - 4], 0xffffffff
call fcn.100253d0
jmp 0x1009eb0f
cmp byte [0x100c786c], 0
je 0x1009f019
mov ecx, dword [0x10104c38]
mov eax, dword [ebp - 0x1d8]
add ecx, 0xffffffc9
xor ecx, 0xe49bf68a
mov dword [ebp - 0x18], 0x64
add ecx, esi
add eax, 0xfffffffe
mov dword [ebp - 0x1d0], eax
lea eax, [ebp - 0x18]
cmp dword [ecx], 0x64
cmovl eax, ecx
cmp dword [0x100d62c0], 1
mov esi, dword [eax]
mov dword [ebp - 0x18], esi
jne 0x1009ede4
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x28]
call eax
movd xmm1, esi
mov ecx, edi
cvtdq2ps xmm1, xmm1
movss xmm0, dword [eax*4 + 0x1010a688]
comiss xmm0, xmm1
jbe 0x1009edb8
mov eax, dword [0x10104a28]
movss xmm0, dword [eax + 0x14]
mov eax, dword [edi]
mulss xmm0, dword [0x100b8804]
mov eax, dword [eax + 0x28]
movss dword [ebp - 0x18], xmm0
call eax
movss xmm0, dword [eax*4 + 0x1010a688]
subss xmm0, dword [ebp - 0x18]
lea eax, [eax*4 + 0x1010a688]
movss dword [eax], xmm0
jmp 0x1009edcf
mov eax, dword [edi]
mov eax, dword [eax + 0x28]
call eax
movd xmm0, esi
cvtdq2ps xmm0, xmm0
movss dword [eax*4 + 0x1010a688], xmm0
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x28]
call eax
cvttss2si esi, dword [eax*4 + 0x1010a688]
mov dword [ebp - 0x18], esi
mov eax, 0x64
sub eax, esi
imul ecx, eax, 0x1fe
mov eax, 0x51eb851f
imul ecx
mov ecx, 0xff
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 0xff
cmovg eax, ecx
imul ecx, esi, 0x1fe
mov dword [ebp - 0x1e8], eax
mov eax, 0x51eb851f
imul ecx
mov ecx, 0xff
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 0xff
push ecx
cmovg eax, ecx
mov dword [ebp - 0x23c], eax
mov eax, esi
imul eax, dword [ebp - 0x1d0]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x100b8590]
movss dword [ebp - 0x1cc], xmm0
fld dword [ebp - 0x1cc]
fstp dword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
mov ecx, dword [ebp - 0x1c4]
mov eax, esp
mov edx, dword [ebp - 0x1e0]
fstp dword [ebp - 0x1cc]
cvttss2si esi, dword [ebp - 0x1cc]
mov byte [eax + 3], cl
mov ecx, dword [ebp - 0x1e4]
lea edx, [edx - 1]
mov word [eax], 0
mov byte [eax + 2], 0
mov eax, dword [ebp - 0x1d0]
add eax, 4
lea ecx, [ecx - 6]
push eax
push 4
call fcn.10094830
mov eax, dword [ebp - 0x1d0]
lea ecx, [esi + 2]
mov edx, dword [ebp - 0x1e0]
sub eax, esi
add esp, 0xc
mov dword [ebp - 0x1d0], eax
add edx, eax
cmp byte [ebp - 0x1c5], 0
je 0x1009ef13
mov eax, dword [ebp - 0x234]
mov byte [ebp - 0x235], al
mov word [ebp - 0x238], 0xd2d2
mov byte [ebp - 0x236], 0xd2
push dword [ebp - 0x238]
push ecx
mov ecx, dword [ebp - 0x1e4]
push 2
lea ecx, [ecx - 5]
call fcn.100947f0
mov esi, dword [ebp - 0x1e4]
jmp 0x1009ef48
push ecx
mov ecx, dword [ebp - 0x1e8]
mov eax, esp
mov byte [eax], cl
mov ecx, dword [ebp - 0x23c]
mov byte [eax + 1], cl
mov ecx, dword [ebp - 0x234]
mov byte [eax + 3], cl
lea ecx, [esi + 2]
mov esi, dword [ebp - 0x1e4]
push ecx
push 2
mov byte [eax + 2], 0
lea ecx, [esi - 5]
call fcn.100947f0
mov eax, dword [0x10104c38]
add esp, 0xc
mov ecx, dword [ebp - 0x1d4]
add eax, 0xffffffc9
xor eax, 0xe49bf68a
cmp dword [eax + ecx], 0x5c
jg 0x1009f013
mov eax, dword [0x100d62c0]
test eax, eax
jne 0x1009efb6
mov edx, dword [ebp - 0x18]
lea ecx, [ebp - 0x218]
call fcn.10036da0
push 2
push eax
push ecx
mov ecx, dword [ebp - 0x1c4]
mov eax, esp
mov dword [ebp - 4], 3
mov byte [eax + 3], cl
mov ecx, dword [ebp - 0x1e0]
mov word [eax], 0xffff
add ecx, 0xfffffffc
mov byte [eax + 2], 0xff
mov eax, dword [ebp - 0x1d0]
add eax, ecx
mov ecx, 0x101074e0
jmp 0x1009effe
cmp eax, 1
jne 0x1009f013
mov edx, dword [ebp - 0x18]
lea ecx, [ebp - 0x218]
call fcn.10036da0
push 2
push eax
push ecx
mov ecx, dword [ebp - 0x1c4]
mov eax, esp
mov dword [ebp - 4], 4
mov byte [eax + 3], cl
mov ecx, dword [ebp - 0x1e0]
mov word [eax], 0xffff
add ecx, 0xfffffffc
mov byte [eax + 2], 0xff
mov eax, dword [ebp - 0x1d0]
add eax, ecx
mov ecx, 0x101074b0
push eax
lea eax, [esi - 5]
push eax
call fcn.10094920
lea ecx, [ebp - 0x218]
call fcn.100253d0
mov al, byte [ebp - 0x1b9]
xorps xmm0, xmm0
mov dword [ebp - 0x1c], 0
movq qword [ebp - 0x24], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 4], 5
movq qword [ebp - 0x3c], xmm0
mov dword [ebp - 0x34], 0
test al, al
je 0x1009f07e
push 0x100c8230
lea ecx, [ebp - 0x230]
call fcn.10024a90
mov eax, dword [ebp - 0x1c0]
or eax, 0x40
or eax, 1
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x1c0], eax
jmp 0x1009f095
push 0x100c8b80
lea ecx, [ebp - 0x54]
call fcn.10024a90
or dword [ebp - 0x1c0], 0x22
lea ecx, [ebp - 0x54]
push ecx
lea ecx, [ebp - 0x3c]
call fcn.10024a50
mov dword [ebp - 4], 7
mov eax, dword [ebp - 0x1c0]
test al, 2
je 0x1009f0c6
and eax, 0xfffffffd
lea ecx, [ebp - 0x54]
mov dword [ebp - 0x1c0], eax
call fcn.100249f0
mov eax, dword [ebp - 0x1c0]
mov byte [ebp - 4], 8
test al, 1
je 0x1009f0d9
lea ecx, [ebp - 0x230]
call fcn.100249f0
mov esi, dword [ebp - 0x3c]
cmp esi, dword [ebp - 0x38]
je 0x100a028b
cmp dword [esi], 0
jne 0x1009f213
mov eax, dword [0x10104c3c]
lea ecx, [ebp - 0x200]
add eax, 0xffffffc8
mov edx, 0x100b8498
xor eax, 0xe49bf68b
add eax, dword [ebp - 0x1d4]
push eax
call fcn.10033460
add esp, 4
mov ecx, dword [ebp - 0x1c4]
mov byte [ebp - 0x235], cl
lea ecx, [ebp - 0x21c]
push eax
mov byte [ebp - 4], 9
mov word [ebp - 0x238], 0xd29b
mov byte [ebp - 0x236], 0x64
call fcn.1002a030
mov eax, dword [ebp - 0x238]
mov dword [ebp - 0x204], eax
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x20]
cmp ecx, dword [ebp - 0x1c]
je 0x1009f185
movups xmm0, xmmword [ebp - 0x21c]
mov edx, 0xf
mov byte [ebp - 0x21c], 0
movups xmmword [ecx], xmm0
movq xmm0, qword [ebp - 0x20c]
movq qword [ecx + 0x10], xmm0
mov dword [ecx + 0x18], eax
add dword [ebp - 0x20], 0x1c
jmp 0x1009f19b
lea eax, [ebp - 0x21c]
push eax
push ecx
lea ecx, [ebp - 0x24]
call fcn.10078560
mov edx, dword [ebp - 0x208]
mov byte [ebp - 4], 9
cmp edx, 0x10
jb 0x1009f1d5
lea ecx, [edx + 1]
mov edx, dword [ebp - 0x21c]
mov eax, edx
cmp ecx, 0x1000
jb 0x1009f1cb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a0401
push ecx
push edx
call fcn.100a57c1
add esp, 8
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x1ec]
cmp ecx, 0x10
jb 0x1009f213
mov edx, dword [ebp - 0x200]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1009f209
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a0401
push ecx
push edx
call fcn.100a57c1
add esp, 8
cmp dword [esi], 1
mov ecx, dword [ebp - 0x1d4]
jne 0x1009f311
mov eax, dword [0x10104c8c]
add eax, 0xffffffb4
xor eax, 0xe49bf69f
cmp dword [eax + ecx], 0
jle 0x1009f311
mov eax, dword [0x10104c70]
add eax, 0xffffffbb
xor eax, 0xe49bf698
cmp byte [eax + ecx], 0
lea ecx, [ebp - 0x200]
je 0x1009f29b
push 0x100b8494
call fcn.10025420
mov eax, dword [ebp - 0x1c4]
lea ecx, [ebp - 0x25c]
mov byte [ebp - 4], 0xb
mov byte [ebp - 0x1cd], al
lea eax, [ebp - 0x1d0]
push eax
lea eax, [ebp - 0x200]
mov word [ebp - 0x1d0], 0xffff
push eax
mov byte [ebp - 0x1ce], 0xff
call fcn.100a3d50
mov byte [ebp - 4], 0xc
jmp 0x1009f2e2
push 0x100b8490
call fcn.10025420
mov eax, dword [ebp - 0x1c4]
lea ecx, [ebp - 0x25c]
mov byte [ebp - 4], 0xd
mov byte [ebp - 0x25d], al
lea eax, [ebp - 0x260]
push eax
lea eax, [ebp - 0x200]
mov word [ebp - 0x260], 0xffff
push eax
mov byte [ebp - 0x25e], 0xff
call fcn.100a3d50
mov byte [ebp - 4], 0xe
lea eax, [ebp - 0x25c]
push eax
lea ecx, [ebp - 0x24]
call fcn.100a3a60
lea ecx, [ebp - 0x25c]
call fcn.100253d0
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 8
call fcn.100253d0
mov ecx, dword [ebp - 0x1d4]
cmp dword [esi], 2
jne 0x1009f3a3
mov eax, dword [0x10104c7c]
add eax, 0xffffffb8
xor eax, 0xe49bf69b
cmp byte [eax + ecx], 0
je 0x1009f3a3
push str.ZOOM
lea ecx, [ebp - 0x200]
call fcn.10025420
mov eax, dword [ebp - 0x1c4]
lea ecx, [ebp - 0x25c]
mov byte [ebp - 4], 0xf
mov byte [ebp - 0x261], al
lea eax, [ebp - 0x264]
push eax
lea eax, [ebp - 0x200]
mov word [ebp - 0x264], 0xb43c
push eax
mov byte [ebp - 0x262], 0xe1
call fcn.100a3d50
lea eax, [ebp - 0x25c]
mov byte [ebp - 4], 0x10
push eax
lea ecx, [ebp - 0x24]
call fcn.100a3a60
lea ecx, [ebp - 0x25c]
call fcn.100253d0
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 8
call fcn.100253d0
cmp dword [esi], 3
xorps xmm1, xmm1
mov edx, dword [ebp - 0x1d4]
jne 0x1009f44f
mov eax, dword [0x10104c98]
add eax, 0xffffffb1
xor eax, 0xe49bf6a2
movss xmm0, dword [eax + edx]
comiss xmm0, xmm1
jbe 0x1009f44f
push str.FLASHED
lea ecx, [ebp - 0x200]
call fcn.10025420
mov eax, dword [ebp - 0x1c4]
lea ecx, [ebp - 0x25c]
mov byte [ebp - 4], 0x11
mov byte [ebp - 0x265], al
lea eax, [ebp - 0x268]
push eax
lea eax, [ebp - 0x200]
mov word [ebp - 0x268], 0xffff
push eax
mov byte [ebp - 0x266], 0
call fcn.100a3d50
lea eax, [ebp - 0x25c]
mov byte [ebp - 4], 0x12
push eax
lea ecx, [ebp - 0x24]
call fcn.100a3a60
lea ecx, [ebp - 0x25c]
call fcn.100253d0
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 8
call fcn.100253d0
mov edx, dword [ebp - 0x1d4]
xorps xmm1, xmm1
cmp dword [esi], 4
jne 0x1009f536
mov eax, dword [0x10104b68]
mov ecx, dword [eax + edx]
movss xmm0, dword [ecx + 0x58]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x1009f536
mov eax, dword [ecx + 0x50]
mov ecx, dword [0x10104b24]
mov dword [ebp - 0x228], ecx
mov ecx, dword [0x10104b84]
mov dword [ebp - 0x1c0], eax
cmp dword [edx + ecx], 0
jne 0x1009f4a8
mov eax, dword [0x10104b00]
mov ecx, edx
call eax
mov ecx, dword [0x10104b84]
mov eax, dword [ebp - 0x1c0]
mov edx, eax
mov eax, dword [ebp - 0x1d4]
mov ecx, dword [eax + ecx]
call dword [ebp - 0x228]
cmp eax, 0x3c7
jne 0x1009f536
push str.RELOAD
lea ecx, [ebp - 0x200]
call fcn.10025420
mov eax, dword [ebp - 0x1c4]
lea ecx, [ebp - 0x25c]
mov byte [ebp - 4], 0x13
mov byte [ebp - 0x269], al
lea eax, [ebp - 0x26c]
push eax
lea eax, [ebp - 0x200]
mov word [ebp - 0x26c], 0xb43c
push eax
mov byte [ebp - 0x26a], 0xe1
call fcn.100a3d50
lea eax, [ebp - 0x25c]
mov byte [ebp - 4], 0x14
push eax
lea ecx, [ebp - 0x24]
call fcn.100a3a60
lea ecx, [ebp - 0x25c]
call fcn.100253d0
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 8
call fcn.100253d0
cmp dword [esi], 5
jne 0x1009f668
mov eax, dword [0x10104b30]
mov ecx, dword [ebp - 0x1d4]
call eax
test al, al
je 0x1009f668
push 0x100b84a0
lea ecx, [ebp - 0x200]
call fcn.10025420
mov eax, dword [ebp - 0x1c4]
lea ecx, [ebp - 0x21c]
mov byte [ebp - 0x281], al
lea eax, [ebp - 0x200]
push eax
mov byte [ebp - 4], 0x15
mov word [ebp - 0x284], 0xff
mov byte [ebp - 0x282], 0
call fcn.1002a030
mov eax, dword [ebp - 0x284]
mov dword [ebp - 0x204], eax
mov byte [ebp - 4], 0x16
mov ecx, dword [ebp - 0x20]
cmp ecx, dword [ebp - 0x1c]
je 0x1009f5da
movups xmm0, xmmword [ebp - 0x21c]
mov edx, 0xf
mov byte [ebp - 0x21c], 0
movups xmmword [ecx], xmm0
movq xmm0, qword [ebp - 0x20c]
movq qword [ecx + 0x10], xmm0
mov dword [ecx + 0x18], eax
add dword [ebp - 0x20], 0x1c
jmp 0x1009f5f0
lea eax, [ebp - 0x21c]
push eax
push ecx
lea ecx, [ebp - 0x24]
call fcn.10078560
mov edx, dword [ebp - 0x208]
mov byte [ebp - 4], 0x15
cmp edx, 0x10
jb 0x1009f62a
lea ecx, [edx + 1]
mov edx, dword [ebp - 0x21c]
mov eax, edx
cmp ecx, 0x1000
jb 0x1009f620
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a0401
push ecx
push edx
call fcn.100a57c1
add esp, 8
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x1ec]
cmp ecx, 0x10
jb 0x1009f668
mov edx, dword [ebp - 0x200]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1009f65e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a0401
push ecx
push edx
call fcn.100a57c1
add esp, 8
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x28]
call eax
dec eax
imul eax, eax, 0xaa0
add eax, 0x100d7664
cmp dword [esi], 6
mov dword [ebp - 0x1c0], eax
jne 0x1009fea1
cmp byte [eax + 0x531], 0
je 0x1009f7b4
push 0x100b849c
lea ecx, [ebp - 0x200]
call fcn.10025420
mov eax, dword [ebp - 0x1c4]
lea ecx, [ebp - 0x21c]
mov byte [ebp - 4], 0x17
mov byte [ebp - 0x27d], al
lea eax, [ebp - 0x280]
push eax
lea eax, [ebp - 0x200]
mov word [ebp - 0x280], 0xffff
push eax
mov byte [ebp - 0x27e], 0xff
call fcn.100a3d50
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0x20]
cmp ecx, dword [ebp - 0x1c]
je 0x1009f720
movups xmm0, xmmword [ebp - 0x21c]
mov eax, dword [ebp - 0x204]
mov edx, 0xf
mov byte [ebp - 0x21c], 0
movups xmmword [ecx], xmm0
movq xmm0, qword [ebp - 0x20c]
movq qword [ecx + 0x10], xmm0
mov dword [ecx + 0x18], eax
add dword [ebp - 0x20], 0x1c
jmp 0x1009f736
lea eax, [ebp - 0x21c]
push eax
push ecx
lea ecx, [ebp - 0x24]
call fcn.10078560
mov edx, dword [ebp - 0x208]
mov byte [ebp - 4], 0x17
cmp edx, 0x10
jb 0x1009f770
lea ecx, [edx + 1]
mov edx, dword [ebp - 0x21c]
mov eax, edx
cmp ecx, 0x1000
jb 0x1009f766
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a0401
push ecx
push edx
call fcn.100a57c1
add esp, 8
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x1ec]
cmp ecx, 0x10
jb 0x1009f7ae
mov edx, dword [ebp - 0x200]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1009f7a4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a0401
push ecx
push edx
call fcn.100a57c1
add esp, 8
mov eax, dword [ebp - 0x1c0]
cmp byte [eax + 0x52c], 0
je 0x1009f8fb
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x1f0], 0
push str.KAABA
lea ecx, [ebp - 0x200]
mov dword [ebp - 0x1ec], 0
movups xmmword [ebp - 0x200], xmm0
call fcn.10025cf0
mov eax, dword [ebp - 0x1c4]
lea ecx, [ebp - 0x21c]
mov byte [ebp - 0x279], al
lea eax, [ebp - 0x200]
push eax
mov byte [ebp - 4], 0x19
mov word [ebp - 0x27c], 0xffff
mov byte [ebp - 0x27a], 0xff
call fcn.1002a030
mov eax, dword [ebp - 0x27c]
mov dword [ebp - 0x204], eax
mov byte [ebp - 4], 0x1a
mov ecx, dword [ebp - 0x20]
cmp ecx, dword [ebp - 0x1c]
je 0x1009f867
movups xmm0, xmmword [ebp - 0x21c]
mov edx, 0xf
mov byte [ebp - 0x21c], 0
movups xmmword [ecx], xmm0
movq xmm0, qword [ebp - 0x20c]
movq qword [ecx + 0x10], xmm0
mov dword [ecx + 0x18], eax
add dword [ebp - 0x20], 0x1c
jmp 0x1009f87d
lea eax, [ebp - 0x21c]
push eax
push ecx
lea ecx, [ebp - 0x24]
call fcn.10078560
mov edx, dword [ebp - 0x208]
mov byte [ebp - 4], 0x19
cmp edx, 0x10
jb 0x1009f8b7
lea ecx, [edx + 1]
mov edx, dword [ebp - 0x21c]
mov eax, edx
cmp ecx, 0x1000
jb 0x1009f8ad
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a0401
push ecx
push edx
call fcn.100a57c1
add esp, 8
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x1ec]
cmp ecx, 0x10
jb 0x1009f8f5
mov edx, dword [ebp - 0x200]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1009f8eb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a0401
push ecx
push edx
call fcn.100a57c1
add esp, 8
mov eax, dword [ebp - 0x1c0]
cmp byte [eax + 0x52d], 0
je 0x1009fa42
push 6
xorps xmm0, xmm0
mov dword [ebp - 0x1f0], 0
push str.CHEESE
lea ecx, [ebp - 0x200]
mov dword [ebp - 0x1ec], 0
movups xmmword [ebp - 0x200], xmm0
call fcn.10025cf0
mov eax, dword [ebp - 0x1c4]
lea ecx, [ebp - 0x21c]
mov byte [ebp - 0x275], al
lea eax, [ebp - 0x200]
push eax
mov byte [ebp - 4], 0x1b
mov word [ebp - 0x278], 0xffff
mov byte [ebp - 0x276], 0xff
call fcn.1002a030
mov eax, dword [ebp - 0x278]
mov dword [ebp - 0x204], eax
mov byte [ebp - 4], 0x1c
mov ecx, dword [ebp - 0x20]
cmp ecx, dword [ebp - 0x1c]
je 0x1009f9ae
movups xmm0, xmmword [ebp - 0x21c]
mov edx, 0xf
mov byte [ebp - 0x21c], 0
movups xmmword [ecx], xmm0
movq xmm0, qword [ebp - 0x20c]
movq qword [ecx + 0x10], xmm0
mov dword [ecx + 0x18], eax
add dword [ebp - 0x20], 0x1c
jmp 0x1009f9c4
lea eax, [ebp - 0x21c]
push eax
push ecx
lea ecx, [ebp - 0x24]
call fcn.10078560
mov edx, dword [ebp - 0x208]
mov byte [ebp - 4], 0x1b
cmp edx, 0x10
jb 0x1009f9fe
lea ecx, [edx + 1]
mov edx, dword [ebp - 0x21c]
mov eax, edx
cmp ecx, 0x1000
jb 0x1009f9f4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a0401
push ecx
push edx
call fcn.100a57c1
add esp, 8
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x1ec]
cmp ecx, 0x10
jb 0x1009fa3c
mov edx, dword [ebp - 0x200]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1009fa32
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a0401
push ecx
push edx
call fcn.100a57c1
add esp, 8
mov eax, dword [ebp - 0x1c0]
cmp byte [eax + 0x52e], 0
je 0x1009fb89
push 7
xorps xmm0, xmm0
mov dword [ebp - 0x1f0], 0
push str.UNKNOWN
lea ecx, [ebp - 0x200]
mov dword [ebp - 0x1ec], 0
movups xmmword [ebp - 0x200], xmm0
call fcn.10025cf0
mov eax, dword [ebp - 0x1c4]
lea ecx, [ebp - 0x21c]
mov byte [ebp - 0x285], al
lea eax, [ebp - 0x200]
push eax
mov byte [ebp - 4], 0x1d
mov word [ebp - 0x288], 0xffff
mov byte [ebp - 0x286], 0xff
call fcn.1002a030
mov eax, dword [ebp - 0x288]
mov dword [ebp - 0x204], eax
mov byte [ebp - 4], 0x1e
mov ecx, dword [ebp - 0x20]
cmp ecx, dword [ebp - 0x1c]
je 0x1009faf5
movups xmm0, xmmword [ebp - 0x21c]
mov edx, 0xf
mov byte [ebp - 0x21c], 0
movups xmmword [ecx], xmm0
movq xmm0, qword [ebp - 0x20c]
movq qword [ecx + 0x10], xmm0
mov dword [ecx + 0x18], eax
add dword [ebp - 0x20], 0x1c
jmp 0x1009fb0b
lea eax, [ebp - 0x21c]
push eax
push ecx
lea ecx, [ebp - 0x24]
call fcn.10078560
mov edx, dword [ebp - 0x208]
mov byte [ebp - 4], 0x1d
cmp edx, 0x10
jb 0x1009fb45
lea ecx, [edx + 1]
mov edx, dword [ebp - 0x21c]
mov eax, edx
cmp ecx, 0x1000
jb 0x1009fb3b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a0401
push ecx
push edx
call fcn.100a57c1
add esp, 8
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x1ec]
cmp ecx, 0x10
jb 0x1009fb83
mov edx, dword [ebp - 0x200]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1009fb79
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a0401
push ecx
push edx
call fcn.100a57c1
add esp, 8
mov eax, dword [ebp - 0x1c0]
cmp byte [eax + 0x530], 0
je 0x1009fc7b
push 8
xorps xmm0, xmm0
mov dword [ebp - 0x1f0], 0
push str.TAP_LIVE
lea ecx, [ebp - 0x200]
mov dword [ebp - 0x1ec], 0
movups xmmword [ebp - 0x200], xmm0
call fcn.10025cf0
mov eax, dword [ebp - 0x1c4]
lea ecx, [ebp - 0x21c]
mov byte [ebp - 0x26d], al
lea eax, [ebp - 0x200]
push eax
mov byte [ebp - 4], 0x1f
mov word [ebp - 0x270], 0xffff
mov byte [ebp - 0x26e], 0xff
call fcn.1002a030
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x204], eax
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x20]
cmp ecx, dword [ebp - 0x1c]
je 0x1009fc4b
movups xmm0, xmmword [ebp - 0x21c]
mov byte [ebp - 0x21c], 0
movups xmmword [ecx], xmm0
movq xmm0, qword [ebp - 0x20c]
movq qword [ecx + 0x10], xmm0
mov dword [ecx + 0x18], eax
add dword [ebp - 0x20], 0x1c
mov dword [ebp - 0x20c], 0
mov dword [ebp - 0x208], 0xf
jmp 0x1009fc5b
lea eax, [ebp - 0x21c]
push eax
push ecx
lea ecx, [ebp - 0x24]
call fcn.10078560
lea ecx, [ebp - 0x21c]
call fcn.100253d0
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 8
call fcn.100253d0
mov eax, dword [ebp - 0x1c0]
cmp byte [eax + 0x534], 0
je 0x1009fd04
push str.FAT_FUCK
lea ecx, [ebp - 0x200]
call fcn.10025420
mov eax, dword [ebp - 0x1c4]
lea ecx, [ebp - 0x25c]
mov byte [ebp - 4], 0x21
mov byte [ebp - 0x271], al
lea eax, [ebp - 0x274]
push eax
lea eax, [ebp - 0x200]
mov word [ebp - 0x274], 0xffff
push eax
mov byte [ebp - 0x272], 0xff
call fcn.100a3d50
lea eax, [ebp - 0x25c]
mov byte [ebp - 4], 0x22
push eax
lea ecx, [ebp - 0x24]
call fcn.100a3a60
lea ecx, [ebp - 0x25c]
call fcn.100253d0
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 8
call fcn.100253d0
mov eax, dword [ebp - 0x1c0]
cmp byte [eax + 0x533], 0
je 0x1009fdcb
push str.HAKE_OLD
lea ecx, [ebp - 0x200]
call fcn.10025420
mov eax, dword [ebp - 0x1c4]
lea ecx, [ebp - 0x21c]
mov byte [ebp - 4], 0x23
mov byte [ebp - 0x49], al
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x200]
mov word [ebp - 0x4c], 0xffff
push eax
mov byte [ebp - 0x4a], 0xff
call fcn.100a3d50
mov byte [ebp - 4], 0x24
mov ecx, dword [ebp - 0x20]
cmp ecx, dword [ebp - 0x1c]
je 0x1009fd9b
movups xmm0, xmmword [ebp - 0x21c]
mov eax, dword [ebp - 0x204]
mov byte [ebp - 0x21c], 0
movups xmmword [ecx], xmm0
movq xmm0, qword [ebp - 0x20c]
movq qword [ecx + 0x10], xmm0
mov dword [ecx + 0x18], eax
add dword [ebp - 0x20], 0x1c
mov dword [ebp - 0x20c], 0
mov dword [ebp - 0x208], 0xf
jmp 0x1009fdab
lea eax, [ebp - 0x21c]
push eax
push ecx
lea ecx, [ebp - 0x24]
call fcn.10078560
lea ecx, [ebp - 0x21c]
call fcn.100253d0
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 8
call fcn.100253d0
mov eax, dword [ebp - 0x1c0]
cmp byte [eax + 0x532], 0
je 0x1009fea1
cmp byte [0x100c4cb8], 0
lea ecx, [ebp - 0x200]
push str.HAKE
je 0x1009fe30
call fcn.10025420
mov eax, dword [ebp - 0x1c4]
lea ecx, [ebp - 0x25c]
mov byte [ebp - 4], 0x25
mov byte [ebp - 0x239], al
lea eax, [ebp - 0x23c]
push eax
lea eax, [ebp - 0x200]
mov word [ebp - 0x23c], 0xd29b
push eax
mov byte [ebp - 0x23a], 0x64
call fcn.100a3d50
mov byte [ebp - 4], 0x26
jmp 0x1009fe72
call fcn.10025420
mov eax, dword [ebp - 0x1c4]
lea ecx, [ebp - 0x25c]
mov byte [ebp - 4], 0x27
mov byte [ebp - 0x1e5], al
lea eax, [ebp - 0x1e8]
push eax
lea eax, [ebp - 0x200]
mov word [ebp - 0x1e8], 0xffff
push eax
mov byte [ebp - 0x1e6], 0xff
call fcn.100a3d50
mov byte [ebp - 4], 0x28
lea eax, [ebp - 0x25c]
push eax
lea ecx, [ebp - 0x24]
call fcn.100a3a60
lea ecx, [ebp - 0x25c]
call fcn.100253d0
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 8
call fcn.100253d0
mov eax, dword [ebp - 0x1c0]
cmp dword [esi], 7
jne 0x1009ff25
test eax, eax
je 0x1009ff25
cmp dword [eax + 0x18], 0
jbe 0x1009ff25
lea ecx, [eax + 8]
call fcn.10024b80
mov edx, dword [eax]
mov eax, dword [ebp - 0x1c4]
movzx ecx, al
shl ecx, 0x18
mov eax, ecx
or ecx, 0xff
or eax, 0x64d29b
cmp byte [edx + 0x400], 0
cmovne ecx, eax
test byte [edx + 0x420], 1
mov dword [ebp - 0x228], ecx
jne 0x1009ff25
lea eax, [ebp - 0x228]
push eax
push ecx
lea ecx, [ebp - 0x25c]
call fcn.100a3d80
lea eax, [ebp - 0x25c]
mov byte [ebp - 4], 0x29
push eax
lea ecx, [ebp - 0x24]
call fcn.100a3a60
lea ecx, [ebp - 0x25c]
mov byte [ebp - 4], 8
call fcn.100253d0
cmp dword [esi], 8
jne 0x100a011e
mov eax, dword [0x100c3490]
test eax, eax
je 0x100a011e
mov eax, dword [eax]
mov ecx, edi
mov dword [ebp - 0x228], eax
mov eax, dword [edi]
mov eax, dword [eax + 0x28]
call eax
mov ecx, dword [ebp - 0x228]
push eax
call fcn.1002f8a0
sub esp, 8
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd qword [ebp - 0x230], xmm0
fld qword [ebp - 0x230]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_round
fstp qword [ebp - 0x230]
cvttsd2si edx, qword [ebp - 0x230]
mov eax, 0xff
mov ecx, 0x64d29b
cmp edx, 0xaf
cmovg ecx, eax
mov eax, dword [ebp - 0x1c4]
movzx eax, al
shl eax, 0x18
or ecx, eax
mov dword [ebp - 0x228], ecx
lea ecx, [ebp - 0x218]
call fcn.10036da0
push 0x100b84e8
mov edx, eax
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x200]
call fcn.1003ccd0
add esp, 0xc
movq xmm1, qword [eax + 0x10]
xorps xmm0, xmm0
mov edx, dword [ebp - 0x228]
movups xmmword [ebp - 0x25c], xmm0
mov dword [ebp - 0x244], edx
movups xmm0, xmmword [eax]
mov dword [eax + 0x10], 0
movq qword [ebp - 0x24c], xmm1
movups xmmword [ebp - 0x25c], xmm0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x2c
mov eax, dword [ebp - 0x20]
cmp eax, dword [ebp - 0x1c]
je 0x100a0039
movups xmmword [eax], xmm0
mov ecx, 0xf
mov byte [ebp - 0x25c], 0
movq qword [eax + 0x10], xmm1
mov dword [eax + 0x18], edx
add dword [ebp - 0x20], 0x1c
jmp 0x100a004f
lea ecx, [ebp - 0x25c]
push ecx
push eax
lea ecx, [ebp - 0x24]
call fcn.10078560
mov ecx, dword [ebp - 0x248]
mov byte [ebp - 4], 0x2b
cmp ecx, 0x10
jb 0x100a0087
mov edx, dword [ebp - 0x25c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100a007d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a0401
push ecx
push edx
call fcn.100a57c1
add esp, 8
mov byte [ebp - 4], 0x2a
mov ecx, dword [ebp - 0x1ec]
cmp ecx, 0x10
jb 0x100a00c5
mov edx, dword [ebp - 0x200]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100a00bb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a0401
push ecx
push edx
call fcn.100a57c1
add esp, 8
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x204]
mov dword [ebp - 0x1f0], 0
mov dword [ebp - 0x1ec], 0xf
mov byte [ebp - 0x200], 0
cmp ecx, 0x10
jb 0x100a011e
mov edx, dword [ebp - 0x218]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100a0114
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a0401
push ecx
push edx
call fcn.100a57c1
add esp, 8
cmp dword [esi], 9
mov eax, dword [ebp - 0x1c0]
mov cl, byte [ebp - 0x1b9]
jne 0x100a01a7
test eax, eax
je 0x100a01a7
cmp dword [eax + 0x18], 0
je 0x100a01a7
test cl, cl
je 0x100a01a7
lea ecx, [eax + 8]
call fcn.10024b80
mov ecx, dword [ebp - 0x1c4]
mov byte [ebp - 0x1c9], cl
lea ecx, [ebp - 0x1cc]
push ecx
mov eax, dword [eax]
lea ecx, [ebp - 0x25c]
sub eax, 0xffffff80
mov word [ebp - 0x1cc], 0x96cc
push eax
mov byte [ebp - 0x1ca], 0x60
call fcn.100a3d50
lea eax, [ebp - 0x25c]
mov byte [ebp - 4], 0x2d
push eax
lea ecx, [ebp - 0x24]
call fcn.100a3a60
lea ecx, [ebp - 0x25c]
mov byte [ebp - 4], 8
call fcn.100253d0
mov eax, dword [ebp - 0x1c0]
mov cl, byte [ebp - 0x1b9]
cmp dword [esi], 0xa
jne 0x100a027f
test eax, eax
je 0x100a027f
cmp dword [eax + 0x18], 0
je 0x100a027f
test cl, cl
je 0x100a027f
lea ecx, [eax + 8]
call fcn.10024b80
mov edx, str.OVERRIDE:BACK
mov eax, dword [eax]
sub eax, 0xffffff80
mov ecx, eax
mov dword [ebp - 0x1c0], eax
call fcn.100499b0
test al, al
jne 0x100a0215
mov ecx, dword [ebp - 0x1c0]
mov edx, str.OVERRIDE:RIGHT
call fcn.100499b0
test al, al
jne 0x100a0215
mov ecx, dword [ebp - 0x1c0]
mov edx, str.OVERRIDE:LEFT
call fcn.100499b0
test al, al
je 0x100a027f
push str.OVERRIDE
lea ecx, [ebp - 0x218]
call fcn.10025420
mov eax, dword [ebp - 0x1c4]
lea ecx, [ebp - 0x25c]
mov byte [ebp - 4], 0x2e
mov byte [ebp - 0x15], al
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x218]
mov word [ebp - 0x18], 0xd29b
push eax
mov byte [ebp - 0x16], 0x64
call fcn.100a3d50
lea eax, [ebp - 0x25c]
mov byte [ebp - 4], 0x2f
push eax
lea ecx, [ebp - 0x24]
call fcn.100a3a60
lea ecx, [ebp - 0x25c]
call fcn.100253d0
lea ecx, [ebp - 0x218]
mov byte [ebp - 4], 8
call fcn.100253d0
add esi, 4
cmp esi, dword [ebp - 0x38]
jne 0x1009f0e5
mov ecx, dword [ebp - 0x20]
mov eax, 0x92492493
mov esi, dword [ebp - 0x24]
sub ecx, esi
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x100a0366
xor eax, eax
xor edi, edi
mov dword [ebp - 0x18], eax
cmp dword [0x100d62c0], 0
lea ecx, [esi + eax]
jne 0x100a02f0
mov eax, dword [0x101074e8]
dec eax
push 0
push ecx
push dword [ecx + 0x18]
mov ecx, dword [ebp - 0x1e0]
imul eax, edi
dec ecx
add eax, ecx
mov ecx, dword [ebp - 0x1dc]
push eax
mov eax, dword [ebp - 0x1e4]
add ecx, 2
add eax, ecx
mov ecx, 0x101074e0
jmp 0x100a032a
cmp dword [0x100d62c0], 1
jne 0x100a0336
mov eax, dword [0x101074b8]
dec eax
push 0
push ecx
push dword [ecx + 0x18]
mov ecx, dword [ebp - 0x1e0]
imul eax, edi
add ecx, 0xfffffffe
add eax, ecx
mov ecx, dword [ebp - 0x1dc]
push eax
mov eax, dword [ebp - 0x1e4]
add ecx, 3
add eax, ecx
mov ecx, 0x101074b0
push eax
call fcn.10094920
mov eax, dword [ebp - 0x18]
mov esi, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
add eax, 0x1c
mov dword [ebp - 0x18], eax
sub ecx, esi
mov eax, 0x92492493
inc edi
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
mov eax, dword [ebp - 0x18]
jb 0x100a02b3
mov edi, dword [ebp - 0x240]
mov byte [ebp - 4], 5
mov edx, dword [ebp - 0x3c]
test edx, edx
je 0x100a03a7
mov eax, dword [ebp - 0x34]
sub eax, edx
sar eax, 2
lea ecx, [eax*4]
mov eax, edx
cmp ecx, 0x1000
jb 0x100a039a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a0401
push ecx
push edx
call fcn.100a57c1
mov esi, dword [ebp - 0x24]
add esp, 8
mov dword [ebp - 4], 0xffffffff
test esi, esi
je 0x100a0411
mov edx, dword [ebp - 0x20]
push ecx
mov ecx, esi
call fcn.10078360
mov ecx, dword [ebp - 0x1c]
mov eax, 0x92492493
mov esi, dword [ebp - 0x24]
add esp, 4
sub ecx, esi
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax*8]
sub ecx, eax
mov eax, esi
shl ecx, 2
cmp ecx, 0x1000
jb 0x100a0407
mov esi, dword [eax - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100a0407
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push esi
call fcn.100a57c1
add esp, 8
cmp byte [ebp - 0x1b9], 0
mov dword [ebp - 0x1c0], 3
je 0x100a0e0c
cmp byte [0x100c8700], 0
je 0x100a05a9
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x28]
call eax
dec eax
imul esi, eax, 0xaa0
add esi, 0x100d7664
je 0x100a05a9
cmp byte [esi + 0x47d], 0
je 0x100a05a9
cmp dword [esi + 0x18], 0
je 0x100a05a9
lea ecx, [esi + 8]
call fcn.10024b80
mov eax, dword [eax]
test eax, eax
je 0x100a05a9
movss xmm1, dword [eax + 0x3c]
movss xmm0, dword [eax + 0x38]
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm1
call fcn.1001e290
cvtss2sd xmm0, xmm0
comisd xmm0, xmmword [0x100b8678]
jbe 0x100a04b0
cmp byte [eax + 0x428], 0
je 0x100a05a9
cmp dword [esi + 0x494], 3
jg 0x100a05a9
movss xmm0, dword [esi + 0x478]
lea edx, [ebp - 0x18]
subss xmm0, dword [eax + 0x430]
lea eax, [ebp - 0x228]
mov dword [ebp - 0x228], 0x3f800000
push eax
lea ecx, [ebp - 0x1cc]
mov dword [ebp - 0x18], 0
movss dword [ebp - 0x1cc], xmm0
call fcn.10025a50
mov edx, dword [ebp - 0x1dc]
xorps xmm0, xmm0
add esp, 4
movd xmm1, edx
cvtdq2ps xmm1, xmm1
mulss xmm1, dword [eax]
mulss xmm1, dword [0x100b8658]
comiss xmm1, xmm0
movss dword [ebp - 0x228], xmm1
jbe 0x100a05a9
mov esi, dword [ebp - 0x1e4]
push ecx
mov ecx, dword [ebp - 0x1c4]
mov eax, esp
push 4
push edx
mov edx, dword [ebp - 0x1d8]
mov byte [eax + 3], cl
mov ecx, esi
mov word [eax], 0xa0a
mov byte [eax + 2], 0xa
mov eax, dword [ebp - 0x1e0]
add eax, 2
add edx, eax
call fcn.10094830
mov eax, dword [0x100c87a4]
lea ecx, [esi + 1]
mov edx, dword [ebp - 0x1d8]
add esp, 0xc
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x234]
mov byte [ebp - 0x15], al
cvttss2si eax, dword [ebp - 0x228]
push dword [ebp - 0x18]
push 2
push eax
mov eax, dword [ebp - 0x1e0]
add eax, 3
add edx, eax
call fcn.100947f0
add esp, 0xc
mov dword [ebp - 0x1c0], 8
mov ecx, dword [0x101049cc]
mov eax, dword [0x10104ccc]
add eax, 0xffffffa4
xor eax, 0xe49bf6af
mov edx, dword [ecx]
add eax, dword [ebp - 0x1d4]
push ecx
mov esi, dword [edx + 0x10]
mov edx, esp
mov eax, dword [eax]
mov dword [edx], eax
call esi
mov esi, eax
mov dword [ebp - 0x23c], esi
test esi, esi
je 0x100a0e0c
mov ecx, dword [esi]
mov edx, dword [ecx + 0x6f8]
mov ecx, esi
call edx
test eax, eax
je 0x100a0e0c
mov eax, dword [eax + 0x14]
xorps xmm1, xmm1
mov edx, dword [ebp - 0x1d4]
mov dword [ebp - 0x1e8], eax
mov eax, dword [0x10104ce8]
add eax, 0xffffff9d
xor eax, 0xe49bf6b6
mov esi, dword [eax + esi]
mov eax, dword [0x10104b68]
mov dword [ebp - 0x4c], esi
mov ecx, dword [eax + edx]
mov dword [ebp - 0x1cc], ecx
movss xmm0, dword [ecx + 0x58]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x100a0681
mov eax, dword [ecx + 0x50]
mov ecx, dword [0x10104b24]
mov dword [ebp - 0x18], ecx
mov ecx, dword [0x10104b84]
mov dword [ebp - 0x228], eax
cmp dword [edx + ecx], 0
jne 0x100a0668
mov eax, dword [0x10104b00]
mov ecx, edx
call eax
mov ecx, dword [0x10104b84]
mov eax, dword [ebp - 0x228]
mov edx, eax
mov eax, dword [ebp - 0x1d4]
mov ecx, dword [eax + ecx]
call dword [ebp - 0x18]
cmp eax, 0x3c7
jne 0x100a0681
mov al, 1
jmp 0x100a0683
xor al, al
mov ecx, dword [ebp - 0x1e8]
mov byte [ebp - 0x1b9], al
cmp ecx, 0xffffffff
je 0x100a08bc
cmp byte [0x100c8534], 0
je 0x100a08bc
test al, al
je 0x100a06b6
mov eax, dword [ebp - 0x1cc]
movss xmm1, dword [eax + 0x64]
jmp 0x100a06c8
movd xmm0, ecx
movd xmm1, esi
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm1, xmm1
divss xmm1, xmm0
mov eax, dword [ebp - 0x1dc]
add eax, 0xfffffffe
push ecx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x228], xmm0
fld dword [ebp - 0x228]
fstp dword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
mov ecx, dword [ebp - 0x1c4]
mov eax, esp
mov esi, dword [ebp - 0x1c0]
push 4
fstp dword [ebp - 0x1cc]
mov byte [eax + 3], cl
mov ecx, dword [ebp - 0x1d8]
mov word [eax], 0xa0a
mov byte [eax + 2], 0xa
mov eax, dword [ebp - 0x1e0]
add eax, esi
add ecx, eax
mov eax, dword [ebp - 0x1dc]
mov dword [ebp - 0x18], ecx
add eax, 2
push eax
lea edx, [ecx + 2]
mov ecx, dword [ebp - 0x1e4]
lea ecx, [ecx - 1]
call fcn.10094830
mov eax, dword [0x100c8660]
add esp, 0xc
cmp byte [ebp - 0x1c5], 0
mov dword [ebp - 0x1d0], eax
je 0x100a076a
mov word [ebp - 0x1d0], 0x7d78
mov byte [ebp - 0x1ce], 0x82
mov eax, dword [ebp - 0x234]
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1e4]
add edx, 3
mov byte [ebp - 0x1cd], al
cvttss2si eax, dword [ebp - 0x1cc]
push dword [ebp - 0x1d0]
add eax, 2
push 2
push eax
call fcn.100947f0
mov ecx, dword [ebp - 0x4c]
add esp, 0xc
test ecx, ecx
jle 0x100a08b3
mov eax, dword [ebp - 0x1e8]
xorps xmm4, xmm4
movss xmm3, dword [0x100b8840]
movss xmm2, dword [0x100b8838]
cvtsi2ss xmm4, eax
mulss xmm4, dword [0x100b8654]
andps xmm3, xmm4
movaps xmm0, xmm4
xorps xmm0, xmm3
movaps xmm1, xmm4
cmpltss xmm0, xmm2
andps xmm2, xmm0
orps xmm2, xmm3
addss xmm1, xmm2
subss xmm1, xmm2
movss xmm2, dword [0x100b8664]
movaps xmm0, xmm1
subss xmm0, xmm4
cmpnless xmm0, xmm3
andps xmm0, xmm2
subss xmm1, xmm0
cvttss2si eax, xmm1
cmp ecx, eax
jg 0x100a08b3
cmp byte [ebp - 0x1b9], 0
jne 0x100a08b3
mov eax, dword [0x100d62c0]
test eax, eax
jne 0x100a0854
mov edx, ecx
lea ecx, [ebp - 0x218]
call fcn.10036da0
push 2
push eax
push ecx
mov ecx, dword [ebp - 0x1c4]
mov eax, esp
mov dword [ebp - 4], 0x30
mov byte [eax + 3], cl
mov ecx, 0x101074e0
jmp 0x100a0881
cmp eax, 1
jne 0x100a08b3
mov edx, ecx
lea ecx, [ebp - 0x218]
call fcn.10036da0
push 2
push eax
push ecx
mov ecx, dword [ebp - 0x1c4]
mov eax, esp
mov dword [ebp - 4], 0x31
mov byte [eax + 3], cl
mov ecx, 0x101074b0
push dword [ebp - 0x18]
mov word [eax], 0xffff
mov byte [eax + 2], 0xff
cvttss2si eax, dword [ebp - 0x1cc]
add eax, dword [ebp - 0x1e4]
push eax
call fcn.10094920
lea ecx, [ebp - 0x218]
mov dword [ebp - 4], 0xffffffff
call fcn.100253d0
add esi, 6
mov dword [ebp - 0x1c0], esi
cmp byte [0x100c8334], 0
je 0x100a0c92
mov eax, dword [0x10104b40]
mov ecx, dword [ebp - 0x23c]
call eax
test eax, eax
je 0x100a0abb
mov edx, dword [0x10104b44]
mov ecx, eax
call edx
test eax, eax
je 0x100a0abb
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
mov ecx, eax
call edx
mov ecx, dword [0x10104a18]
push eax
mov edx, dword [ecx]
mov edx, dword [edx + 0x30]
call edx
mov edx, eax
mov dword [ebp - 0x20], 0
mov ecx, edx
mov dword [ebp - 0x1c], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x30], xmm0
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x100a0923
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.10049a90
mov dword [ebp - 4], 0x32
xorps xmm0, xmm0
movups xmmword [ebp - 0x60], xmm0
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
mov byte [ebp - 4], 0x33
mov edx, dword [ebp - 0x20]
test edx, edx
jne 0x100a097d
movups xmmword [ebp - 0x48], xmm0
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], dl
jmp 0x100a0a50
cmp dword [ebp - 0x1c], 8
lea eax, [ebp - 0x30]
mov ecx, dword [0x100d7530]
cmovae eax, dword [ebp - 0x30]
push 0
push 0
push 0
push 0
push edx
push eax
push 0
push 0xfde9
call ecx
mov esi, eax
lea ecx, [ebp - 0x200]
push 0
push esi
call fcn.1003b7d0
push eax
lea ecx, [ebp - 0x60]
call fcn.1003b750
mov ecx, dword [ebp - 0x1ec]
cmp ecx, 0x10
jb 0x100a09f4
mov edx, dword [ebp - 0x200]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100a09ea
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a0a95
push ecx
push edx
call fcn.100a57c1
add esp, 8
cmp dword [ebp - 0x4c], 0x10
lea ecx, [ebp - 0x60]
mov edx, dword [0x100d7530]
lea eax, [ebp - 0x30]
cmovae ecx, dword [ebp - 0x60]
cmp dword [ebp - 0x1c], 8
push 0
cmovae eax, dword [ebp - 0x30]
push 0
push esi
push ecx
push dword [ebp - 0x20]
mov dword [ebp - 0x1f0], 0
push eax
push 0
push 0xfde9
mov dword [ebp - 0x1ec], 0xf
mov byte [ebp - 0x200], 0
call edx
movups xmm0, xmmword [ebp - 0x60]
movups xmmword [ebp - 0x48], xmm0
movq xmm0, qword [ebp - 0x50]
movq qword [ebp - 0x38], xmm0
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x1c]
mov byte [ebp - 0x60], 0
mov dword [ebp - 0x4c], 0xf
mov dword [ebp - 0x50], 0
cmp ecx, 8
jb 0x100a0aa5
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x100a0a9b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100a0a9b
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100a57c1
add esp, 8
xor eax, eax
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 7
mov word [ebp - 0x30], ax
jmp 0x100a0adf
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x38], 0
push str.error
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x34], 0
movups xmmword [ebp - 0x48], xmm0
call fcn.10025cf0
mov dword [ebp - 4], 0x34
lea eax, [ebp - 0x48]
cmp dword [ebp - 0x34], 0x10
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0x48]
lea esi, [ebp - 0x48]
cmovae eax, edx
cmovae ecx, edx
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x38]
add eax, ecx
cmp dword [ebp - 0x34], 0x10
mov dword [ebp - 0x228], eax
cmovae esi, edx
cmp esi, eax
je 0x100a0b3f
sub dword [ebp - 0x18], esi
mov edi, dword [ebp - 0x18]
nop dword [eax + eax]
movsx eax, byte [esi]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_toupper]
mov byte [esi + edi], al
add esp, 4
inc esi
cmp esi, dword [ebp - 0x228]
jne 0x100a0b20
mov edi, dword [ebp - 0x240]
mov eax, dword [0x100d62c0]
test eax, eax
jne 0x100a0bd9
cmp byte [ebp - 0x1c5], 0
lea eax, [ebp - 0x48]
mov esi, dword [ebp - 0x1c0]
push 2
push eax
push ecx
mov eax, esp
je 0x100a0ba6
mov ecx, dword [ebp - 0x1c4]
mov byte [eax + 3], cl
mov ecx, 0x101074e0
mov word [eax], 0xffff
mov byte [eax + 2], 0xff
mov eax, dword [ebp - 0x1e0]
add eax, esi
add eax, dword [ebp - 0x1d8]
push eax
mov eax, dword [ebp - 0x1dc]
cdq
sub eax, edx
sar eax, 1
add eax, dword [ebp - 0x1e4]
push eax
call fcn.10094920
jmp 0x100a0c51
mov dword [eax], 0xd2ffffff
mov ecx, 0x101074e0
mov eax, dword [ebp - 0x1e0]
add eax, esi
add eax, dword [ebp - 0x1d8]
push eax
mov eax, dword [ebp - 0x1dc]
cdq
sub eax, edx
sar eax, 1
add eax, dword [ebp - 0x1e4]
push eax
call fcn.10094920
jmp 0x100a0c51
cmp eax, 1
jne 0x100a0c4b
cmp byte [ebp - 0x1c5], 0
lea eax, [ebp - 0x48]
push 2
push eax
push ecx
mov eax, esp
je 0x100a0c04
mov ecx, dword [ebp - 0x1c4]
mov word [eax], 0xffff
mov byte [eax + 2], 0xff
mov byte [eax + 3], cl
jmp 0x100a0c0a
mov dword [eax], 0xd2ffffff
mov eax, dword [ebp - 0x1e0]
mov ecx, 0x101074b0
add eax, dword [ebp - 0x1c0]
add eax, dword [ebp - 0x1d8]
push eax
mov eax, dword [ebp - 0x1dc]
cdq
sub eax, edx
sar eax, 1
add eax, dword [ebp - 0x1e4]
push eax
call fcn.10094920
mov eax, dword [ebp - 0x1c0]
add eax, dword [0x101074e8]
mov dword [ebp - 0x1c0], eax
mov esi, dword [ebp - 0x1c0]
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x34]
cmp eax, 0x10
jb 0x100a0c98
mov edx, dword [ebp - 0x48]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x100a0c86
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100a0c86
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100a57c1
add esp, 8
jmp 0x100a0c98
mov esi, dword [ebp - 0x1c0]
cmp byte [0x100c82ac], 0
je 0x100a0e0c
cmp byte [ebp - 0x1c5], 0
je 0x100a0cc1
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x28]
call eax
movsx eax, word [eax*8 + 0x10109d08]
jmp 0x100a0cd7
mov eax, dword [0x10104ce4]
mov ecx, dword [ebp - 0x23c]
add eax, 0xffffff9e
xor eax, 0xe49bf6b5
mov eax, dword [eax + ecx]
mov edx, eax
mov dword [ebp - 0x18], eax
mov ecx, eax
shr edx, 8
mov edi, eax
shr ecx, 0x10
movzx eax, al
xor eax, 0x811c9dc5
mov dword [ebp - 0x240], ecx
imul ecx, eax, 0x1000193
movzx eax, dl
shr edi, 0x18
xor ecx, eax
mov eax, dword [ebp - 0x240]
imul ecx, ecx, 0x1000193
movzx eax, al
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, 0x10109fd4
xor eax, edi
imul eax, eax, 0x1000193
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x50]
push eax
call fcn.100a4780
mov edx, dword [0x10109fd8]
lea ecx, [ebp - 0x200]
xorps xmm0, xmm0
mov eax, dword [eax + 4]
test eax, eax
mov dword [ebp - 0x1f0], 0
cmovne edx, eax
mov dword [ebp - 0x1ec], 0
movups xmmword [ebp - 0x200], xmm0
cmp edx, dword [0x10109fd8]
je 0x100a0d76
push 1
lea eax, [edx + 0xc]
push eax
jmp 0x100a0d7d
push 0
push 0x100b267e
call fcn.10025cf0
push 2
lea eax, [ebp - 0x200]
mov dword [ebp - 4], 0x35
push eax
mov eax, dword [ebp - 0x1c4]
movzx ecx, al
mov eax, dword [ebp - 0x1dc]
shl ecx, 0x18
or ecx, 0xffffff
cdq
push ecx
mov ecx, dword [ebp - 0x1e0]
sub eax, edx
add ecx, esi
sar eax, 1
add ecx, dword [ebp - 0x1d8]
add eax, dword [ebp - 0x1e4]
push ecx
push eax
mov ecx, 0x1010751c
call fcn.10094920
mov ecx, dword [ebp - 0x1ec]
cmp ecx, 0x10
jb 0x100a0e0c
mov edx, dword [ebp - 0x200]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100a0e02
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100a0e02
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100a57c1
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.100a5346
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4