Function at 0x100cc14b
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x304
mov eax, dword [0x1020a0c0]
xor eax, esp
mov dword [esp + 0x300], eax
mov eax, dword [0x10227c40]
push ebx
push esi
push edi
cmp byte [eax + 0x3681], 0
mov edi, ecx
mov dword [esp + 0x14], edi
je 0x100cdd94
cmp dword [eax + 0x3660], 0
je 0x100cdd94
cmp dword [eax + 0x3664], 0
je 0x100cdd94
test edi, edi
je 0x100cdda8
mov eax, dword [0x10229e7c]
cmp dword [eax], 0
je 0x100cdda8
mov eax, dword [0x10227c48]
mov ecx, dword [eax + 0x10]
mov eax, dword [ecx]
mov eax, dword [eax + 0x174]
call eax
test al, al
jne 0x100cdda8
mov eax, dword fs:[0x2c]
mov ecx, dword [0x102296ac]
mov esi, dword [eax + ecx*4]
mov eax, dword [0x104e5774]
mov dword [esp + 0x18], esi
cmp eax, dword [esi + 4]
jle 0x100cb2c3
push 0x104e5774
call fcn.1019d7b4
add esp, 4
cmp dword [0x104e5774], 0xffffffff
jne 0x100cb2c3
mov eax, dword [0x10227c48]
xor ebx, ebx
movq xmm0, qword [str.XFh__rNRQXL_]
mov eax, dword [eax + 8]
mov dword [esp + 0x5c], eax
mov ax, word [0x101f34c8]
mov word [esp + 0x78], ax
mov al, byte [0x101f34ca]
movq qword [esp + 0x70], xmm0
mov byte [esp + 0x7a], al
nop dword [eax]
mov eax, 0x5397829d
mov cl, bl
mul ebx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x70], cl
inc ebx
cmp ebx, 0xb
jl 0x100cb280
mov ecx, dword [esp + 0x5c]
lea edx, [esp + 0x70]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 0x3c]
call eax
push 0x104e5774
mov dword [0x104e576c], eax
call fcn.1019d76a
add esp, 4
mov eax, dword [0x104e5770]
cmp eax, dword [esi + 4]
jle 0x100cb30c
push 0x104e5770
call fcn.1019d7b4
add esp, 4
cmp dword [0x104e5770], 0xffffffff
jne 0x100cb30c
push 2
push 0x104e573c
call fcn.1019c888
push 0x101c9a50
call fcn.1019d442
add esp, 0xc
push 0x104e5770
call fcn.1019d76a
add esp, 4
push 0x104e573c
call fcn.1019c8a7
add esp, 4
test eax, eax
jne 0x100cddbd
mov eax, dword [0x104e5798]
cmp eax, dword [esi + 4]
jle 0x100cb44a
push 0x104e5798
call fcn.1019d7b4
add esp, 4
cmp dword [0x104e5798], 0xffffffff
jne 0x100cb44a
push 0x30
mov dword [0x104e5778], 0
mov dword [0x104e577c], 0
mov dword [0x104e5780], 0
call fcn.1019d46f
mov ebx, eax
add esp, 4
mov dword [ebx], ebx
mov dword [ebx + 4], ebx
push 0x40
mov dword [0x104e577c], ebx
mov dword [0x104e5784], 0
mov dword [0x104e5788], 0
mov dword [0x104e578c], 0
mov dword [0x104e5790], 7
mov dword [0x104e5794], 8
mov dword [0x104e5778], 0x3f800000
call fcn.1019d46f
mov ecx, dword [0x104e5784]
mov esi, eax
mov eax, dword [0x104e578c]
add esp, 4
sub eax, ecx
sar eax, 2
test eax, eax
je 0x100cb40c
lea edx, [eax*4]
mov eax, ecx
cmp edx, 0x1000
jb 0x100cb402
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cdde1
push edx
push ecx
call fcn.1019d45c
add esp, 8
lea eax, [esi + 0x40]
mov dword [0x104e5784], esi
mov dword [0x104e5788], eax
mov dword [0x104e578c], eax
cmp esi, eax
je 0x100cb42c
mov dword [esi], ebx
add esi, 4
cmp esi, eax
jne 0x100cb423
push 0x101c9a30
call fcn.1019d442
add esp, 4
push 0x104e5798
call fcn.1019d76a
mov esi, dword [esp + 0x1c]
add esp, 4
mov eax, dword [0x104e579c]
cmp eax, dword [esi + 4]
jle 0x100cb573
push 0x104e579c
call fcn.1019d7b4
add esp, 4
cmp dword [0x104e579c], 0xffffffff
jne 0x100cb573
push 0x24
mov dword [0x104e57a0], 0
mov dword [0x104e57a4], 0
mov dword [0x104e57a8], 0
call fcn.1019d46f
mov ebx, eax
add esp, 4
mov dword [ebx], ebx
mov dword [ebx + 4], ebx
push 0x40
mov dword [0x104e57a4], ebx
mov dword [0x104e57ac], 0
mov dword [0x104e57b0], 0
mov dword [0x104e57b4], 0
mov dword [0x104e57b8], 7
mov dword [0x104e57bc], 8
mov dword [0x104e57a0], 0x3f800000
call fcn.1019d46f
mov ecx, dword [0x104e57ac]
mov esi, eax
mov eax, dword [0x104e57b4]
add esp, 4
sub eax, ecx
sar eax, 2
test eax, eax
je 0x100cb535
lea edx, [eax*4]
mov eax, ecx
cmp edx, 0x1000
jb 0x100cb52b
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cdde1
push edx
push ecx
call fcn.1019d45c
add esp, 8
lea eax, [esi + 0x40]
mov dword [0x104e57ac], esi
mov dword [0x104e57b0], eax
mov dword [0x104e57b4], eax
cmp esi, eax
je 0x100cb559
nop dword [eax]
mov dword [esi], ebx
add esi, 4
cmp esi, eax
jne 0x100cb550
push 0x101c9a10
call fcn.1019d442
add esp, 4
push 0x104e579c
call fcn.1019d76a
add esp, 4
mov eax, dword [0x10227c3c]
xorps xmm0, xmm0
movups xmmword [esp + 0xd8], xmm0
mov dword [esp + 0xd4], 0x437f0000
mov ecx, edi
mov dword [esp + 0xe8], 0
mov dword [esp + 0xec], 0xf
mov byte [esp + 0xd8], 0
mov eax, dword [eax + 0x10]
movss xmm0, dword [eax]
mov eax, dword [edi]
movss dword [esp + 0xd0], xmm0
mov eax, dword [eax + 4]
call eax
mov edx, eax
mov ecx, 0x811c9dc5
mov al, byte [edx]
test al, al
je 0x100cdd18
movsx eax, al
lea edx, [edx + 1]
xor eax, ecx
imul ecx, eax, 0x1000193
mov al, byte [edx]
test al, al
jne 0x100cb5d6
cmp ecx, 0x7dd410c4
ja 0x100cd52d
je 0x100cd22f
cmp ecx, 0x1b30ddf0
je 0x100cbebe
cmp ecx, 0x4400fb1c
je 0x100cbc52
cmp ecx, 0x4e704c3e
jne 0x100cdd18
mov eax, dword [0x10227c40]
test byte [eax + 0x3664], 8
je 0x100cdcea
mov eax, dword [0x10227c48]
xor ebx, ebx
mov esi, dword [eax + 0x10]
mov eax, dword [str._ERJP_]
mov dword [esp + 0x18], eax
mov ax, word [0x101f3500]
mov word [esp + 0x1c], ax
mov al, byte [0x101f3502]
mov byte [esp + 0x1e], al
nop dword [eax]
mov eax, 0x5397829d
mov cl, bl
mul ebx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x18], cl
inc ebx
cmp ebx, 7
jl 0x100cb660
xorps xmm0, xmm0
mov dword [esp + 0x54], 0
lea ecx, [esp + 0x18]
mov dword [esp + 0x58], 0
movups xmmword [esp + 0x44], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100cb6a0
sub ecx, edx
lea eax, [esp + 0x18]
push ecx
push eax
lea ecx, [esp + 0x4c]
call fcn.10027bd0
cmp dword [esp + 0x58], 0x10
lea edx, [esp + 0x44]
mov eax, dword [edi]
mov ecx, edi
cmovae edx, dword [esp + 0x44]
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 + 0x58]
mov edi, eax
cmp ecx, 0x10
jb 0x100cb714
mov edx, dword [esp + 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cb70a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cddc3
push ecx
push edx
call fcn.1019d45c
add esp, 8
mov eax, dword [0x10227c48]
mov esi, dword [eax + 0x10]
mov eax, dword [0x10229e7c]
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 + 0x1b0]
push ecx
push eax
mov ecx, esi
mov edx, dword [edx + 0x20]
call edx
or ecx, 0xffffffff
test al, al
cmovne ecx, dword [esp + 0x240]
cmp edi, ecx
je 0x100cdcea
mov eax, dword [0x10227c48]
push edi
mov ecx, dword [eax + 0x18]
call fcn.1007dd60
mov esi, eax
test esi, esi
je 0x100cdcea
push 0x10227c6c
lea ecx, [esp + 0x13c]
call fcn.10020950
movq xmm0, qword [0x101f353c]
xor ebx, ebx
mov al, byte [0x101f3544]
movq qword [esp + 0x18], xmm0
mov byte [esp + 0x20], al
mov eax, 0x5397829d
mov cl, bl
mul ebx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x18], cl
inc ebx
cmp ebx, 9
jl 0x100cb797
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0xf4]
call fcn.10020910
mov ecx, dword [0x104e576c]
mov dword [esp + 0x14], eax
call fcn.1008aa90
mov edx, eax
lea ecx, [esp + 0x108]
call fcn.10003db0
movups xmm0, xmmword [0x101f3480]
mov cl, byte [0x101f3490]
xor ebx, ebx
mov edi, dword [0x102296a0]
mov dword [esp + 0x18], eax
mov byte [esp + 0x6c], cl
lea eax, [ebx + 4]
lea ecx, [ebx + 0x1f]
movups xmmword [esp + 0x5c], xmm0
cmp edi, 2
jl 0x100cb972
movaps xmm0, xmmword [0x101ff820]
movaps xmm4, xmmword [0x101ff6c0]
movaps xmm3, xmmword [0x101ffba0]
movaps xmm6, xmmword [0x101ff720]
movd xmm7, ecx
movaps xmmword [esp + 0x70], xmm0
mov ecx, dword [esp + 0x70]
movd xmm5, 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
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x5c]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ebx + 0x5c], xmm1
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
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x60]
pxor xmm1, xmm0
movd dword [esp + ebx + 0x60], xmm1
add ebx, 8
cmp ebx, 0x10
jl 0x100cb844
cmp ebx, 0x11
jl 0x100cb972
lea eax, [esp + 0x5c]
push eax
lea ecx, [esp + 0xbc]
call fcn.10020910
mov dword [esp + 0x5c], eax
mov ecx, esi
lea eax, [esp + 0x88]
push eax
call fcn.10035c30
mov cl, byte [0x101f351c]
mov esi, eax
mov byte [esp + 0x3c], cl
jmp 0x100cb9c9
mov eax, 0x5397829d
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x5c], cl
inc ebx
cmp ebx, 0x11
jl 0x100cb972
lea eax, [esp + 0x5c]
push eax
lea ecx, [esp + 0xbc]
call fcn.10020910
mov dword [esp + 0x5c], eax
mov ecx, esi
lea eax, [esp + 0x88]
push eax
call fcn.10035c30
mov esi, eax
mov al, byte [0x101f351c]
mov byte [esp + 0x3c], al
movups xmm0, xmmword [str.WYZZ]
xor ebx, ebx
movups xmmword [esp + 0x2c], xmm0
cmp edi, 2
jl 0x100cbb20
movaps xmm0, xmmword [0x101ff820]
mov eax, 4
movaps xmm4, xmmword [0x101ff6c0]
movaps xmm3, xmmword [0x101ffba0]
movaps xmm6, xmmword [0x101ff720]
movd xmm5, eax
mov eax, 0x1f
movaps xmmword [esp + 0x70], xmm0
mov ecx, dword [esp + 0x70]
movd xmm7, eax
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
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x2c]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ebx + 0x2c], xmm1
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
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x30]
pxor xmm1, xmm0
movd dword [esp + ebx + 0x30], xmm1
add ebx, 8
cmp ebx, 0x10
jl 0x100cba20
cmp ebx, 0x11
jge 0x100cbb48
nop dword [eax]
mov eax, 0x5397829d
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x2c], cl
inc ebx
cmp ebx, 0x11
jl 0x100cbb20
push str._by
lea eax, [esp + 0x13c]
push eax
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0xac]
call fcn.10020910
mov edx, eax
lea ecx, [esp + 0x158]
call fcn.10030c10
mov edx, eax
lea ecx, [esp + 0x16c]
call fcn.10024850
push esi
mov edx, eax
lea ecx, [esp + 0x48]
call fcn.100248a0
push dword [esp + 0x5c]
mov edx, eax
lea ecx, [esp + 0x124]
call fcn.100248a0
push dword [esp + 0x18]
mov edx, eax
lea ecx, [esp + 0x19c]
call fcn.100248a0
push dword [esp + 0x14]
mov edx, eax
lea ecx, [esp + 0x184]
call fcn.100248a0
push eax
lea ecx, [esp + 0xdc]
call fcn.100207a0
lea ecx, [esp + 0x180]
call fcn.10002180
lea ecx, [esp + 0x198]
call fcn.10002180
lea ecx, [esp + 0x120]
call fcn.10002180
lea ecx, [esp + 0x44]
call fcn.10002180
lea ecx, [esp + 0x168]
call fcn.10002180
lea ecx, [esp + 0x150]
call fcn.10002180
lea ecx, [esp + 0xa0]
call fcn.10002180
lea ecx, [esp + 0x88]
call fcn.10002180
lea ecx, [esp + 0xb8]
call fcn.10002180
lea ecx, [esp + 0x108]
call fcn.10002180
lea ecx, [esp + 0xf0]
jmp 0x100cdcd9
mov eax, dword [0x10227c40]
test byte [eax + 0x3664], 0x10
je 0x100cdcea
mov eax, dword [0x10227c48]
xor ebx, ebx
mov esi, dword [eax + 0x10]
mov eax, dword [str._ERJP_]
mov dword [esp + 0x18], eax
mov ax, word [0x101f3500]
mov word [esp + 0x1c], ax
mov al, byte [0x101f3502]
mov byte [esp + 0x1e], al
nop dword [eax + eax]
mov eax, 0x5397829d
mov cl, bl
mul ebx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x18], cl
inc ebx
cmp ebx, 7
jl 0x100cbc90
xorps xmm0, xmm0
mov dword [esp + 0x54], 0
lea ecx, [esp + 0x18]
mov dword [esp + 0x58], 0
movups xmmword [esp + 0x44], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100cbcd0
sub ecx, edx
lea eax, [esp + 0x18]
push ecx
push eax
lea ecx, [esp + 0x4c]
call fcn.10027bd0
cmp dword [esp + 0x58], 0x10
lea edx, [esp + 0x44]
mov eax, dword [edi]
mov ecx, edi
cmovae edx, dword [esp + 0x44]
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 + 0x58]
mov esi, eax
cmp ecx, 0x10
jb 0x100cbd44
mov edx, dword [esp + 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cbd3a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cddc8
push ecx
push edx
call fcn.1019d45c
add esp, 8
test esi, esi
je 0x100cdcea
mov eax, dword [0x10229e7c]
mov ecx, dword [eax]
test ecx, ecx
je 0x100cdcea
call fcn.1007de00
cmp esi, eax
je 0x100cdcea
mov eax, dword [0x10227c48]
push esi
mov ecx, dword [eax + 0x18]
call fcn.1007dd60
mov dword [esp + 0x18], eax
test eax, eax
je 0x100cdcea
mov ecx, dword [0x10229e7c]
mov esi, dword [ecx]
mov ecx, eax
call fcn.100a6b30
mov ecx, esi
mov edi, eax
call fcn.100a6b30
mov ecx, dword [edi]
cmp ecx, dword [eax]
je 0x100cdcea
mov eax, dword [str.BSVHVT_]
xor ebx, ebx
mov dword [esp + 0x5c], eax
mov ax, word [0x101f3450]
mov word [esp + 0x60], ax
mov al, byte [0x101f3452]
mov byte [esp + 0x62], al
mov eax, 0x5397829d
mov cl, bl
mul ebx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x5c], cl
inc ebx
cmp ebx, 7
jl 0x100cbdc3
push ecx
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0xc0]
call fcn.10020910
mov ecx, eax
call fcn.100065d0
mov ecx, dword [esp + 0x18]
push eax
call fcn.100cb180
push eax
lea ecx, [esp + 0x8c]
call fcn.10020910
lea ecx, [esp + 0xb8]
call fcn.10002180
push ecx
lea ecx, [esp + 0x1b4]
call fcn.100201b0
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0xb8]
push eax
call fcn.10035c30
mov edx, eax
lea ecx, [esp + 0x1b0]
call fcn.100ceb60
mov edx, str._bought
mov ecx, eax
call fcn.100bbe10
lea edx, [esp + 0x88]
mov ecx, eax
call fcn.100ceb60
lea ecx, [esp + 0xb8]
call fcn.10002180
lea eax, [esp + 0xb8]
push eax
lea ecx, [esp + 0x1b4]
call fcn.10020110
mov ecx, eax
call fcn.100065d0
push eax
lea ecx, [esp + 0xdc]
call fcn.10020770
lea ecx, [esp + 0xb8]
call fcn.10002180
lea ecx, [esp + 0x1b0]
call fcn.10005880
lea ecx, [esp + 0x88]
jmp 0x100cdce5
mov eax, dword [0x10227c48]
xor ebx, ebx
mov esi, dword [eax + 0x10]
mov eax, dword [str._ERJP_]
mov dword [esp + 0x18], eax
mov ax, word [0x101f3500]
mov word [esp + 0x1c], ax
mov al, byte [0x101f3502]
mov byte [esp + 0x1e], al
mov eax, 0x5397829d
mov cl, bl
mul ebx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x18], cl
inc ebx
cmp ebx, 7
jl 0x100cbee5
mov eax, dword [edi]
lea ecx, [esp + 0x18]
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 [0x10227c48]
xor ebx, ebx
movq xmm0, qword [str.TBCYZQN]
mov dword [esp + 0x5c], eax
mov esi, dword [ecx + 0x10]
mov cl, byte [0x101f3528]
movq qword [esp + 0x18], xmm0
mov byte [esp + 0x20], cl
mov eax, 0x5397829d
mov cl, bl
mul ebx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x18], cl
inc ebx
cmp ebx, 9
jl 0x100cbf47
mov eax, dword [edi]
lea ecx, [esp + 0x18]
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 [0x101f34f8]
mov esi, eax
movq xmm0, qword [str.Q_PgQ_ZPIV_]
xor ebx, ebx
mov word [esp + 0x78], cx
mov cl, byte [0x101f34fa]
movq qword [esp + 0x70], xmm0
mov byte [esp + 0x7a], cl
nop word [eax + eax]
mov eax, 0x5397829d
mov cl, bl
mul ebx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x70], cl
inc ebx
cmp ebx, 0xb
jl 0x100cbfb0
mov eax, dword [edi]
lea ecx, [esp + 0x70]
push 0
push ecx
mov ecx, edi
mov eax, dword [eax + 0x18]
call eax
mov edx, eax
lea ecx, [esp + 0x150]
call fcn.10003db0
movq xmm0, qword [str.__C_KUNL]
xor ebx, ebx
mov al, byte [0x101f34bc]
movq qword [esp + 0x18], xmm0
mov byte [esp + 0x20], al
nop dword [eax + eax]
mov eax, 0x5397829d
mov cl, bl
mul ebx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x18], cl
inc ebx
cmp ebx, 9
jl 0x100cc010
mov eax, dword [edi]
lea ecx, [esp + 0x18]
push 0
push ecx
mov ecx, edi
mov eax, dword [eax + 0x18]
call eax
cmp eax, 7
ja case.default.0x100cc04a
jmp dword [eax*4 + 0x100cddf0]
mov eax, dword [str.generic]
mov dword [esp + 0x2c], eax
mov ax, word [0x101d6e54]
mov word [esp + 0x30], ax
mov al, byte [0x101d6e56]
jmp 0x100cc18f
xorps xmm0, xmm0
mov edi, 4
movups xmmword [esp + 0x2c], xmm0
mov dword [esp + 0x2c], 0x64616568
mov byte [esp + 0x30], 0
jmp 0x100cc1a6
mov eax, dword [str.chest]
xorps xmm0, xmm0
movups xmmword [esp + 0x2c], xmm0
mov dword [esp + 0x2c], eax
mov edi, 5
mov al, byte [0x101f3410]
mov byte [esp + 0x30], al
mov byte [esp + 0x31], 0
jmp 0x100cc1a6
mov eax, dword [str.stomach]
mov dword [esp + 0x2c], eax
mov ax, word [0x101f3418]
mov word [esp + 0x30], ax
mov al, byte [0x101f341a]
jmp 0x100cc18f
xorps xmm0, xmm0
mov edi, 8
movups xmmword [esp + 0x2c], xmm0
mov dword [esp + 0x2c], 0x7466656c
mov dword [esp + 0x30], 0x6d726120
mov byte [esp + 0x34], 0
jmp 0x100cc1a6
mov al, byte [0x101f3424]
xorps xmm0, xmm0
movups xmmword [esp + 0x2c], xmm0
mov edi, 9
mov byte [esp + 0x34], al
movq xmm0, qword [str.right_arm]
movq qword [esp + 0x2c], xmm0
mov byte [esp + 0x35], 0
jmp 0x100cc1a6
xorps xmm0, xmm0
mov edi, 8
movups xmmword [esp + 0x2c], xmm0
mov dword [esp + 0x2c], 0x7466656c
mov dword [esp + 0x30], 0x67656c20
mov byte [esp + 0x34], 0
jmp 0x100cc1a6
mov al, byte [0x101f3434]
xorps xmm0, xmm0
movups xmmword [esp + 0x2c], xmm0
mov edi, 9
mov byte [esp + 0x34], al
movq xmm0, qword [str.right_leg]
movq qword [esp + 0x2c], xmm0
mov byte [esp + 0x35], 0
jmp 0x100cc1a6
mov eax, dword [str.unknown]
mov dword [esp + 0x2c], eax
mov ax, word [0x101d6e38]
mov word [esp + 0x30], ax
mov al, byte [0x101d6e3a]
xorps xmm0, xmm0
mov byte [esp + 0x32], al
movlpd qword [esp + 0x34], xmm0
mov edi, 7
mov byte [esp + 0x33], 0
mov eax, dword [0x10229e7c]
mov ebx, 0xf
mov dword [esp + 0x3c], edi
mov dword [esp + 0x40], ebx
mov ecx, dword [eax]
mov eax, dword [ecx + 8]
add ecx, 8
mov eax, dword [eax + 0x28]
call eax
cmp dword [esp + 0x5c], eax
je 0x100ccf21
mov eax, dword [0x10229e7c]
mov ecx, dword [eax]
mov eax, dword [ecx + 8]
add ecx, 8
mov eax, dword [eax + 0x28]
call eax
cmp esi, eax
jne 0x100ccf21
mov eax, dword [0x10227c40]
test byte [eax + 0x3664], 1
jne 0x100cc23c
mov ecx, dword [esp + 0x164]
cmp ecx, 0x10
jb 0x100cdcea
mov edx, dword [esp + 0x150]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cc22d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cddd2
push ecx
push edx
call fcn.1019d45c
add esp, 8
jmp 0x100cdcea
mov eax, dword [0x10227c48]
push dword [esp + 0x5c]
mov ecx, dword [eax + 0x18]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
mov dword [esp + 0x5c], eax
test eax, eax
jne 0x100cc26c
lea ecx, [esp + 0x2c]
call fcn.10002180
lea ecx, [esp + 0x150]
jmp 0x100cdce5
lea ecx, [esp + 0xb8]
call fcn.10020a40
mov ax, word [0x101f34f8]
xor ebx, ebx
movq xmm0, qword [str.Q_PgQ_ZPIV_]
mov word [esp + 0x78], ax
mov al, byte [0x101f34fa]
movq qword [esp + 0x70], xmm0
mov byte [esp + 0x7a], al
nop dword [eax]
mov eax, 0x5397829d
mov cl, bl
mul ebx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x70], cl
inc ebx
cmp ebx, 0xb
jl 0x100cc2a0
push ecx
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x74]
push eax
call fcn.100a6ba0
mov ecx, dword [esp + 0x5c]
mov esi, eax
call fcn.1007dd70
sub eax, esi
jns 0x100cc4a9
movups xmm0, xmmword [0x101f3548]
movups xmmword [esp + 0x18], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x100cc478
xor ebx, ebx
cmp dword [0x102296a0], 2
jl 0x100cc450
movaps xmm0, xmmword [0x101ff820]
mov eax, 4
movaps xmm4, xmmword [0x101ff6c0]
xor ecx, ecx
movaps xmm3, xmmword [0x101ffba0]
movaps xmm6, xmmword [0x101ff720]
movd xmm5, eax
mov eax, 0x1f
movaps xmmword [esp + 0x70], xmm0
mov edx, dword [esp + 0x70]
movd xmm7, eax
nop dword [eax + eax]
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
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x18]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x18], xmm1
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
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x1c]
pxor xmm1, xmm0
movd dword [esp + ecx + 0x1c], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x100cc350
jmp 0x100cc478
mov eax, 0x5397829d
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x18], cl
inc ebx
cmp ebx, 0x10
jl 0x100cc450
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x8c]
call fcn.10020910
mov ecx, eax
call fcn.100065d0
push eax
lea ecx, [esp + 0xbc]
call fcn.10020770
lea ecx, [esp + 0x88]
jmp 0x100cc6e9
mov eax, dword [0x101f34e8]
xor ebx, ebx
cmp dword [0x102296a0], 2
movq xmm0, qword [0x101f34e0]
mov dword [esp + 0x20], eax
mov ax, word [0x101f34ec]
mov word [esp + 0x24], ax
mov al, byte [0x101f34ee]
movq qword [esp + 0x18], xmm0
mov byte [esp + 0x26], al
jl 0x100cc5f0
movaps xmm2, xmmword [0x101ff6c0]
mov eax, 4
movaps xmm4, xmmword [0x101ffba0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov ebx, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, dword [0x101ff820]
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ff720]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ff700]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101f34e0]
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x18], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ff720]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x1c]
pxor xmm1, xmm0
movd dword [esp + 0x1c], xmm1
nop dword [eax]
mov eax, 0x5397829d
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x18], cl
inc ebx
cmp ebx, 0xf
jl 0x100cc5f0
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x184]
call fcn.10020910
mov ecx, eax
call fcn.100065d0
mov cx, word [0x101f34f8]
xor ebx, ebx
movq xmm0, qword [str.Q_PgQ_ZPIV_]
mov word [esp + 0x78], cx
mov cl, byte [0x101f34fa]
mov dword [esp + 0x18], eax
movq qword [esp + 0x70], xmm0
mov byte [esp + 0x7a], cl
nop word [eax + eax]
mov eax, 0x5397829d
mov cl, bl
mul ebx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x70], cl
inc ebx
cmp ebx, 0xb
jl 0x100cc660
push ecx
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x74]
push eax
call fcn.100a6ba0
mov ecx, dword [esp + 0x5c]
mov esi, eax
call fcn.1007dd70
sub eax, esi
lea ecx, [esp + 0x138]
mov edx, eax
call fcn.10003db0
push dword [esp + 0x18]
mov edx, eax
lea ecx, [esp + 0x8c]
call fcn.10024850
push eax
lea ecx, [esp + 0xbc]
call fcn.100207a0
lea ecx, [esp + 0x88]
call fcn.10002180
lea ecx, [esp + 0x138]
call fcn.10002180
lea ecx, [esp + 0x180]
call fcn.10002180
mov eax, dword [0x101f34ac]
mov dword [esp + 0x18], eax
mov ax, word [0x101f34b0]
mov word [esp + 0x1c], ax
test ah, ah
je 0x100cc731
xor ebx, ebx
nop dword [eax + eax]
mov eax, 0x5397829d
mov cl, bl
mul ebx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x18], cl
inc ebx
cmp ebx, 6
jl 0x100cc710
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x8c]
call fcn.10020910
mov ecx, eax
xor ebx, ebx
mov eax, dword [0x101f3504]
mov dword [esp + 0x18], eax
mov al, byte [0x101f3508]
mov byte [esp + 0x1c], al
call fcn.100065d0
mov dword [esp + 0x14], eax
mov eax, 0x5397829d
mov cl, bl
mul ebx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x18], cl
inc ebx
cmp ebx, 5
jl 0x100cc761
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x13c]
call fcn.10020910
mov ecx, eax
call fcn.100065d0
mov ecx, dword [esp + 0x5c]
mov esi, eax
lea eax, [esp + 0x180]
push eax
call fcn.10035c30
mov ecx, dword [0x101f34cc]
xor ebx, ebx
mov dword [esp + 0x5c], ecx
mov cl, byte [0x101f34d0]
mov dword [esp + 0x18], eax
mov byte [esp + 0x60], cl
mov eax, 0x5397829d
mov cl, bl
mul ebx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x5c], cl
inc ebx
cmp ebx, 5
jl 0x100cc7c7
lea eax, [esp + 0x5c]
push eax
lea ecx, [esp + 0x19c]
call fcn.10020910
push dword [esp + 0x18]
lea ecx, [esp + 0x124]
push eax
push dword [esp + 0x20]
call fcn.10029890
push esi
lea ecx, [esp + 0x124]
call fcn.10020690
mov dword [esp + 0x118], 0
lea edx, [esp + 0x2c]
mov dword [esp + 0x11c], 0
xorps xmm0, xmm0
movups xmmword [esp + 0x108], xmm0
push edi
movups xmm0, xmmword [eax]
mov ebx, 0xf
push edx
movups xmmword [esp + 0x110], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esp + 0x120], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov ecx, dword [esp + 0x120]
mov eax, dword [esp + 0x124]
sub eax, ecx
mov dword [esp + 0x20], ecx
cmp edi, eax
ja 0x100cc8c9
cmp dword [esp + 0x124], 0x10
lea esi, [esp + 0x110]
lea eax, [edi + ecx]
cmovae esi, dword [esp + 0x110]
mov dword [esp + 0x120], eax
lea eax, [esi + ecx]
push eax
call fcn.1019ead0
mov eax, dword [esp + 0x24]
add esp, 0xc
add eax, esi
mov byte [eax + edi], 0
lea eax, [esp + 0x108]
jmp 0x100cc8de
push dword [esp + 0x20]
lea ecx, [esp + 0x114]
push edi
call fcn.10028320
mov ebx, dword [esp + 0x40]
push dword [esp + 0x14]
mov dword [esp + 0x58], 0
lea ecx, [esp + 0x48]
mov dword [esp + 0x5c], 0
xorps xmm0, xmm0
movups xmmword [esp + 0x48], xmm0
movups xmm0, xmmword [eax]
movups xmmword [esp + 0x48], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esp + 0x58], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
call fcn.10020690
mov dword [esp + 0x100], 0
lea edx, [esp + 0x150]
mov dword [esp + 0x104], 0
xorps xmm0, xmm0
movups xmmword [esp + 0xf0], xmm0
movups xmm0, xmmword [eax]
movups xmmword [esp + 0xf0], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esp + 0x100], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
cmp dword [esp + 0x164], 0x10
mov ecx, dword [esp + 0x100]
cmovae edx, dword [esp + 0x150]
mov eax, dword [esp + 0x104]
mov edi, dword [esp + 0x160]
sub eax, ecx
mov dword [esp + 0x18], ecx
push edi
push edx
cmp edi, eax
ja 0x100cc9eb
cmp dword [esp + 0x10c], 0x10
lea esi, [esp + 0xf8]
lea eax, [edi + ecx]
cmovae esi, dword [esp + 0xf8]
mov dword [esp + 0x108], eax
lea eax, [esi + ecx]
push eax
call fcn.1019ead0
mov ecx, dword [esp + 0x24]
lea eax, [edi + esi]
add esp, 0xc
mov byte [eax + ecx], 0
lea eax, [esp + 0xf0]
jmp 0x100cc9fc
push dword [esp + 0x20]
lea ecx, [esp + 0xfc]
push edi
call fcn.10028320
mov dword [esp + 0xb0], 0
xorps xmm0, xmm0
movups xmmword [esp + 0xa0], xmm0
mov dword [esp + 0xb4], 0
movups xmm0, xmmword [eax]
movups xmmword [esp + 0xa0], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esp + 0xb0], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov edx, dword [esp + 0xb4]
mov eax, edx
mov ecx, dword [esp + 0xb0]
sub eax, ecx
cmp eax, 2
jb 0x100cca91
lea eax, [ecx + 2]
cmp edx, 0x10
mov dword [esp + 0xb0], eax
mov edx, 0x2820
lea eax, [esp + 0xa0]
cmovae eax, dword [esp + 0xa0]
mov word [eax + ecx], dx
mov byte [eax + ecx + 2], 0
lea eax, [esp + 0xa0]
jmp 0x100ccaaa
push 2
push 0x101f3428
push dword [esp + 0x20]
lea ecx, [esp + 0xac]
push 2
call fcn.10028320
mov dword [esp + 0x178], 0
lea ecx, [esp + 0x168]
mov dword [esp + 0x17c], 0
xorps xmm0, xmm0
movups xmmword [esp + 0x168], xmm0
movups xmm0, xmmword [eax]
movups xmmword [esp + 0x168], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esp + 0x178], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [esp + 0xb8]
push eax
call fcn.10020700
movups xmm0, xmmword [eax]
movq xmm1, qword [eax + 0x10]
movups xmmword [esp + 0x70], xmm0
movq qword [esp + 0x18], xmm1
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov ecx, dword [esp + 0xec]
cmp ecx, 0x10
jb 0x100ccb74
mov edx, dword [esp + 0xd8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100ccb5f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cddcd
push ecx
push edx
call fcn.1019d45c
movups xmm0, xmmword [esp + 0x78]
add esp, 8
movq xmm1, qword [esp + 0x18]
mov ecx, dword [esp + 0x17c]
movq qword [esp + 0xe8], xmm1
movups xmmword [esp + 0xd8], xmm0
cmp ecx, 0x10
jb 0x100ccbc1
mov edx, dword [esp + 0x168]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100ccbb7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cddcd
push ecx
push edx
call fcn.1019d45c
add esp, 8
mov ecx, dword [esp + 0xb4]
mov dword [esp + 0x178], 0
mov dword [esp + 0x17c], 0xf
mov byte [esp + 0x168], 0
cmp ecx, 0x10
jb 0x100ccc1b
mov edx, dword [esp + 0xa0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100ccc11
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cddcd
push ecx
push edx
call fcn.1019d45c
add esp, 8
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0xf
mov byte [esp + 0xa0], 0
cmp ecx, 0x10
jb 0x100ccc75
mov edx, dword [esp + 0xf0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100ccc6b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cddcd
push ecx
push edx
call fcn.1019d45c
add esp, 8
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0xf
mov byte [esp + 0xf0], 0
cmp ecx, 0x10
jb 0x100cccc9
mov edx, dword [esp + 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cccbf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cddcd
push ecx
push edx
call fcn.1019d45c
add esp, 8
mov ecx, dword [esp + 0x11c]
mov dword [esp + 0x54], 0
mov dword [esp + 0x58], 0xf
mov byte [esp + 0x44], 0
cmp ecx, 0x10
jb 0x100ccd1a
mov edx, dword [esp + 0x108]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100ccd10
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cddcd
push ecx
push edx
call fcn.1019d45c
add esp, 8
mov ecx, dword [esp + 0x134]
mov dword [esp + 0x118], 0
mov dword [esp + 0x11c], 0xf
mov byte [esp + 0x108], 0
cmp ecx, 0x10
jb 0x100ccd74
mov edx, dword [esp + 0x120]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100ccd6a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cddcd
push ecx
push edx
call fcn.1019d45c
add esp, 8
mov ecx, dword [esp + 0x1ac]
mov dword [esp + 0x130], 0
mov dword [esp + 0x134], 0xf
mov byte [esp + 0x120], 0
cmp ecx, 0x10
jb 0x100ccdce
mov edx, dword [esp + 0x198]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100ccdc4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cddcd
push ecx
push edx
call fcn.1019d45c
add esp, 8
mov ecx, dword [esp + 0x194]
mov dword [esp + 0x1a8], 0
mov dword [esp + 0x1ac], 0xf
mov byte [esp + 0x198], 0
cmp ecx, 0x10
jb 0x100cce28
mov edx, dword [esp + 0x180]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cce1e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cddcd
push ecx
push edx
call fcn.1019d45c
add esp, 8
mov ecx, dword [esp + 0x14c]
mov dword [esp + 0x190], 0
mov dword [esp + 0x194], 0xf
mov byte [esp + 0x180], 0
cmp ecx, 0x10
jb 0x100cce82
mov edx, dword [esp + 0x138]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cce78
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cddcd
push ecx
push edx
call fcn.1019d45c
add esp, 8
mov ecx, dword [esp + 0x9c]
mov dword [esp + 0x148], 0
mov dword [esp + 0x14c], 0xf
mov byte [esp + 0x138], 0
cmp ecx, 0x10
jb 0x100ccedc
mov edx, dword [esp + 0x88]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cced2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cddcd
push ecx
push edx
call fcn.1019d45c
add esp, 8
mov ecx, dword [esp + 0xcc]
cmp ecx, 0x10
jb 0x100cd1b8
mov edx, dword [esp + 0xb8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100ccf12
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cddd2
push ecx
push edx
call fcn.1019d45c
add esp, 8
jmp 0x100cd1b8
mov eax, dword [0x10229e7c]
mov ecx, dword [eax]
mov eax, dword [ecx + 8]
add ecx, 8
mov eax, dword [eax + 0x28]
call eax
cmp dword [esp + 0x5c], eax
jne 0x100cd1b8
mov eax, dword [0x10229e7c]
mov ecx, dword [eax]
mov eax, dword [ecx + 8]
add ecx, 8
mov eax, dword [eax + 0x28]
call eax
cmp esi, eax
je 0x100cd1b8
mov eax, dword [0x10227c40]
test byte [eax + 0x3664], 2
jne 0x100ccfaa
mov ecx, dword [esp + 0x164]
cmp ecx, 0x10
jb 0x100cdcea
mov edx, dword [esp + 0x150]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100ccf9b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cdde1
push ecx
push edx
call fcn.1019d45c
add esp, 8
jmp 0x100cdcea
mov eax, dword [0x10227c48]
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 0x100ccfd5
lea ecx, [esp + 0x2c]
call fcn.10002180
lea ecx, [esp + 0x150]
jmp 0x100cdce5
mov eax, dword [0x101f3504]
xor ebx, ebx
mov dword [esp + 0x18], eax
mov al, byte [0x101f3508]
mov byte [esp + 0x1c], al
nop dword [eax]
mov eax, 0x5397829d
mov cl, bl
mul ebx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x18], cl
inc ebx
cmp ebx, 5
jl 0x100ccff0
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0xa4]
call fcn.10020910
mov ecx, eax
call fcn.100065d0
mov ecx, dword [0x101f34ac]
mov dword [esp + 0x5c], ecx
mov cx, word [0x101f34b0]
mov dword [esp + 0x18], eax
mov word [esp + 0x60], cx
test ch, ch
je 0x100cd071
xor ebx, ebx
nop dword [eax]
mov eax, 0x5397829d
mov cl, bl
mul ebx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x5c], cl
inc ebx
cmp ebx, 6
jl 0x100cd050
lea eax, [esp + 0x5c]
push eax
lea ecx, [esp + 0x16c]
call fcn.10020910
mov ecx, eax
call fcn.100065d0
mov edi, eax
mov ecx, esi
lea eax, [esp + 0x44]
push eax
call fcn.10035c30
movq xmm0, qword [str._CEL]
mov esi, eax
mov cl, byte [0x101f34dc]
xor ebx, ebx
movq qword [esp + 0x5c], xmm0
mov byte [esp + 0x64], cl
mov eax, 0x5397829d
mov cl, bl
mul ebx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x5c], cl
inc ebx
cmp ebx, 9
jl 0x100cd0b3
lea eax, [esp + 0x5c]
push eax
lea ecx, [esp + 0x124]
call fcn.10020910
push esi
mov edx, eax
lea ecx, [esp + 0x19c]
call fcn.100248a0
lea ecx, [esp + 0x150]
mov edx, eax
push ecx
push edi
lea ecx, [esp + 0x188]
call fcn.10024850
mov edx, eax
lea ecx, [esp + 0x13c]
call fcn.10030c10
lea ecx, [esp + 0x2c]
mov edx, eax
push ecx
push dword [esp + 0x1c]
lea ecx, [esp + 0xc0]
call fcn.10024850
mov edx, eax
lea ecx, [esp + 0x8c]
call fcn.10030c10
push eax
lea ecx, [esp + 0xdc]
call fcn.100207a0
lea ecx, [esp + 0x88]
call fcn.10002180
lea ecx, [esp + 0xb8]
call fcn.10002180
lea ecx, [esp + 0x138]
call fcn.10002180
lea ecx, [esp + 0x180]
call fcn.10002180
lea ecx, [esp + 0x198]
call fcn.10002180
lea ecx, [esp + 0x120]
call fcn.10002180
lea ecx, [esp + 0x44]
call fcn.10002180
lea ecx, [esp + 0x168]
call fcn.10002180
lea ecx, [esp + 0xa0]
call fcn.10002180
mov ebx, dword [esp + 0x40]
cmp ebx, 0x10
jb 0x100cd1ea
mov ecx, dword [esp + 0x2c]
inc ebx
mov eax, ecx
cmp ebx, 0x1000
jb 0x100cd1e0
mov ecx, dword [eax - 4]
add ebx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cdde1
push ebx
push ecx
call fcn.1019d45c
add esp, 8
mov ecx, dword [esp + 0x164]
cmp ecx, 0x10
jb 0x100cdcea
mov edx, dword [esp + 0x150]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cd220
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cdde1
push ecx
push edx
call fcn.1019d45c
add esp, 8
jmp 0x100cdcea
mov eax, dword [0x10227c40]
test byte [eax + 0x3664], 8
je 0x100cdcea
mov eax, dword [0x10227c48]
xor ebx, ebx
mov esi, dword [eax + 0x10]
mov eax, dword [str._ERJP_]
mov dword [esp + 0x18], eax
mov ax, word [0x101f3500]
mov word [esp + 0x1c], ax
mov al, byte [0x101f3502]
mov byte [esp + 0x1e], al
nop dword [eax + eax]
mov eax, 0x5397829d
mov cl, bl
mul ebx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x18], cl
inc ebx
cmp ebx, 7
jl 0x100cd270
xorps xmm0, xmm0
mov dword [esp + 0x54], 0
lea ecx, [esp + 0x18]
mov dword [esp + 0x58], 0
movups xmmword [esp + 0x44], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100cd2b0
sub ecx, edx
lea eax, [esp + 0x18]
push ecx
push eax
lea ecx, [esp + 0x4c]
call fcn.10027bd0
cmp dword [esp + 0x58], 0x10
lea edx, [esp + 0x44]
mov eax, dword [edi]
mov ecx, edi
cmovae edx, dword [esp + 0x44]
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 + 0x58]
mov edi, eax
cmp ecx, 0x10
jb 0x100cd324
mov edx, dword [esp + 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cd31a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cddd7
push ecx
push edx
call fcn.1019d45c
add esp, 8
test edi, edi
je 0x100cdcea
mov eax, dword [0x10229e7c]
mov ecx, dword [eax]
test ecx, ecx
je 0x100cdcea
mov eax, dword [0x10227c48]
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 + 0x1b0]
push ecx
push eax
mov ecx, esi
mov edx, dword [edx + 0x20]
call edx
or ecx, 0xffffffff
test al, al
cmovne ecx, dword [esp + 0x240]
cmp edi, ecx
je 0x100cdcea
mov eax, dword [0x10227c48]
push edi
mov ecx, dword [eax + 0x18]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
mov edi, eax
test edi, edi
je 0x100cdcea
mov eax, dword [0x101f3478]
movups xmm0, xmmword [0x101f3468]
mov dword [esp + 0x3c], eax
mov ax, word [0x101f347c]
mov word [esp + 0x40], ax
movups xmmword [esp + 0x2c], xmm0
test ah, ah
je 0x100cdc88
xor ebx, ebx
cmp dword [0x102296a0], 2
jl 0x100cd500
movaps xmm0, xmmword [0x101ff820]
mov eax, 4
movaps xmm4, xmmword [0x101ff6c0]
movaps xmm3, xmmword [0x101ffba0]
movaps xmm6, xmmword [0x101ff720]
movd xmm5, eax
mov eax, 0x1f
movaps xmmword [esp + 0x70], xmm0
mov ecx, dword [esp + 0x70]
movd xmm7, eax
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
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x2c]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ebx + 0x2c], xmm1
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
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x30]
pxor xmm1, xmm0
movd dword [esp + ebx + 0x30], xmm1
add ebx, 8
cmp ebx, 0x10
jl 0x100cd400
cmp ebx, 0x16
jge 0x100cdc88
mov eax, 0x5397829d
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x2c], cl
inc ebx
cmp ebx, 0x16
jl 0x100cd500
jmp 0x100cdc88
cmp ecx, 0xc3c7d299
je 0x100cd99b
cmp ecx, 0xec398ed7
jne 0x100cdd18
mov eax, dword [0x10227c40]
test byte [eax + 0x3664], 4
je 0x100cdcea
mov eax, dword [0x10227c48]
xor ebx, ebx
mov esi, dword [eax + 0x10]
mov eax, dword [str._ERJP_]
mov dword [esp + 0x18], eax
mov ax, word [0x101f3500]
mov word [esp + 0x1c], ax
mov al, byte [0x101f3502]
mov byte [esp + 0x1e], al
nop
mov eax, 0x5397829d
mov cl, bl
mul ebx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x18], cl
inc ebx
cmp ebx, 7
jl 0x100cd580
xorps xmm0, xmm0
mov dword [esp + 0x54], 0
lea ecx, [esp + 0x18]
mov dword [esp + 0x58], 0
movups xmmword [esp + 0x44], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100cd5c0
sub ecx, edx
lea eax, [esp + 0x18]
push ecx
push eax
lea ecx, [esp + 0x4c]
call fcn.10027bd0
cmp dword [esp + 0x58], 0x10
lea edx, [esp + 0x44]
mov eax, dword [edi]
mov ecx, edi
cmovae edx, dword [esp + 0x44]
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 + 0x58]
mov edi, eax
cmp ecx, 0x10
jb 0x100cd634
mov edx, dword [esp + 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cd62a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cdddc
push ecx
push edx
call fcn.1019d45c
add esp, 8
mov eax, dword [0x10227c48]
mov esi, dword [eax + 0x10]
mov eax, dword [0x10229e7c]
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 + 0x1b0]
push ecx
push eax
mov ecx, esi
mov edx, dword [edx + 0x20]
call edx
or ecx, 0xffffffff
test al, al
cmovne ecx, dword [esp + 0x240]
cmp edi, ecx
je 0x100cdcea
mov eax, dword [0x10227c48]
push edi
mov ecx, dword [eax + 0x18]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
test eax, eax
je 0x100cdcea
lea ecx, [esp + 0x1b0]
push ecx
mov ecx, eax
call fcn.10190ae0
xorps xmm0, xmm0
mov dword [esp + 0x54], 0
lea ecx, [esp + 0x1b0]
mov dword [esp + 0x58], 0
movups xmmword [esp + 0x44], xmm0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100cd6c0
sub ecx, edx
lea eax, [esp + 0x1b0]
push ecx
push eax
lea ecx, [esp + 0x4c]
call fcn.10027bd0
movups xmm0, xmmword [str._YDLX_]
mov ax, word [0x101f3464]
mov word [esp + 0x3c], ax
movups xmmword [esp + 0x2c], xmm0
test ah, ah
je 0x100cd868
xor ebx, ebx
cmp dword [0x102296a0], 2
jl 0x100cd840
movaps xmm0, xmmword [0x101ff820]
mov eax, 4
movaps xmm4, xmmword [0x101ff6c0]
movaps xmm3, xmmword [0x101ffba0]
movaps xmm6, xmmword [0x101ff720]
movd xmm5, eax
mov eax, 0x1f
movaps xmmword [esp + 0x70], xmm0
mov ecx, dword [esp + 0x70]
movd xmm7, 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
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x2c]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ebx + 0x2c], xmm1
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
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x30]
pxor xmm1, xmm0
movd dword [esp + ebx + 0x30], xmm1
add ebx, 8
cmp ebx, 0x10
jl 0x100cd740
cmp ebx, 0x12
jge 0x100cd868
nop dword [eax]
mov eax, 0x5397829d
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x2c], cl
inc ebx
cmp ebx, 0x12
jl 0x100cd840
xorps xmm0, xmm0
mov dword [esp + 0x130], 0
lea ecx, [esp + 0x2c]
mov dword [esp + 0x134], 0
movups xmmword [esp + 0x120], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100cd890
sub ecx, edx
lea eax, [esp + 0x2c]
push ecx
push eax
lea ecx, [esp + 0x128]
call fcn.10027bd0
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x124]
push eax
push dword [esp + 0x20]
lea ecx, [esp + 0x94]
call fcn.10029890
mov ecx, dword [esp + 0xec]
cmp ecx, 0x10
jb 0x100cd904
mov edx, dword [esp + 0xd8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cd8fa
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cdde1
push ecx
push edx
call fcn.1019d45c
add esp, 8
movups xmm0, xmmword [esp + 0x88]
mov ecx, dword [esp + 0x134]
movups xmmword [esp + 0xd8], xmm0
movq xmm0, qword [esp + 0x98]
movq qword [esp + 0xe8], xmm0
cmp ecx, 0x10
jb 0x100cd962
mov edx, dword [esp + 0x120]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cd958
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cdde1
push ecx
push edx
call fcn.1019d45c
add esp, 8
mov ecx, dword [esp + 0x58]
cmp ecx, 0x10
jb 0x100cdcea
mov edx, dword [esp + 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cc22d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cdde1
jmp 0x100cc22d
mov eax, dword [0x10227c40]
test byte [eax + 0x3664], 8
je 0x100cdcea
mov eax, dword [0x10227c48]
xor ebx, ebx
mov esi, dword [eax + 0x10]
mov eax, dword [str._ERJP_]
mov dword [esp + 0x18], eax
mov ax, word [0x101f3500]
mov word [esp + 0x1c], ax
mov al, byte [0x101f3502]
mov byte [esp + 0x1e], al
mov eax, 0x5397829d
mov cl, bl
mul ebx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x18], cl
inc ebx
cmp ebx, 7
jl 0x100cd9d4
xorps xmm0, xmm0
mov dword [esp + 0x54], 0
lea ecx, [esp + 0x18]
mov dword [esp + 0x58], 0
movups xmmword [esp + 0x44], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100cda14
sub ecx, edx
lea eax, [esp + 0x18]
push ecx
push eax
lea ecx, [esp + 0x4c]
call fcn.10027bd0
cmp dword [esp + 0x58], 0x10
lea edx, [esp + 0x44]
mov eax, dword [edi]
mov ecx, edi
cmovae edx, dword [esp + 0x44]
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 + 0x58]
mov edi, eax
cmp ecx, 0x10
jb 0x100cda88
mov edx, dword [esp + 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cda7e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cdde6
push ecx
push edx
call fcn.1019d45c
add esp, 8
test edi, edi
je 0x100cdcea
mov eax, dword [0x10229e7c]
mov ecx, dword [eax]
test ecx, ecx
je 0x100cdcea
mov eax, dword [0x10227c48]
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 + 0x1b0]
push ecx
push eax
mov ecx, esi
mov edx, dword [edx + 0x20]
call edx
or ecx, 0xffffffff
test al, al
cmovne ecx, dword [esp + 0x240]
cmp edi, ecx
je 0x100cdcea
mov eax, dword [0x10227c48]
push edi
mov ecx, dword [eax + 0x18]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
mov edi, eax
test edi, edi
je 0x100cdcea
mov eax, dword [0x101f34a4]
movups xmm0, xmmword [0x101f3494]
mov dword [esp + 0x3c], eax
mov ax, word [0x101f34a8]
mov word [esp + 0x40], ax
movups xmmword [esp + 0x2c], xmm0
test ah, ah
je 0x100cdc88
xor ebx, ebx
cmp dword [0x102296a0], 2
jl 0x100cdc60
movaps xmm0, xmmword [0x101ff820]
mov eax, 4
movaps xmm4, xmmword [0x101ff6c0]
movaps xmm3, xmmword [0x101ffba0]
movaps xmm6, xmmword [0x101ff720]
movd xmm5, eax
mov eax, 0x1f
movaps xmmword [esp + 0x70], xmm0
mov ecx, dword [esp + 0x70]
movd xmm7, 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
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x2c]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ebx + 0x2c], xmm1
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
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x30]
pxor xmm1, xmm0
movd dword [esp + ebx + 0x30], xmm1
add ebx, 8
cmp ebx, 0x10
jl 0x100cdb60
cmp ebx, 0x16
jge 0x100cdc88
nop dword [eax]
mov eax, 0x5397829d
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x31
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x2c], cl
inc ebx
cmp ebx, 0x16
jl 0x100cdc60
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x13c]
call fcn.10020910
mov esi, eax
mov ecx, edi
lea eax, [esp + 0xb8]
push eax
call fcn.10035c30
push esi
mov edx, eax
lea ecx, [esp + 0x8c]
call fcn.100248a0
push eax
lea ecx, [esp + 0xdc]
call fcn.100207a0
lea ecx, [esp + 0x88]
call fcn.10002180
lea ecx, [esp + 0xb8]
call fcn.10002180
lea ecx, [esp + 0x138]
call fcn.10002180
cmp dword [esp + 0xe8], 0
je 0x100cdd18
lea eax, [esp + 0xd0]
mov ecx, 0x10445b7c
push eax
call fcn.100ce8b0
lea eax, [esp + 0xd0]
mov ecx, 0x10445b68
push eax
call fcn.100ce8b0
mov ecx, dword [esp + 0xec]
cmp ecx, 0x10
jb 0x100cdd54
mov edx, dword [esp + 0xd8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cdd4a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cddeb
push ecx
push edx
call fcn.1019d45c
add esp, 8
push 0x104e573c
mov dword [esp + 0xec], 0
mov dword [esp + 0xf0], 0xf
mov byte [esp + 0xdc], 0
call fcn.1019c8ee
add esp, 4
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x300]
xor ecx, esp
call fcn.1019d163
mov esp, ebp
pop ebp
ret
mov ecx, 0x10445b7c
call fcn.1003e790
mov ecx, 0x10445b68
call fcn.1003e790
mov ecx, dword [esp + 0x30c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.1019d163
mov esp, ebp
pop ebp
ret
push eax
call fcn.1019c9de
call fcn.101a26e6
call fcn.101a26e6
call fcn.101a26e6
call fcn.101a26e6
call fcn.101a26e6
call fcn.101a26e6
call fcn.101a26e6
call fcn.101a26e6
call fcn.101a26e6
push ecx
ror byte [eax + edx], 111
ror byte [eax + edx], 0x8e
ror byte [eax + edx], 0xb7
ror byte [eax + edx], 0xd5
ror byte [eax + edx], 0xfc
ror byte [eax + edx], 0x27
ror dword [eax + edx], 0x4b
ror dword [eax + edx], 0xcc
int3