Function at 0x100be680
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x4f4
mov eax, dword [0x10216634]
push ebx
push esi
push edi
cmp byte [eax + 0x379d], 0
mov edi, ecx
mov dword [esp + 0x28], edi
je 0x100c13c4
cmp dword [eax + 0x3760], 0
je 0x100c13c4
cmp dword [eax + 0x3764], 0
je 0x100c13c4
test edi, edi
je 0x100c13d8
mov eax, dword [0x102187c8]
cmp dword [eax], 0
je 0x100c13d8
mov eax, dword [0x1021663c]
mov ecx, dword [eax + 0x10]
mov eax, dword [ecx]
mov eax, dword [eax + 0x174]
call eax
test al, al
jne 0x100c13d8
mov eax, dword fs:[0x2c]
mov ecx, dword [0x10217cb0]
mov esi, dword [eax + ecx*4]
mov eax, dword [0x104ee8d0]
mov dword [esp + 0x4c], esi
cmp eax, dword [esi + 4]
jle 0x100be7a3
push 0x104ee8d0
call fcn.1015fec1
add esp, 4
cmp dword [0x104ee8d0], 0xffffffff
jne 0x100be7a3
mov eax, dword [0x1021663c]
xor ebx, ebx
movq xmm0, qword [str.YEiT_fMSVYO_]
mov eax, dword [eax + 8]
mov dword [esp + 0x40], eax
mov ax, word [0x101b0b2c]
mov word [esp + 0x58], ax
mov al, byte [0x101b0b2e]
movq qword [esp + 0x50], xmm0
mov byte [esp + 0x5a], al
nop dword [eax + eax]
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x50], cl
inc ebx
cmp ebx, 0xb
jl 0x100be760
mov ecx, dword [esp + 0x40]
lea edx, [esp + 0x50]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 0x3c]
call eax
push 0x104ee8d0
mov dword [0x104ee8c8], eax
call fcn.1015fe70
add esp, 4
mov eax, dword [0x104ee8cc]
cmp eax, dword [esi + 4]
jle 0x100be83e
push 0x104ee8cc
call fcn.1015fec1
add esp, 4
cmp dword [0x104ee8cc], 0xffffffff
jne 0x100be83e
xorps xmm0, xmm0
mov dword [0x104ee898], 0
push 2
push 0x104ee898
mov dword [0x104ee89c], 0
mov dword [0x104ee8a0], 0
movups xmmword [0x104ee8a4], xmm0
mov dword [0x104ee8bc], 0
movq qword [0x104ee8b4], xmm0
mov dword [0x104ee8c0], 0
mov dword [0x104ee8c4], 0
call fcn.1015f314
push 0x1018c290
call fcn.1015fe0a
add esp, 0xc
push 0x104ee8cc
call fcn.1015fe70
add esp, 4
push 0x104ee898
call fcn.1015f330
add esp, 4
test eax, eax
jne 0x100c13df
cmp dword [0x104ee8c4], 0x7fffffff
je 0x100c13e6
mov eax, dword [0x104ee8f4]
cmp eax, dword [esi + 4]
jle 0x100be98c
push 0x104ee8f4
call fcn.1015fec1
add esp, 4
cmp dword [0x104ee8f4], 0xffffffff
jne 0x100be98c
push 0x30
mov dword [0x104ee8d4], 0
mov dword [0x104ee8d8], 0
mov dword [0x104ee8dc], 0
call fcn.1015fe37
mov ebx, eax
add esp, 4
mov dword [ebx], ebx
mov dword [ebx + 4], ebx
push 0x40
mov dword [0x104ee8d8], ebx
mov dword [0x104ee8e0], 0
mov dword [0x104ee8e4], 0
mov dword [0x104ee8e8], 0
mov dword [0x104ee8ec], 7
mov dword [0x104ee8f0], 8
mov dword [0x104ee8d4], 0x3f800000
call fcn.1015fe37
mov ecx, dword [0x104ee8e0]
mov esi, eax
mov eax, dword [0x104ee8e8]
add esp, 4
sub eax, ecx
sar eax, 2
test eax, eax
je 0x100be94e
lea edx, [eax*4]
mov eax, ecx
cmp edx, 0x1000
jb 0x100be944
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1415
push edx
push ecx
call fcn.1015fe24
add esp, 8
lea eax, [esi + 0x40]
mov dword [0x104ee8e0], esi
mov dword [0x104ee8e4], eax
mov dword [0x104ee8e8], eax
cmp esi, eax
je 0x100be96e
mov dword [esi], ebx
add esi, 4
cmp esi, eax
jne 0x100be965
push 0x1018c270
call fcn.1015fe0a
add esp, 4
push 0x104ee8f4
call fcn.1015fe70
mov esi, dword [esp + 0x50]
add esp, 4
mov eax, dword [0x104ee8f8]
cmp eax, dword [esi + 4]
jle 0x100beab3
push 0x104ee8f8
call fcn.1015fec1
add esp, 4
cmp dword [0x104ee8f8], 0xffffffff
jne 0x100beab3
push 0x24
mov dword [0x104ee8fc], 0
mov dword [0x104ee900], 0
mov dword [0x104ee904], 0
call fcn.1015fe37
mov ebx, eax
add esp, 4
mov dword [ebx], ebx
mov dword [ebx + 4], ebx
push 0x40
mov dword [0x104ee900], ebx
mov dword [0x104ee908], 0
mov dword [0x104ee90c], 0
mov dword [0x104ee910], 0
mov dword [0x104ee914], 7
mov dword [0x104ee918], 8
mov dword [0x104ee8fc], 0x3f800000
call fcn.1015fe37
mov ecx, dword [0x104ee908]
mov esi, eax
mov eax, dword [0x104ee910]
add esp, 4
sub eax, ecx
sar eax, 2
test eax, eax
je 0x100bea77
lea edx, [eax*4]
mov eax, ecx
cmp edx, 0x1000
jb 0x100bea6d
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1415
push edx
push ecx
call fcn.1015fe24
add esp, 8
lea eax, [esi + 0x40]
mov dword [0x104ee908], esi
mov dword [0x104ee90c], eax
mov dword [0x104ee910], eax
cmp esi, eax
je 0x100bea99
nop
mov dword [esi], ebx
add esi, 4
cmp esi, eax
jne 0x100bea90
push 0x1018c250
call fcn.1015fe0a
add esp, 4
push 0x104ee8f8
call fcn.1015fe70
add esp, 4
mov eax, dword [0x10216630]
xorps xmm0, xmm0
movups xmmword [esp + 0xc8], xmm0
mov dword [esp + 0xc4], 0x437f0000
mov ecx, edi
mov dword [esp + 0xd8], 0
mov dword [esp + 0xdc], 0xf
mov byte [esp + 0xc8], 0
mov eax, dword [eax + 0xc]
movss xmm0, dword [eax]
mov eax, dword [edi]
movss dword [esp + 0xc0], xmm0
mov eax, dword [eax + 4]
call eax
mov edx, eax
mov ecx, 0x811c9dc5
mov al, byte [edx]
test al, al
je 0x100c1356
movsx eax, al
lea edx, [edx + 1]
xor eax, ecx
imul ecx, eax, 0x1000193
mov al, byte [edx]
test al, al
jne 0x100beb16
cmp ecx, 0x7dd410c4
ja 0x100c0b0f
je 0x100c07bf
cmp ecx, 0x1b30ddf0
je 0x100bf49a
cmp ecx, 0x4400fb1c
je 0x100bf1c4
cmp ecx, 0x4e704c3e
jne 0x100c1356
mov eax, dword [0x10216634]
test byte [eax + 0x3764], 8
je 0x100c1328
mov eax, dword [0x1021663c]
xor ebx, ebx
mov esi, dword [eax + 0x10]
mov eax, dword [str.AFSEQ_:]
mov dword [esp + 0x28], eax
mov ax, word [0x101b0af8]
mov word [esp + 0x2c], ax
mov al, byte [0x101b0afa]
mov byte [esp + 0x2e], al
nop dword [eax]
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x28], cl
inc ebx
cmp ebx, 7
jl 0x100beba0
xorps xmm0, xmm0
mov dword [esp + 0xa0], 0
lea ecx, [esp + 0x28]
mov dword [esp + 0xa4], 0
movups xmmword [esp + 0x90], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100bebf0
sub ecx, edx
lea eax, [esp + 0x28]
push ecx
push eax
lea ecx, [esp + 0x98]
call fcn.100291a0
cmp dword [esp + 0xa4], 0xf
lea edx, [esp + 0x90]
mov eax, dword [edi]
mov ecx, edi
cmova edx, dword [esp + 0x90]
push 0
push edx
mov eax, dword [eax + 0x18]
call eax
mov edx, dword [esi]
mov ecx, esi
push eax
mov edx, dword [edx + 0x24]
call edx
mov ecx, dword [esp + 0xa4]
mov edi, eax
cmp ecx, 0xf
jbe 0x100bec76
mov edx, dword [esp + 0x90]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100bec6c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c13f7
push ecx
push edx
call fcn.1015fe24
add esp, 8
mov eax, dword [0x1021663c]
mov esi, dword [eax + 0x10]
mov eax, dword [0x102187c8]
mov ecx, dword [eax]
mov eax, dword [ecx + 8]
add ecx, 8
mov eax, dword [eax + 0x28]
call eax
mov edx, dword [esi]
lea ecx, [esp + 0x250]
push ecx
push eax
mov ecx, esi
mov edx, dword [edx + 0x20]
call edx
or ecx, 0xffffffff
test al, al
cmovne ecx, dword [esp + 0x2e0]
cmp edi, ecx
je 0x100c1328
mov eax, dword [0x1021663c]
push edi
mov ecx, dword [eax + 0x18]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
mov esi, eax
test esi, esi
je 0x100c1328
cmp dword [0x1042363c], 0
mov eax, 0x1019da84
mov ecx, 0x1019f424
cmove ecx, eax
push ecx
lea ecx, [esp + 0xe4]
call fcn.100217c0
movq xmm0, qword [0x101b0b18]
xor ebx, ebx
mov al, byte [0x101b0b20]
movq qword [esp + 0x28], xmm0
mov byte [esp + 0x30], al
nop dword [eax + eax]
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x28], cl
inc ebx
cmp ebx, 9
jl 0x100bed10
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x114]
call fcn.100217c0
mov ecx, dword [0x104ee8c8]
mov dword [esp + 0x28], eax
call fcn.10036ca0
mov edx, eax
lea ecx, [esp + 0x128]
call fcn.10004450
movups xmm0, xmmword [0x101b0b9c]
mov cl, byte [0x101b0bac]
xor ebx, ebx
mov edi, dword [0x10217ca4]
mov dword [esp + 0x40], eax
mov byte [esp + 0x20], cl
movups xmmword [esp + 0x10], xmm0
cmp edi, 2
jl 0x100beee6
movaps xmm0, xmmword [str.4444444444444444]
movaps xmm4, xmmword [0x101ed000]
movaps xmm3, xmmword [0x101ed410]
movaps xmm5, xmmword [0x101ed0c0]
movaps xmmword [esp + 0x50], xmm0
mov ecx, dword [esp + 0x50]
nop
movd xmm0, ebx
lea eax, [ebx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x10]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ebx + 0x10], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x14]
xorps xmm1, xmm0
movd dword [esp + ebx + 0x14], xmm1
add ebx, 8
cmp ebx, 0x10
jl 0x100bedb0
cmp ebx, 0x11
jl 0x100beee6
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x18c]
call fcn.100217c0
mov dword [esp + 0x4c], eax
mov ecx, esi
lea eax, [esp + 0xa8]
push eax
call fcn.10081d20
mov cl, byte [0x101b0b40]
mov esi, eax
mov byte [esp + 0x20], cl
jmp 0x100bef3f
mov eax, 0x8d3dcb09
mov cl, bl
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x10], cl
inc ebx
cmp ebx, 0x11
jl 0x100beee6
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x18c]
call fcn.100217c0
mov dword [esp + 0x4c], eax
mov ecx, esi
lea eax, [esp + 0xa8]
push eax
call fcn.10081d20
mov esi, eax
mov al, byte [0x101b0b40]
mov byte [esp + 0x20], al
movups xmm0, xmmword [str.VZ_U]
xor ebx, ebx
movups xmmword [esp + 0x10], xmm0
cmp edi, 2
jl 0x100bf084
movaps xmm0, xmmword [str.4444444444444444]
movaps xmm4, xmmword [0x101ed000]
movaps xmm3, xmmword [0x101ed410]
movaps xmm5, xmmword [0x101ed0c0]
movaps xmmword [esp + 0x50], xmm0
mov ecx, dword [esp + 0x50]
nop dword [eax + eax]
movd xmm0, ebx
lea eax, [ebx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x10]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ebx + 0x10], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x14]
xorps xmm1, xmm0
movd dword [esp + ebx + 0x14], xmm1
add ebx, 8
cmp ebx, 0x10
jl 0x100bef80
cmp ebx, 0x11
jge 0x100bf0ae
mov eax, 0x8d3dcb09
mov cl, bl
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x10], cl
inc ebx
cmp ebx, 0x11
jl 0x100bf084
push str._by
lea eax, [esp + 0xe4]
push eax
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x14c]
call fcn.100217c0
mov edx, eax
lea ecx, [esp + 0x160]
call fcn.10032950
mov edx, eax
lea ecx, [esp + 0x94]
call fcn.100250a0
push esi
mov edx, eax
lea ecx, [esp + 0x174]
call fcn.100250f0
push dword [esp + 0x4c]
mov edx, eax
lea ecx, [esp + 0x7c]
call fcn.100250f0
push dword [esp + 0x40]
mov edx, eax
lea ecx, [esp + 0x1a4]
call fcn.100250f0
push dword [esp + 0x28]
mov edx, eax
lea ecx, [esp + 0xfc]
call fcn.100250f0
push eax
lea ecx, [esp + 0xcc]
call fcn.10021610
lea ecx, [esp + 0xf8]
call fcn.10002120
lea ecx, [esp + 0x1a0]
call fcn.10002120
lea ecx, [esp + 0x78]
call fcn.10002120
lea ecx, [esp + 0x170]
call fcn.10002120
lea ecx, [esp + 0x90]
call fcn.10002120
lea ecx, [esp + 0x158]
call fcn.10002120
lea ecx, [esp + 0x140]
call fcn.10002120
lea ecx, [esp + 0xa8]
call fcn.10002120
lea ecx, [esp + 0x188]
call fcn.10002120
lea ecx, [esp + 0x128]
call fcn.10002120
lea ecx, [esp + 0x110]
call fcn.10002120
lea ecx, [esp + 0xe0]
jmp 0x100c1323
mov eax, dword [0x10216634]
test byte [eax + 0x3764], 0x10
je 0x100c1328
mov eax, dword [0x1021663c]
xor ebx, ebx
mov esi, dword [eax + 0x10]
mov eax, dword [str.AFSEQ_:]
mov dword [esp + 0x28], eax
mov ax, word [0x101b0af8]
mov word [esp + 0x2c], ax
mov al, byte [0x101b0afa]
mov byte [esp + 0x2e], al
nop dword [eax]
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x28], cl
inc ebx
cmp ebx, 7
jl 0x100bf200
xorps xmm0, xmm0
mov dword [esp + 0xa0], 0
lea ecx, [esp + 0x28]
mov dword [esp + 0xa4], 0
movups xmmword [esp + 0x90], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100bf250
sub ecx, edx
lea eax, [esp + 0x28]
push ecx
push eax
lea ecx, [esp + 0x98]
call fcn.100291a0
cmp dword [esp + 0xa4], 0xf
lea edx, [esp + 0x90]
mov eax, dword [edi]
mov ecx, edi
cmova edx, dword [esp + 0x90]
push 0
push edx
mov eax, dword [eax + 0x18]
call eax
mov edx, dword [esi]
mov ecx, esi
push eax
mov edx, dword [edx + 0x24]
call edx
mov ecx, dword [esp + 0xa4]
mov ebx, eax
cmp ecx, 0xf
jbe 0x100bf2d6
mov edx, dword [esp + 0x90]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100bf2cc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c13fc
push ecx
push edx
call fcn.1015fe24
add esp, 8
test ebx, ebx
je 0x100c1328
mov eax, dword [0x102187c8]
mov ecx, dword [eax]
test ecx, ecx
je 0x100c1328
mov eax, dword [0x1021663c]
add ecx, 8
mov esi, dword [eax + 0x10]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
mov edx, dword [esi]
lea ecx, [esp + 0x3a8]
push ecx
push eax
mov ecx, esi
mov edx, dword [edx + 0x20]
call edx
or ecx, 0xffffffff
test al, al
cmovne ecx, dword [esp + 0x438]
cmp ebx, ecx
je 0x100c1328
mov eax, dword [0x1021663c]
push ebx
mov ecx, dword [eax + 0x18]
call fcn.10036db0
mov dword [esp + 0x28], eax
test eax, eax
je 0x100c1328
mov ecx, 0x9e167e91
call fcn.100c3de0
mov edx, dword [0x102187c8]
mov esi, eax
mov ecx, 0x9e167e91
add esi, dword [edx]
call fcn.100c3de0
mov edx, dword [esp + 0x28]
mov ecx, dword [eax + edx]
cmp ecx, dword [esi]
je 0x100c1328
lea eax, [esp + 0x250]
mov ecx, edx
push eax
call fcn.100be640
mov eax, dword [0x1021663c]
lea ecx, [esp + 0x250]
push ecx
push ebx
mov ecx, dword [eax + 0x10]
call fcn.10081d10
test al, al
je 0x100c1328
mov eax, dword [str.CPWGWW:]
xor ebx, ebx
mov dword [esp + 0x28], eax
mov ax, word [0x101b0ae8]
mov word [esp + 0x2c], ax
mov al, byte [0x101b0aea]
mov byte [esp + 0x2e], al
nop dword [eax]
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x28], cl
inc ebx
cmp ebx, 7
jl 0x100bf3c0
push ecx
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x118]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
push eax
mov ecx, edi
call fcn.100be670
push eax
lea ecx, [esp + 0xac]
call fcn.100217c0
lea ecx, [esp + 0x110]
call fcn.10002120
push ecx
lea ecx, [esp + 0x1bc]
call fcn.10020f00
lea edx, [esp + 0x260]
lea ecx, [esp + 0x1b8]
call fcn.100af840
mov edx, str._bought
mov ecx, eax
call fcn.100af840
lea edx, [esp + 0xa8]
mov ecx, eax
call fcn.100c1fb0
lea eax, [esp + 0x110]
push eax
lea ecx, [esp + 0x1bc]
call fcn.10020e60
mov ecx, eax
call fcn.10006980
push eax
lea ecx, [esp + 0xcc]
call fcn.100215b0
lea ecx, [esp + 0x110]
call fcn.10002120
lea ecx, [esp + 0x1b8]
call fcn.10005ce0
jmp 0x100c131c
mov eax, dword [0x1021663c]
xor ebx, ebx
mov esi, dword [eax + 0x10]
mov eax, dword [str.AFSEQ_:]
mov dword [esp + 0x40], eax
mov ax, word [0x101b0af8]
mov word [esp + 0x44], ax
mov al, byte [0x101b0afa]
mov byte [esp + 0x46], al
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x40], cl
inc ebx
cmp ebx, 7
jl 0x100bf4c1
mov eax, dword [edi]
lea ecx, [esp + 0x40]
push 0
push ecx
mov ecx, edi
mov eax, dword [eax + 0x18]
call eax
mov edx, dword [esi]
mov ecx, esi
push eax
mov edx, dword [edx + 0x24]
call edx
mov ecx, dword [0x1021663c]
xor ebx, ebx
movq xmm0, qword [str.UABV_R_I_]
mov dword [esp + 0x4c], eax
mov esi, dword [ecx + 0x10]
mov cl, byte [0x101b0000]
movq qword [esp + 0x40], xmm0
mov byte [esp + 0x48], cl
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x40], cl
inc ebx
cmp ebx, 9
jl 0x100bf523
mov eax, dword [edi]
lea ecx, [esp + 0x40]
push 0
push ecx
mov ecx, edi
mov eax, dword [eax + 0x18]
call eax
mov edx, dword [esi]
mov ecx, esi
push eax
mov edx, dword [edx + 0x24]
call edx
mov cx, word [0x101b00dc]
mov esi, eax
movq xmm0, qword [str.PXQhP_WHU_]
xor ebx, ebx
mov word [esp + 0x58], cx
mov cl, byte [0x101b00de]
movq qword [esp + 0x50], xmm0
mov byte [esp + 0x5a], cl
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x50], cl
inc ebx
cmp ebx, 0xb
jl 0x100bf586
mov eax, dword [edi]
lea ecx, [esp + 0x50]
push 0
push ecx
mov ecx, edi
mov eax, dword [eax + 0x18]
call eax
mov edx, eax
lea ecx, [esp + 0x140]
call fcn.10004450
movq xmm0, qword [str.BPJVOK_]
xor ebx, ebx
mov al, byte [0x101b0b98]
movq qword [esp + 0x40], xmm0
mov byte [esp + 0x48], al
nop
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x40], cl
inc ebx
cmp ebx, 9
jl 0x100bf5e0
mov eax, dword [edi]
lea ecx, [esp + 0x40]
push 0
push ecx
mov ecx, edi
mov eax, dword [eax + 0x18]
call eax
cmp eax, 7
ja case.default.0x100bf61a
jmp dword [eax*4 + 0x100c1424]
mov eax, dword [str.generic]
mov dword [esp + 0x10], eax
mov ax, word [0x10195434]
mov word [esp + 0x14], ax
mov al, byte [0x10195436]
jmp 0x100bf75f
xorps xmm0, xmm0
mov edi, 4
movups xmmword [esp + 0x10], xmm0
mov dword [esp + 0x10], 0x64616568
mov byte [esp + 0x14], 0
jmp 0x100bf776
mov eax, dword [str.chest]
xorps xmm0, xmm0
movups xmmword [esp + 0x10], xmm0
mov dword [esp + 0x10], eax
mov edi, 5
mov al, byte [0x101b0aa0]
mov byte [esp + 0x14], al
mov byte [esp + 0x15], 0
jmp 0x100bf776
mov eax, dword [str.stomach]
mov dword [esp + 0x10], eax
mov ax, word [0x101b0aa8]
mov word [esp + 0x14], ax
mov al, byte [0x101b0aaa]
jmp 0x100bf75f
xorps xmm0, xmm0
mov edi, 8
movups xmmword [esp + 0x10], xmm0
mov dword [esp + 0x10], 0x7466656c
mov dword [esp + 0x14], 0x6d726120
mov byte [esp + 0x18], 0
jmp 0x100bf776
mov al, byte [0x101b0ab4]
xorps xmm0, xmm0
movups xmmword [esp + 0x10], xmm0
mov edi, 9
mov byte [esp + 0x18], al
movq xmm0, qword [str.right_arm]
movq qword [esp + 0x10], xmm0
mov byte [esp + 0x19], 0
jmp 0x100bf776
xorps xmm0, xmm0
mov edi, 8
movups xmmword [esp + 0x10], xmm0
mov dword [esp + 0x10], 0x7466656c
mov dword [esp + 0x14], 0x67656c20
mov byte [esp + 0x18], 0
jmp 0x100bf776
mov al, byte [0x101b0ac4]
xorps xmm0, xmm0
movups xmmword [esp + 0x10], xmm0
mov edi, 9
mov byte [esp + 0x18], al
movq xmm0, qword [str.right_leg]
movq qword [esp + 0x10], xmm0
mov byte [esp + 0x19], 0
jmp 0x100bf776
mov eax, dword [str.unknown]
mov dword [esp + 0x10], eax
mov ax, word [0x10195418]
mov word [esp + 0x14], ax
mov al, byte [0x1019541a]
xorps xmm0, xmm0
mov byte [esp + 0x16], al
movlpd qword [esp + 0x18], xmm0
mov edi, 7
mov byte [esp + 0x17], 0
mov eax, dword [0x102187c8]
mov ebx, 0xf
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], ebx
mov ecx, dword [eax]
mov eax, dword [ecx + 8]
add ecx, 8
mov eax, dword [eax + 0x28]
call eax
cmp dword [esp + 0x4c], eax
je 0x100c04b3
mov eax, dword [0x102187c8]
mov ecx, dword [eax]
mov eax, dword [ecx + 8]
add ecx, 8
mov eax, dword [eax + 0x28]
call eax
cmp esi, eax
jne 0x100c04b3
mov eax, dword [0x10216634]
test byte [eax + 0x3764], 1
jne 0x100bf80b
mov ecx, dword [esp + 0x154]
cmp ecx, ebx
jbe 0x100c1328
mov edx, dword [esp + 0x140]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100bf7fc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1406
push ecx
push edx
call fcn.1015fe24
add esp, 8
jmp 0x100c1328
mov eax, dword [0x1021663c]
push dword [esp + 0x4c]
mov ecx, dword [eax + 0x18]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
mov ecx, eax
mov dword [esp + 0x4c], ecx
test ecx, ecx
jne 0x100bf86d
mov ecx, dword [esp + 0x154]
cmp ecx, 0xf
jbe 0x100c1328
mov edx, dword [esp + 0x140]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100bf85e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1406
push ecx
push edx
call fcn.1015fe24
add esp, 8
jmp 0x100c1328
xorps xmm0, xmm0
mov dword [esp + 0x138], 0
movups xmmword [esp + 0x128], xmm0
mov dword [esp + 0x13c], 0xf
mov byte [esp + 0x128], 0
mov eax, dword [ecx]
mov eax, dword [eax + 0x1e8]
call eax
mov cx, word [0x101b00dc]
xor ebx, ebx
movq xmm0, qword [str.PXQhP_WHU_]
mov word [esp + 0x58], cx
mov cl, byte [0x101b00de]
mov dword [esp + 0x40], eax
movq qword [esp + 0x50], xmm0
mov byte [esp + 0x5a], cl
nop word [eax + eax]
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x50], cl
inc ebx
cmp ebx, 0xb
jl 0x100bf8d0
mov esi, dword [esp + 0x28]
lea ecx, [esp + 0x50]
push 0
push ecx
mov ecx, esi
mov eax, dword [esi]
mov eax, dword [eax + 0x18]
call eax
mov ecx, dword [esp + 0x40]
sub ecx, eax
jns 0x100bfac0
movups xmm0, xmmword [0x101b0b68]
movups xmmword [esp + 0x28], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x100bfa8f
xor ebx, ebx
cmp dword [0x10217ca4], 2
jl 0x100bfa65
movaps xmm0, xmmword [str.4444444444444444]
xor ecx, ecx
movaps xmm4, xmmword [0x101ed000]
movaps xmm3, xmmword [0x101ed410]
movaps xmm5, xmmword [0x101ed0c0]
movaps xmmword [esp + 0x50], xmm0
mov edx, dword [esp + 0x50]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x28]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x28], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x2c]
xorps xmm1, xmm0
movd dword [esp + ecx + 0x2c], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x100bf964
jmp 0x100bfa8f
mov eax, 0x8d3dcb09
mov cl, bl
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x28], cl
inc ebx
cmp ebx, 0x10
jl 0x100bfa65
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x114]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
push eax
lea ecx, [esp + 0x12c]
call fcn.100215b0
lea ecx, [esp + 0x110]
jmp 0x100bfcf7
mov eax, dword [0x101b0b60]
xor ebx, ebx
cmp dword [0x10217ca4], 2
movq xmm0, qword [0x101b0b58]
mov dword [esp + 0x30], eax
mov ax, word [0x101b0b64]
mov word [esp + 0x34], ax
mov al, byte [0x101b0b66]
movq qword [esp + 0x28], xmm0
mov byte [esp + 0x36], al
jl 0x100bfc00
movaps xmm2, xmmword [0x101ed000]
mov ebx, 8
movaps xmm4, xmmword [0x101ed410]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
mov eax, dword [str.4444444444444444]
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ed0c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ed030]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101b0b58]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x28], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ed0c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x2c]
xorps xmm1, xmm0
movd dword [esp + 0x2c], xmm1
nop dword [eax]
mov eax, 0x8d3dcb09
mov cl, bl
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x28], cl
inc ebx
cmp ebx, 0xf
jl 0x100bfc00
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x18c]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
mov cx, word [0x101b00dc]
xor ebx, ebx
movq xmm0, qword [str.PXQhP_WHU_]
mov word [esp + 0x58], cx
mov cl, byte [0x101b00de]
mov dword [esp + 0x28], eax
movq qword [esp + 0x50], xmm0
mov byte [esp + 0x5a], cl
nop dword [eax]
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x50], cl
inc ebx
cmp ebx, 0xb
jl 0x100bfc70
push ecx
lea eax, [esp + 0x54]
mov ecx, esi
push eax
call fcn.1009d090
mov ecx, dword [esp + 0x4c]
mov esi, eax
call fcn.10036dc0
sub eax, esi
lea ecx, [esp + 0xa8]
mov edx, eax
call fcn.10004450
push dword [esp + 0x28]
mov edx, eax
lea ecx, [esp + 0x114]
call fcn.100250a0
push eax
lea ecx, [esp + 0x12c]
call fcn.10021610
lea ecx, [esp + 0x110]
call fcn.10002120
lea ecx, [esp + 0xa8]
call fcn.10002120
lea ecx, [esp + 0x188]
call fcn.10002120
mov eax, dword [0x101b0adc]
mov dword [esp + 0x28], eax
mov ax, word [0x101b0ae0]
mov word [esp + 0x2c], ax
test ah, ah
je 0x100bfd37
xor ebx, ebx
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x28], cl
inc ebx
cmp ebx, 6
jl 0x100bfd16
xorps xmm0, xmm0
mov dword [esp + 0x88], 0
lea ecx, [esp + 0x28]
mov dword [esp + 0x8c], 0
movups xmmword [esp + 0x78], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100bfd60
sub ecx, edx
lea eax, [esp + 0x28]
push ecx
push eax
lea ecx, [esp + 0x80]
call fcn.100291a0
cmp dword [esp + 0x8c], 0xf
lea ecx, [esp + 0x78]
mov dword [esp + 0x40], ecx
jbe 0x100bfd95
mov eax, dword [esp + 0x78]
mov dword [esp + 0x40], eax
mov eax, dword [0x101b0aec]
xor ebx, ebx
mov dword [esp + 0x28], eax
mov al, byte [0x101b0af0]
mov byte [esp + 0x2c], al
nop dword [eax]
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x28], cl
inc ebx
cmp ebx, 5
jl 0x100bfdb0
xorps xmm0, xmm0
mov dword [esp + 0x180], 0
lea ecx, [esp + 0x28]
mov dword [esp + 0x184], 0
movups xmmword [esp + 0x170], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100bfe00
sub ecx, edx
lea eax, [esp + 0x28]
push ecx
push eax
lea ecx, [esp + 0x178]
call fcn.100291a0
cmp dword [esp + 0x184], 0xf
lea eax, [esp + 0x1b8]
mov ecx, dword [esp + 0x4c]
lea esi, [esp + 0x170]
cmova esi, dword [esp + 0x170]
push eax
call fcn.10154610
xorps xmm0, xmm0
mov dword [esp + 0xf0], 0
lea ecx, [esp + 0x1b8]
mov dword [esp + 0xf4], 0
movups xmmword [esp + 0xe0], xmm0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100bfe70
sub ecx, edx
lea eax, [esp + 0x1b8]
push ecx
push eax
lea ecx, [esp + 0xe8]
call fcn.100291a0
mov eax, dword [0x101b0b10]
xor ebx, ebx
mov dword [esp + 0x28], eax
mov al, byte [0x101b0b14]
mov byte [esp + 0x2c], al
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x28], cl
inc ebx
cmp ebx, 5
jl 0x100bfea2
xorps xmm0, xmm0
mov dword [esp + 0x108], 0
lea ecx, [esp + 0x28]
mov dword [esp + 0x10c], 0
movups xmmword [esp + 0xf8], xmm0
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100bfef0
sub ecx, edx
lea eax, [esp + 0x28]
push ecx
push eax
lea ecx, [esp + 0x100]
call fcn.100291a0
lea eax, [esp + 0xe0]
push eax
lea eax, [esp + 0xfc]
push eax
push dword [esp + 0x30]
lea ecx, [esp + 0x1ac]
call fcn.1002b100
push esi
lea ecx, [esp + 0x1a4]
call fcn.100214c0
mov dword [esp + 0x60], 0
lea ecx, [esp + 0x10]
mov dword [esp + 0x64], 0
xorps xmm0, xmm0
movups xmmword [esp + 0x50], xmm0
push edi
movups xmm0, xmmword [eax]
mov ebx, 0xf
push ecx
movups xmmword [esp + 0x58], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esp + 0x68], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov esi, dword [esp + 0x6c]
mov eax, esi
mov edx, dword [esp + 0x68]
sub eax, edx
cmp edi, eax
ja 0x100bffb7
lea eax, [edi + edx]
cmp esi, ebx
mov dword [esp + 0x68], eax
lea eax, [esp + 0x58]
cmova eax, dword [esp + 0x58]
lea esi, [eax + edx]
push esi
call fcn.10161360
add esp, 0xc
mov byte [edi + esi], 0
lea eax, [esp + 0x50]
jmp 0x100bffc9
push dword [esp + 0x30]
lea ecx, [esp + 0x5c]
push edi
call fcn.10029d90
mov ebx, dword [esp + 0x24]
mov dword [esp + 0xa0], 0
lea ecx, [esp + 0x90]
mov dword [esp + 0xa4], 0
xorps xmm0, xmm0
movups xmmword [esp + 0x90], xmm0
movups xmm0, xmmword [eax]
movups xmmword [esp + 0x90], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esp + 0xa0], xmm0
mov dword [eax + 0x14], 0xf
mov dword [eax + 0x10], 0
mov byte [eax], 0
push dword [esp + 0x40]
call fcn.100214c0
mov dword [esp + 0x168], 0
lea edx, [esp + 0x158]
mov dword [esp + 0x16c], 0
lea ecx, [esp + 0xa8]
xorps xmm0, xmm0
movups xmmword [esp + 0x158], xmm0
push 0x101b0ab8
movups xmm0, xmmword [eax]
movups xmmword [esp + 0x15c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esp + 0x16c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [esp + 0x144]
push eax
call fcn.10032950
mov edx, eax
lea ecx, [esp + 0x18c]
call fcn.100250a0
cmp dword [esp + 0x13c], 0xf
lea edx, [esp + 0x128]
mov edi, dword [esp + 0x138]
mov esi, eax
cmova edx, dword [esp + 0x128]
mov ecx, dword [esi + 0x10]
mov eax, dword [esi + 0x14]
sub eax, ecx
mov dword [esp + 0x28], ecx
cmp edi, eax
ja 0x100c0102
cmp dword [esi + 0x14], 0xf
lea eax, [ecx + edi]
mov dword [esi + 0x10], eax
mov eax, esi
mov dword [esp + 0x40], esi
jbe 0x100c00e5
mov eax, dword [esi]
mov dword [esp + 0x40], eax
push edi
add eax, ecx
push edx
push eax
call fcn.10161360
mov eax, dword [esp + 0x4c]
add esp, 0xc
mov ecx, dword [esp + 0x28]
add eax, edi
mov byte [eax + ecx], 0
jmp 0x100c0112
push edi
push edx
push dword [esp + 0x30]
mov ecx, esi
push edi
call fcn.10029d90
mov esi, eax
push esi
lea ecx, [esp + 0x2c]
call fcn.10021690
mov ecx, dword [esp + 0xdc]
cmp ecx, 0xf
jbe 0x100c0158
mov edx, dword [esp + 0xc8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100c014e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1401
push ecx
push edx
call fcn.1015fe24
add esp, 8
movups xmm0, xmmword [esp + 0x28]
mov ecx, dword [esp + 0x19c]
movups xmmword [esp + 0xc8], xmm0
movq xmm0, qword [esp + 0x38]
movq qword [esp + 0xd8], xmm0
cmp ecx, 0xf
jbe 0x100c01b0
mov edx, dword [esp + 0x188]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100c01a6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1401
push ecx
push edx
call fcn.1015fe24
add esp, 8
mov ecx, dword [esp + 0xbc]
mov dword [esp + 0x198], 0
mov dword [esp + 0x19c], 0xf
mov byte [esp + 0x188], 0
cmp ecx, 0xf
jbe 0x100c020a
mov edx, dword [esp + 0xa8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100c0200
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1401
push ecx
push edx
call fcn.1015fe24
add esp, 8
mov ecx, dword [esp + 0x16c]
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0xf
mov byte [esp + 0xa8], 0
cmp ecx, 0xf
jbe 0x100c0264
mov edx, dword [esp + 0x158]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100c025a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1401
push ecx
push edx
call fcn.1015fe24
add esp, 8
mov ecx, dword [esp + 0xa4]
mov dword [esp + 0x168], 0
mov dword [esp + 0x16c], 0xf
mov byte [esp + 0x158], 0
cmp ecx, 0xf
jbe 0x100c02be
mov edx, dword [esp + 0x90]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100c02b4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1401
push ecx
push edx
call fcn.1015fe24
add esp, 8
mov ecx, dword [esp + 0x64]
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0xf
mov byte [esp + 0x90], 0
cmp ecx, 0xf
jbe 0x100c0312
mov edx, dword [esp + 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100c0308
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1401
push ecx
push edx
call fcn.1015fe24
add esp, 8
mov ecx, dword [esp + 0x1b4]
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0xf
mov byte [esp + 0x50], 0
cmp ecx, 0xf
jbe 0x100c0363
mov edx, dword [esp + 0x1a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100c0359
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1401
push ecx
push edx
call fcn.1015fe24
add esp, 8
mov ecx, dword [esp + 0x10c]
mov dword [esp + 0x1b0], 0
mov dword [esp + 0x1b4], 0xf
mov byte [esp + 0x1a0], 0
cmp ecx, 0xf
jbe 0x100c03bd
mov edx, dword [esp + 0xf8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100c03b3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1401
push ecx
push edx
call fcn.1015fe24
add esp, 8
mov ecx, dword [esp + 0xf4]
cmp ecx, 0xf
jbe 0x100c03f9
mov edx, dword [esp + 0xe0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100c03ef
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1401
push ecx
push edx
call fcn.1015fe24
add esp, 8
mov ecx, dword [esp + 0x184]
cmp ecx, 0xf
jbe 0x100c0435
mov edx, dword [esp + 0x170]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100c042b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1401
push ecx
push edx
call fcn.1015fe24
add esp, 8
mov ecx, dword [esp + 0x8c]
cmp ecx, 0xf
jbe 0x100c046e
mov edx, dword [esp + 0x78]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100c0464
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1401
push ecx
push edx
call fcn.1015fe24
add esp, 8
mov ecx, dword [esp + 0x13c]
cmp ecx, 0xf
jbe 0x100c0748
mov edx, dword [esp + 0x128]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100c04a4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1406
push ecx
push edx
call fcn.1015fe24
add esp, 8
jmp 0x100c0748
mov eax, dword [0x102187c8]
mov ecx, dword [eax]
mov eax, dword [ecx + 8]
add ecx, 8
mov eax, dword [eax + 0x28]
call eax
cmp dword [esp + 0x4c], eax
jne 0x100c0748
mov eax, dword [0x102187c8]
mov ecx, dword [eax]
mov eax, dword [ecx + 8]
add ecx, 8
mov eax, dword [eax + 0x28]
call eax
cmp esi, eax
je 0x100c0748
mov eax, dword [0x10216634]
test byte [eax + 0x3764], 2
jne 0x100c053c
mov ecx, dword [esp + 0x154]
cmp ecx, 0xf
jbe 0x100c1328
mov edx, dword [esp + 0x140]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100c052d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1415
push ecx
push edx
call fcn.1015fe24
add esp, 8
jmp 0x100c1328
mov eax, dword [0x1021663c]
push esi
mov ecx, dword [eax + 0x18]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
mov esi, eax
test esi, esi
jne 0x100c0567
lea ecx, [esp + 0x10]
call fcn.10002120
lea ecx, [esp + 0x140]
jmp 0x100c1323
mov eax, dword [0x101b0aec]
xor ebx, ebx
mov dword [esp + 0x28], eax
mov al, byte [0x101b0af0]
mov byte [esp + 0x2c], al
nop dword [eax + eax]
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x28], cl
inc ebx
cmp ebx, 5
jl 0x100c0580
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x94]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
mov ecx, dword [0x101b0adc]
mov dword [esp + 0x40], ecx
mov cx, word [0x101b0ae0]
mov dword [esp + 0x28], eax
mov word [esp + 0x44], cx
test ch, ch
je 0x100c0601
xor ebx, ebx
nop dword [eax]
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x40], cl
inc ebx
cmp ebx, 6
jl 0x100c05e0
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0x174]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
mov edi, eax
mov ecx, esi
lea eax, [esp + 0x78]
push eax
call fcn.10081d20
movq xmm0, qword [0x101b0afc]
mov esi, eax
mov cl, byte [0x101b0b04]
xor ebx, ebx
movq qword [esp + 0x40], xmm0
mov byte [esp + 0x48], cl
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x40], cl
inc ebx
cmp ebx, 9
jl 0x100c0643
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0x1a4]
call fcn.100217c0
push esi
mov edx, eax
lea ecx, [esp + 0xfc]
call fcn.100250f0
lea ecx, [esp + 0x140]
mov edx, eax
push ecx
push edi
lea ecx, [esp + 0xe8]
call fcn.100250a0
mov edx, eax
lea ecx, [esp + 0x18c]
call fcn.10032950
lea ecx, [esp + 0x10]
mov edx, eax
push ecx
push dword [esp + 0x2c]
lea ecx, [esp + 0xb0]
call fcn.100250a0
mov edx, eax
lea ecx, [esp + 0x114]
call fcn.10032950
push eax
lea ecx, [esp + 0xcc]
call fcn.10021610
lea ecx, [esp + 0x110]
call fcn.10002120
lea ecx, [esp + 0xa8]
call fcn.10002120
lea ecx, [esp + 0x188]
call fcn.10002120
lea ecx, [esp + 0xe0]
call fcn.10002120
lea ecx, [esp + 0xf8]
call fcn.10002120
lea ecx, [esp + 0x1a0]
call fcn.10002120
lea ecx, [esp + 0x78]
call fcn.10002120
lea ecx, [esp + 0x170]
call fcn.10002120
lea ecx, [esp + 0x90]
call fcn.10002120
mov ebx, dword [esp + 0x24]
cmp ebx, 0xf
jbe 0x100c077a
mov ecx, dword [esp + 0x10]
inc ebx
mov eax, ecx
cmp ebx, 0x1000
jb 0x100c0770
mov ecx, dword [eax - 4]
add ebx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1415
push ebx
push ecx
call fcn.1015fe24
add esp, 8
mov ecx, dword [esp + 0x154]
cmp ecx, 0xf
jbe 0x100c1328
mov edx, dword [esp + 0x140]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100c07b0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1415
push ecx
push edx
call fcn.1015fe24
add esp, 8
jmp 0x100c1328
mov eax, dword [0x10216634]
test byte [eax + 0x3764], 8
je 0x100c1328
mov eax, dword [0x1021663c]
xor ebx, ebx
mov esi, dword [eax + 0x10]
mov eax, dword [str.AFSEQ_:]
mov dword [esp + 0x28], eax
mov ax, word [0x101b0af8]
mov word [esp + 0x2c], ax
mov al, byte [0x101b0afa]
mov byte [esp + 0x2e], al
nop dword [eax + eax]
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x28], cl
inc ebx
cmp ebx, 7
jl 0x100c0800
xorps xmm0, xmm0
mov dword [esp + 0x88], 0
lea ecx, [esp + 0x28]
mov dword [esp + 0x8c], 0
movups xmmword [esp + 0x78], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100c0846
sub ecx, edx
lea eax, [esp + 0x28]
push ecx
push eax
lea ecx, [esp + 0x80]
call fcn.100291a0
cmp dword [esp + 0x8c], 0xf
lea edx, [esp + 0x78]
mov eax, dword [edi]
mov ecx, edi
cmova edx, dword [esp + 0x78]
push 0
push edx
mov eax, dword [eax + 0x18]
call eax
mov edx, dword [esi]
mov ecx, esi
push eax
mov edx, dword [edx + 0x24]
call edx
mov ecx, dword [esp + 0x8c]
mov edi, eax
cmp ecx, 0xf
jbe 0x100c08c3
mov edx, dword [esp + 0x78]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100c08b9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c140b
push ecx
push edx
call fcn.1015fe24
add esp, 8
test edi, edi
je 0x100c1328
mov eax, dword [0x102187c8]
mov ecx, dword [eax]
test ecx, ecx
je 0x100c1328
mov eax, dword [0x1021663c]
add ecx, 8
mov esi, dword [eax + 0x10]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
mov edx, dword [esi]
lea ecx, [esp + 0x3a8]
push ecx
push eax
mov ecx, esi
mov edx, dword [edx + 0x20]
call edx
or ecx, 0xffffffff
test al, al
cmovne ecx, dword [esp + 0x438]
cmp edi, ecx
je 0x100c1328
mov eax, dword [0x1021663c]
push edi
mov ecx, dword [eax + 0x18]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
test eax, eax
je 0x100c1328
mov ecx, dword [0x1021663c]
mov esi, dword [ecx + 0x10]
lea ecx, [eax + 8]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
mov edx, dword [esi]
lea ecx, [esp + 0x250]
push ecx
push eax
mov ecx, esi
mov eax, dword [edx + 0x20]
call eax
mov eax, dword [0x1021663c]
lea edx, [esp + 0x250]
push edx
push edi
mov ecx, dword [eax + 0x10]
mov eax, dword [ecx]
mov eax, dword [eax + 0x20]
call eax
test al, al
je 0x100c1328
mov eax, dword [0x101b0bc0]
movups xmm0, xmmword [0x101b0bb0]
mov dword [esp + 0x20], eax
mov ax, word [0x101b0bc4]
mov word [esp + 0x24], ax
movups xmmword [esp + 0x10], xmm0
test ah, ah
je 0x100c12de
xor ebx, ebx
cmp dword [0x10217ca4], 2
jl 0x100c0ae0
movaps xmm0, xmmword [str.4444444444444444]
movaps xmm4, xmmword [0x101ed000]
movaps xmm3, xmmword [0x101ed410]
movaps xmm5, xmmword [0x101ed0c0]
movaps xmmword [esp + 0x50], xmm0
mov ecx, dword [esp + 0x50]
nop dword [eax]
movd xmm0, ebx
lea eax, [ebx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x10]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ebx + 0x10], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x14]
xorps xmm1, xmm0
movd dword [esp + ebx + 0x14], xmm1
add ebx, 8
cmp ebx, 0x10
jl 0x100c09d0
cmp ebx, 0x16
jge 0x100c12de
nop dword [eax + eax]
mov eax, 0x8d3dcb09
mov cl, bl
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x10], cl
inc ebx
cmp ebx, 0x16
jl 0x100c0ae0
jmp 0x100c12de
cmp ecx, 0xc3c7d299
je 0x100c0f9a
cmp ecx, 0xec398ed7
jne 0x100c1356
mov eax, dword [0x10216634]
test byte [eax + 0x3764], 4
je 0x100c1328
mov eax, dword [0x1021663c]
xor ebx, ebx
mov esi, dword [eax + 0x10]
mov eax, dword [str.AFSEQ_:]
mov dword [esp + 0x28], eax
mov ax, word [0x101b0af8]
mov word [esp + 0x2c], ax
mov al, byte [0x101b0afa]
mov byte [esp + 0x2e], al
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x28], cl
inc ebx
cmp ebx, 7
jl 0x100c0b60
xorps xmm0, xmm0
mov dword [esp + 0x88], 0
lea ecx, [esp + 0x28]
mov dword [esp + 0x8c], 0
movups xmmword [esp + 0x78], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100c0ba6
sub ecx, edx
lea eax, [esp + 0x28]
push ecx
push eax
lea ecx, [esp + 0x80]
call fcn.100291a0
cmp dword [esp + 0x8c], 0xf
lea edx, [esp + 0x78]
mov eax, dword [edi]
mov ecx, edi
cmova edx, dword [esp + 0x78]
push 0
push edx
mov eax, dword [eax + 0x18]
call eax
mov edx, dword [esi]
mov ecx, esi
push eax
mov edx, dword [edx + 0x24]
call edx
mov ecx, dword [esp + 0x8c]
mov edi, eax
cmp ecx, 0xf
jbe 0x100c0c23
mov edx, dword [esp + 0x78]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100c0c19
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1410
push ecx
push edx
call fcn.1015fe24
add esp, 8
mov eax, dword [0x1021663c]
mov esi, dword [eax + 0x10]
mov eax, dword [0x102187c8]
mov ecx, dword [eax]
mov eax, dword [ecx + 8]
add ecx, 8
mov eax, dword [eax + 0x28]
call eax
mov edx, dword [esi]
lea ecx, [esp + 0x3a8]
push ecx
push eax
mov ecx, esi
mov edx, dword [edx + 0x20]
call edx
or ecx, 0xffffffff
test al, al
cmovne ecx, dword [esp + 0x438]
cmp edi, ecx
je 0x100c1328
mov eax, dword [0x1021663c]
push edi
mov ecx, dword [eax + 0x18]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
test eax, eax
je 0x100c1328
lea ecx, [esp + 0x1b8]
push ecx
mov ecx, eax
call fcn.10154610
xorps xmm0, xmm0
mov dword [esp + 0x108], 0
lea ecx, [esp + 0x1b8]
mov dword [esp + 0x10c], 0
movups xmmword [esp + 0xf8], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100c0cb6
sub ecx, edx
lea eax, [esp + 0x1b8]
push ecx
push eax
lea ecx, [esp + 0x100]
call fcn.100291a0
movups xmm0, xmmword [str.ZECY_eHUZ.a_:dE]
mov ax, word [0x101b0b54]
mov word [esp + 0x20], ax
movups xmmword [esp + 0x10], xmm0
test ah, ah
je 0x100c0e5e
xor ebx, ebx
cmp dword [0x10217ca4], 2
jl 0x100c0e34
movaps xmm0, xmmword [str.4444444444444444]
movaps xmm4, xmmword [0x101ed000]
movaps xmm3, xmmword [0x101ed410]
movaps xmm5, xmmword [0x101ed0c0]
movaps xmmword [esp + 0x50], xmm0
mov ecx, dword [esp + 0x50]
nop word [eax + eax]
movd xmm0, ebx
lea eax, [ebx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x10]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ebx + 0x10], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x14]
xorps xmm1, xmm0
movd dword [esp + ebx + 0x14], xmm1
add ebx, 8
cmp ebx, 0x10
jl 0x100c0d30
cmp ebx, 0x12
jge 0x100c0e5e
mov eax, 0x8d3dcb09
mov cl, bl
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x10], cl
inc ebx
cmp ebx, 0x12
jl 0x100c0e34
xorps xmm0, xmm0
mov dword [esp + 0xf0], 0
lea ecx, [esp + 0x10]
mov dword [esp + 0xf4], 0
movups xmmword [esp + 0xe0], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100c0e86
sub ecx, edx
lea eax, [esp + 0x10]
push ecx
push eax
lea ecx, [esp + 0xe8]
call fcn.100291a0
lea eax, [esp + 0xf8]
push eax
lea eax, [esp + 0xe4]
push eax
push dword [esp + 0x30]
lea ecx, [esp + 0xb4]
call fcn.1002b100
mov ecx, dword [esp + 0xdc]
cmp ecx, 0xf
jbe 0x100c0efd
mov edx, dword [esp + 0xc8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100c0ef3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1415
push ecx
push edx
call fcn.1015fe24
add esp, 8
movups xmm0, xmmword [esp + 0xa8]
mov ecx, dword [esp + 0xf4]
movups xmmword [esp + 0xc8], xmm0
movq xmm0, qword [esp + 0xb8]
movq qword [esp + 0xd8], xmm0
cmp ecx, 0xf
jbe 0x100c0f5b
mov edx, dword [esp + 0xe0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100c0f51
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1415
push ecx
push edx
call fcn.1015fe24
add esp, 8
mov ecx, dword [esp + 0x10c]
cmp ecx, 0xf
jbe 0x100c1328
mov edx, dword [esp + 0xf8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100bf7fc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c1415
jmp 0x100bf7fc
mov eax, dword [0x10216634]
test byte [eax + 0x3764], 8
je 0x100c1328
mov eax, dword [0x1021663c]
xor ebx, ebx
mov esi, dword [eax + 0x10]
mov eax, dword [str.AFSEQ_:]
mov dword [esp + 0x28], eax
mov ax, word [0x101b0af8]
mov word [esp + 0x2c], ax
mov al, byte [0x101b0afa]
mov byte [esp + 0x2e], al
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x28], cl
inc ebx
cmp ebx, 7
jl 0x100c0fd3
xorps xmm0, xmm0
mov dword [esp + 0x88], 0
lea ecx, [esp + 0x28]
mov dword [esp + 0x8c], 0
movups xmmword [esp + 0x78], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100c1020
sub ecx, edx
lea eax, [esp + 0x28]
push ecx
push eax
lea ecx, [esp + 0x80]
call fcn.100291a0
cmp dword [esp + 0x8c], 0xf
lea edx, [esp + 0x78]
mov eax, dword [edi]
mov ecx, edi
cmova edx, dword [esp + 0x78]
push 0
push edx
mov eax, dword [eax + 0x18]
call eax
mov edx, dword [esi]
mov ecx, esi
push eax
mov edx, dword [edx + 0x24]
call edx
mov ecx, dword [esp + 0x8c]
mov edi, eax
cmp ecx, 0xf
jbe 0x100c109d
mov edx, dword [esp + 0x78]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100c1093
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c141a
push ecx
push edx
call fcn.1015fe24
add esp, 8
test edi, edi
je 0x100c1328
mov eax, dword [0x102187c8]
mov ecx, dword [eax]
test ecx, ecx
je 0x100c1328
mov eax, dword [0x1021663c]
add ecx, 8
mov esi, dword [eax + 0x10]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
mov edx, dword [esi]
lea ecx, [esp + 0x3a8]
push ecx
push eax
mov ecx, esi
mov edx, dword [edx + 0x20]
call edx
or ecx, 0xffffffff
test al, al
cmovne ecx, dword [esp + 0x438]
cmp edi, ecx
je 0x100c1328
mov eax, dword [0x1021663c]
push edi
mov ecx, dword [eax + 0x18]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
test eax, eax
je 0x100c1328
mov ecx, dword [0x1021663c]
mov esi, dword [ecx + 0x10]
lea ecx, [eax + 8]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
mov edx, dword [esi]
lea ecx, [esp + 0x250]
push ecx
push eax
mov ecx, esi
mov eax, dword [edx + 0x20]
call eax
mov eax, dword [0x1021663c]
lea edx, [esp + 0x250]
push edx
push edi
mov ecx, dword [eax + 0x10]
mov eax, dword [ecx]
mov eax, dword [eax + 0x20]
call eax
test al, al
je 0x100c1328
mov eax, dword [0x101b0b88]
movups xmm0, xmmword [0x101b0b78]
mov dword [esp + 0x20], eax
mov ax, word [0x101b0b8c]
mov word [esp + 0x24], ax
movups xmmword [esp + 0x10], xmm0
test ah, ah
je 0x100c12de
xor ebx, ebx
cmp dword [0x10217ca4], 2
jl 0x100c12b4
movaps xmm0, xmmword [str.4444444444444444]
movaps xmm4, xmmword [0x101ed000]
movaps xmm3, xmmword [0x101ed410]
movaps xmm5, xmmword [0x101ed0c0]
movaps xmmword [esp + 0x50], xmm0
mov ecx, dword [esp + 0x50]
nop word [eax + eax]
movd xmm0, ebx
lea eax, [ebx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x10]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ebx + 0x10], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x14]
xorps xmm1, xmm0
movd dword [esp + ebx + 0x14], xmm1
add ebx, 8
cmp ebx, 0x10
jl 0x100c11b0
cmp ebx, 0x16
jge 0x100c12de
mov eax, 0x8d3dcb09
mov cl, bl
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x10], cl
inc ebx
cmp ebx, 0x16
jl 0x100c12b4
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0xac]
call fcn.100217c0
push eax
lea edx, [esp + 0x264]
lea ecx, [esp + 0x114]
call fcn.10025360
push eax
lea ecx, [esp + 0xcc]
call fcn.10021610
lea ecx, [esp + 0x110]
call fcn.10002120
lea ecx, [esp + 0xa8]
call fcn.10002120
cmp dword [esp + 0xd8], 0
je 0x100c1356
lea eax, [esp + 0xc0]
mov ecx, 0x10423574
push eax
call fcn.100c1d10
lea eax, [esp + 0xc0]
mov ecx, 0x10423560
push eax
call fcn.100c1d10
mov ecx, dword [esp + 0xdc]
cmp ecx, 0xf
jbe 0x100c1392
mov edx, dword [esp + 0xc8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100c1388
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c141f
push ecx
push edx
call fcn.1015fe24
add esp, 8
push 0x104ee898
mov dword [esp + 0xdc], 0
mov dword [esp + 0xe0], 0xf
mov byte [esp + 0xcc], 0
call fcn.1015f362
add esp, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, 0x10423574
call fcn.10043ef0
mov ecx, 0x10423560
call fcn.10043ef0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 5
call fcn.1015f571
push 6
mov dword [0x104ee8c4], 0x7ffffffe
call fcn.1015f571
call fcn.10164f66
call fcn.10164f66
call fcn.10164f66
call fcn.10164f66
call fcn.10164f66
call fcn.10164f66
call fcn.10164f66
call fcn.10164f66
call fcn.10164f66
and esi, esi
or edx, dword [eax]
aas
test byte [ebx], 16
pop esi
test byte [ebx], 16
xchg esi, esi
or edx, dword [eax]
movsd dword es:[edi], dword [esi]
test byte [ebx], 16
int3