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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x2f4
mov eax, dword [0x102090c0]
xor eax, esp
mov dword [esp + 0x2f0], eax
mov eax, dword [0x10226ca8]
push ebx
push esi
push edi
cmp byte [eax + 0x3695], 0
mov edi, ecx
mov dword [esp + 0xc], edi
je 0x100cec8d
cmp dword [eax + 0x3674], 0
je 0x100cec8d
cmp dword [eax + 0x3678], 0
je 0x100cec8d
test edi, edi
je 0x100ceca1
mov eax, dword [0x10228e54]
cmp dword [eax], 0
je 0x100ceca1
mov eax, dword [0x10226cb0]
mov ecx, dword [eax + 0x10]
mov eax, dword [ecx]
mov eax, dword [eax + 0x174]
call eax
test al, al
jne 0x100ceca1
mov eax, dword fs:[0x2c]
mov ecx, dword [0x1022867c]
mov esi, dword [eax + ecx*4]
mov eax, dword [0x1051bd34]
mov dword [esp + 0x10], esi
cmp eax, dword [esi + 4]
jle 0x100cc1fb
push 0x1051bd34
call fcn.1019bffa
add esp, 4
cmp dword [0x1051bd34], 0xffffffff
jne 0x100cc1fb
mov eax, dword [0x10226cb0]
xor ebx, ebx
movq xmm0, qword [str.XFh__rNRQXL_]
mov eax, dword [eax + 8]
mov dword [esp + 0x3c], eax
mov ax, word [0x101eeb5c]
mov word [esp + 0x68], ax
mov al, byte [0x101eeb5e]
movq qword [esp + 0x60], xmm0
mov byte [esp + 0x6a], al
nop dword [eax]
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x60], cl
inc ebx
cmp ebx, 0xb
jl 0x100cc1b0
mov ecx, dword [esp + 0x3c]
lea edx, [esp + 0x60]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 0x3c]
call eax
push 0x1051bd34
mov dword [0x1051bd2c], eax
call fcn.1019bfa6
add esp, 4
mov eax, dword [0x1051bd30]
cmp eax, dword [esi + 4]
jle 0x100cc296
push 0x1051bd30
call fcn.1019bffa
add esp, 4
cmp dword [0x1051bd30], 0xffffffff
jne 0x100cc296
xorps xmm0, xmm0
mov dword [0x1051bcfc], 0
push 2
push 0x1051bcfc
mov dword [0x1051bd00], 0
mov dword [0x1051bd04], 0
movups xmmword [0x1051bd08], xmm0
mov dword [0x1051bd20], 0
movq qword [0x1051bd18], xmm0
mov dword [0x1051bd24], 0
mov dword [0x1051bd28], 0
call fcn.1019b13f
push 0x101c8450
call fcn.1019bd43
add esp, 0xc
push 0x1051bd30
call fcn.1019bfa6
add esp, 4
push 0x1051bcfc
call fcn.1019b15b
add esp, 4
test eax, eax
jne 0x100cecb6
cmp dword [0x1051bd28], 0x7fffffff
je 0x100cecbd
mov eax, dword [0x1051bd58]
cmp eax, dword [esi + 4]
jle 0x100cc3e7
push 0x1051bd58
call fcn.1019bffa
add esp, 4
cmp dword [0x1051bd58], 0xffffffff
jne 0x100cc3e7
push 0x30
mov dword [0x1051bd38], 0
mov dword [0x1051bd3c], 0
mov dword [0x1051bd40], 0
call fcn.1019bd70
mov ebx, eax
add esp, 4
mov dword [ebx], ebx
mov dword [ebx + 4], ebx
push 0x40
mov dword [0x1051bd3c], ebx
mov dword [0x1051bd44], 0
mov dword [0x1051bd48], 0
mov dword [0x1051bd4c], 0
mov dword [0x1051bd50], 7
mov dword [0x1051bd54], 8
mov dword [0x1051bd38], 0x3f800000
call fcn.1019bd70
mov ecx, dword [0x1051bd44]
mov esi, eax
mov eax, dword [0x1051bd4c]
add esp, 4
sub eax, ecx
sar eax, 2
test eax, eax
je 0x100cc3a6
lea edx, [eax*4]
mov eax, ecx
cmp edx, 0x1000
jb 0x100cc39c
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cecec
push edx
push ecx
call fcn.1019bd5d
add esp, 8
lea eax, [esi + 0x40]
mov dword [0x1051bd44], esi
mov dword [0x1051bd48], eax
mov dword [0x1051bd4c], eax
cmp esi, eax
je 0x100cc3c9
nop dword [eax]
mov dword [esi], ebx
add esi, 4
cmp esi, eax
jne 0x100cc3c0
push 0x101c8430
call fcn.1019bd43
add esp, 4
push 0x1051bd58
call fcn.1019bfa6
mov esi, dword [esp + 0x14]
add esp, 4
mov eax, dword [0x1051bd5c]
cmp eax, dword [esi + 4]
jle 0x100cc513
push 0x1051bd5c
call fcn.1019bffa
add esp, 4
cmp dword [0x1051bd5c], 0xffffffff
jne 0x100cc513
push 0x24
mov dword [0x1051bd60], 0
mov dword [0x1051bd64], 0
mov dword [0x1051bd68], 0
call fcn.1019bd70
mov ebx, eax
add esp, 4
mov dword [ebx], ebx
mov dword [ebx + 4], ebx
push 0x40
mov dword [0x1051bd64], ebx
mov dword [0x1051bd6c], 0
mov dword [0x1051bd70], 0
mov dword [0x1051bd74], 0
mov dword [0x1051bd78], 7
mov dword [0x1051bd7c], 8
mov dword [0x1051bd60], 0x3f800000
call fcn.1019bd70
mov ecx, dword [0x1051bd6c]
mov esi, eax
mov eax, dword [0x1051bd74]
add esp, 4
sub eax, ecx
sar eax, 2
test eax, eax
je 0x100cc4d2
lea edx, [eax*4]
mov eax, ecx
cmp edx, 0x1000
jb 0x100cc4c8
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cecec
push edx
push ecx
call fcn.1019bd5d
add esp, 8
lea eax, [esi + 0x40]
mov dword [0x1051bd6c], esi
mov dword [0x1051bd70], eax
mov dword [0x1051bd74], eax
cmp esi, eax
je 0x100cc4f9
nop dword [eax]
mov dword [esi], ebx
add esi, 4
cmp esi, eax
jne 0x100cc4f0
push 0x101c8410
call fcn.1019bd43
add esp, 4
push 0x1051bd5c
call fcn.1019bfa6
add esp, 4
mov eax, dword [0x10226ca4]
xorps xmm0, xmm0
movups xmmword [esp + 0xb0], xmm0
mov dword [esp + 0xac], 0x437f0000
mov ecx, edi
mov dword [esp + 0xc0], 0
mov dword [esp + 0xc4], 0xf
mov byte [esp + 0xb0], 0
mov eax, dword [eax + 0x10]
movss xmm0, dword [eax]
mov eax, dword [edi]
movss dword [esp + 0xa8], xmm0
mov eax, dword [eax + 4]
call eax
mov edx, eax
mov ecx, 0x811c9dc5
mov al, byte [edx]
test al, al
je 0x100cec11
movsx eax, al
lea edx, [edx + 1]
xor eax, ecx
imul ecx, eax, 0x1000193
mov al, byte [edx]
test al, al
jne 0x100cc576
cmp ecx, 0x7dd410c4
ja 0x100ce42c
je 0x100ce13e
cmp ecx, 0x1b30ddf0
je 0x100cce54
cmp ecx, 0x4400fb1c
je 0x100ccbe7
cmp ecx, 0x4e704c3e
jne 0x100cec11
mov eax, dword [0x10226ca8]
test byte [eax + 0x3678], 8
je 0x100cebe3
mov eax, dword [0x10226cb0]
xor ebx, ebx
mov esi, dword [eax + 0x10]
mov eax, dword [str._ERJP_]
mov dword [esp + 0x10], eax
mov ax, word [0x101eeb30]
mov word [esp + 0x14], ax
mov al, byte [0x101eeb32]
mov byte [esp + 0x16], al
nop dword [eax]
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x10], cl
inc ebx
cmp ebx, 7
jl 0x100cc600
xorps xmm0, xmm0
mov dword [esp + 0x58], 0
lea ecx, [esp + 0x10]
mov dword [esp + 0x5c], 0
movups xmmword [esp + 0x48], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100cc648
sub ecx, edx
lea eax, [esp + 0x10]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.10027a80
cmp dword [esp + 0x5c], 0xf
lea edx, [esp + 0x48]
mov eax, dword [edi]
mov ecx, edi
cmova edx, dword [esp + 0x48]
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 + 0x5c]
mov edi, eax
cmp ecx, 0xf
jbe 0x100cc6bc
mov edx, dword [esp + 0x48]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cc6b2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cecce
push ecx
push edx
call fcn.1019bd5d
add esp, 8
mov eax, dword [0x10226cb0]
mov esi, dword [eax + 0x10]
mov eax, dword [0x10228e54]
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 + 0x1a0]
push ecx
push eax
mov ecx, esi
mov edx, dword [edx + 0x20]
call edx
or ecx, 0xffffffff
test al, al
cmovne ecx, dword [esp + 0x230]
cmp edi, ecx
je 0x100cebe3
mov eax, dword [0x10226cb0]
push edi
mov ecx, dword [eax + 0x18]
call fcn.1007db30
mov esi, eax
test esi, esi
je 0x100cebe3
push 0x10226cd4
lea ecx, [esp + 0x18c]
call fcn.10020ca0
movq xmm0, qword [0x101eeb7c]
xor ebx, ebx
mov al, byte [0x101eeb84]
movq qword [esp + 0x10], xmm0
mov byte [esp + 0x18], al
nop
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x10], cl
inc ebx
cmp ebx, 9
jl 0x100cc740
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0xcc]
call fcn.10020c60
mov ecx, dword [0x1051bd2c]
mov dword [esp + 0xc], eax
call fcn.1008a430
mov edx, eax
lea ecx, [esp + 0xe0]
call fcn.10003f90
movups xmm0, xmmword [0x101eec04]
mov cl, byte [0x101eec14]
xor ebx, ebx
mov edi, dword [0x10228670]
mov dword [esp + 0x10], eax
mov byte [esp + 0x34], cl
movups xmmword [esp + 0x24], xmm0
cmp edi, 2
jl 0x100cc920
movaps xmm0, xmmword [0x101faf50]
movaps xmm4, xmmword [0x101fadd0]
movaps xmm3, xmmword [0x101faf20]
movaps xmm5, xmmword [0x101fae60]
movaps xmmword [esp + 0x60], xmm0
mov ecx, dword [esp + 0x60]
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, 1
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 [0x101faf00]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x24]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ebx + 0x24], 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, 1
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 [0x101faf00]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x28]
xorps xmm1, xmm0
movd dword [esp + ebx + 0x28], xmm1
add ebx, 8
cmp ebx, 0x10
jl 0x100cc7f0
cmp ebx, 0x11
jl 0x100cc920
lea eax, [esp + 0x24]
push eax
lea ecx, [esp + 0x12c]
call fcn.10020c60
mov dword [esp + 0x3c], eax
mov ecx, esi
lea eax, [esp + 0x140]
push eax
call fcn.10036460
mov cl, byte [0x101eeb70]
mov esi, eax
mov byte [esp + 0x34], cl
jmp 0x100cc976
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x24], cl
inc ebx
cmp ebx, 0x11
jl 0x100cc920
lea eax, [esp + 0x24]
push eax
lea ecx, [esp + 0x12c]
call fcn.10020c60
mov dword [esp + 0x3c], eax
mov ecx, esi
lea eax, [esp + 0x140]
push eax
call fcn.10036460
mov esi, eax
mov al, byte [0x101eeb70]
mov byte [esp + 0x34], al
movups xmm0, xmmword [str.WYZZ]
xor ebx, ebx
movups xmmword [esp + 0x24], xmm0
cmp edi, 2
jl 0x100ccab0
movaps xmm0, xmmword [0x101faf50]
movaps xmm4, xmmword [0x101fadd0]
movaps xmm3, xmmword [0x101faf20]
movaps xmm5, xmmword [0x101fae60]
movaps xmmword [esp + 0x60], xmm0
mov ecx, dword [esp + 0x60]
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, 1
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 [0x101faf00]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x24]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ebx + 0x24], 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, 1
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 [0x101faf00]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x28]
xorps xmm1, xmm0
movd dword [esp + ebx + 0x28], xmm1
add ebx, 8
cmp ebx, 0x10
jl 0x100cc9b2
cmp ebx, 0x11
jge 0x100ccad7
nop
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x24], cl
inc ebx
cmp ebx, 0x11
jl 0x100ccab0
push str._by
lea eax, [esp + 0x18c]
push eax
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x9c]
call fcn.10020c60
mov edx, eax
lea ecx, [esp + 0x160]
call fcn.10031170
mov edx, eax
lea ecx, [esp + 0x174]
call fcn.10024860
push esi
mov edx, eax
lea ecx, [esp + 0x4c]
call fcn.100248b0
push dword [esp + 0x3c]
mov edx, eax
lea ecx, [esp + 0xfc]
call fcn.100248b0
push dword [esp + 0x10]
mov edx, eax
lea ecx, [esp + 0x114]
call fcn.100248b0
push dword [esp + 0xc]
mov edx, eax
lea ecx, [esp + 0x7c]
call fcn.100248b0
push eax
lea ecx, [esp + 0xb4]
call fcn.10020af0
lea ecx, [esp + 0x78]
call fcn.10002240
lea ecx, [esp + 0x110]
call fcn.10002240
lea ecx, [esp + 0xf8]
call fcn.10002240
lea ecx, [esp + 0x48]
call fcn.10002240
lea ecx, [esp + 0x170]
call fcn.10002240
lea ecx, [esp + 0x158]
call fcn.10002240
lea ecx, [esp + 0x90]
call fcn.10002240
lea ecx, [esp + 0x140]
call fcn.10002240
lea ecx, [esp + 0x128]
call fcn.10002240
lea ecx, [esp + 0xe0]
call fcn.10002240
lea ecx, [esp + 0xc8]
call fcn.10002240
lea ecx, [esp + 0x188]
jmp 0x100cebde
mov eax, dword [0x10226ca8]
test byte [eax + 0x3678], 0x10
je 0x100cebe3
mov eax, dword [0x10226cb0]
xor ebx, ebx
mov esi, dword [eax + 0x10]
mov eax, dword [str._ERJP_]
mov dword [esp + 0x10], eax
mov ax, word [0x101eeb30]
mov word [esp + 0x14], ax
mov al, byte [0x101eeb32]
mov byte [esp + 0x16], al
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x10], cl
inc ebx
cmp ebx, 7
jl 0x100ccc20
xorps xmm0, xmm0
mov dword [esp + 0x58], 0
lea ecx, [esp + 0x10]
mov dword [esp + 0x5c], 0
movups xmmword [esp + 0x48], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100ccc68
sub ecx, edx
lea eax, [esp + 0x10]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.10027a80
cmp dword [esp + 0x5c], 0xf
lea edx, [esp + 0x48]
mov eax, dword [edi]
mov ecx, edi
cmova edx, dword [esp + 0x48]
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 + 0x5c]
mov esi, eax
cmp ecx, 0xf
jbe 0x100cccdc
mov edx, dword [esp + 0x48]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cccd2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cecd3
push ecx
push edx
call fcn.1019bd5d
add esp, 8
test esi, esi
je 0x100cebe3
mov eax, dword [0x10228e54]
mov ecx, dword [eax]
test ecx, ecx
je 0x100cebe3
call fcn.1007db40
cmp esi, eax
je 0x100cebe3
mov eax, dword [0x10226cb0]
push esi
mov ecx, dword [eax + 0x18]
call fcn.1007db30
mov dword [esp + 0x10], eax
test eax, eax
je 0x100cebe3
mov ecx, dword [0x10228e54]
mov esi, dword [ecx]
mov ecx, eax
call fcn.100a6a10
mov ecx, esi
mov edi, eax
call fcn.100a6a10
mov ecx, dword [edi]
cmp ecx, dword [eax]
je 0x100cebe3
mov eax, dword [0x101eebd8]
xor ebx, ebx
mov dword [esp + 0x3c], eax
mov ax, word [0x101eebdc]
mov word [esp + 0x40], ax
mov al, byte [0x101eebde]
mov byte [esp + 0x42], al
nop dword [eax + eax]
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x3c], cl
inc ebx
cmp ebx, 7
jl 0x100ccd60
push ecx
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0x80]
call fcn.10020c60
mov ecx, eax
call fcn.10006800
mov ecx, dword [esp + 0x10]
push eax
call fcn.100cc0b0
push eax
lea ecx, [esp + 0x144]
call fcn.10020c60
lea ecx, [esp + 0x78]
call fcn.10002240
push ecx
lea ecx, [esp + 0x1a4]
call fcn.10020420
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0x78]
push eax
call fcn.10036460
mov edx, eax
lea ecx, [esp + 0x1a0]
call fcn.100cfa30
mov edx, str._bought
mov ecx, eax
call fcn.100bd130
lea edx, [esp + 0x140]
mov ecx, eax
call fcn.100cfa30
lea ecx, [esp + 0x78]
call fcn.10002240
lea eax, [esp + 0x78]
push eax
lea ecx, [esp + 0x1a4]
call fcn.10020380
mov ecx, eax
call fcn.10006800
push eax
lea ecx, [esp + 0xb4]
call fcn.10020ac0
lea ecx, [esp + 0x78]
call fcn.10002240
lea ecx, [esp + 0x1a0]
call fcn.10005b20
lea ecx, [esp + 0x140]
jmp 0x100cebde
mov eax, dword [0x10226cb0]
xor ebx, ebx
mov esi, dword [eax + 0x10]
mov eax, dword [str._ERJP_]
mov dword [esp + 0x10], eax
mov ax, word [0x101eeb30]
mov word [esp + 0x14], ax
mov al, byte [0x101eeb32]
mov byte [esp + 0x16], al
nop dword [eax + eax]
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x10], cl
inc ebx
cmp ebx, 7
jl 0x100cce80
mov eax, dword [edi]
lea ecx, [esp + 0x10]
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 [0x10226cb0]
xor ebx, ebx
movq xmm0, qword [str.TBCYZQN]
mov dword [esp + 0x3c], eax
mov esi, dword [ecx + 0x10]
mov cl, byte [0x101edffc]
movq qword [esp + 0x10], xmm0
mov byte [esp + 0x18], cl
nop word [eax + eax]
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x10], cl
inc ebx
cmp ebx, 9
jl 0x100ccef0
mov eax, dword [edi]
lea ecx, [esp + 0x10]
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 [0x101ee090]
mov esi, eax
movq xmm0, qword [0x101ee088]
xor ebx, ebx
mov word [esp + 0x68], cx
mov cl, byte [0x101ee092]
movq qword [esp + 0x60], xmm0
mov byte [esp + 0x6a], cl
nop dword [eax + eax]
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x60], cl
inc ebx
cmp ebx, 0xb
jl 0x100ccf60
mov eax, dword [edi]
lea ecx, [esp + 0x60]
push 0
push ecx
mov ecx, edi
mov eax, dword [eax + 0x18]
call eax
mov edx, eax
lea ecx, [esp + 0x158]
call fcn.10003f90
movq xmm0, qword [str.__C_KUNL]
xor ebx, ebx
mov al, byte [0x101eec00]
movq qword [esp + 0x10], xmm0
mov byte [esp + 0x18], al
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x10], cl
inc ebx
cmp ebx, 9
jl 0x100ccfc0
mov eax, dword [edi]
lea ecx, [esp + 0x10]
push 0
push ecx
mov ecx, edi
mov eax, dword [eax + 0x18]
call eax
cmp eax, 7
ja case.default.0x100cd002
jmp dword [eax*4 + 0x100cecfc]
mov eax, dword [str.generic]
mov dword [esp + 0x24], eax
mov ax, word [0x101d24d4]
mov word [esp + 0x28], ax
mov al, byte [0x101d24d6]
jmp 0x100cd14a
xorps xmm0, xmm0
mov edi, 4
movups xmmword [esp + 0x24], xmm0
mov dword [esp + 0x24], 0x64616568
mov byte [esp + 0x28], 0
jmp 0x100cd161
mov eax, dword [str.chest]
xorps xmm0, xmm0
movups xmmword [esp + 0x24], xmm0
mov dword [esp + 0x24], eax
mov edi, 5
mov al, byte [0x101eeae8]
mov byte [esp + 0x28], al
mov byte [esp + 0x29], 0
jmp 0x100cd161
mov eax, dword [str.stomach]
mov dword [esp + 0x24], eax
mov ax, word [0x101eeaf0]
mov word [esp + 0x28], ax
mov al, byte [0x101eeaf2]
jmp 0x100cd14a
xorps xmm0, xmm0
mov edi, 8
movups xmmword [esp + 0x24], xmm0
mov dword [esp + 0x24], 0x7466656c
mov dword [esp + 0x28], 0x6d726120
mov byte [esp + 0x2c], 0
jmp 0x100cd161
mov al, byte [0x101eeafc]
xorps xmm0, xmm0
movups xmmword [esp + 0x24], xmm0
mov edi, 9
mov byte [esp + 0x2c], al
movq xmm0, qword [str.right_arm]
movq qword [esp + 0x24], xmm0
mov byte [esp + 0x2d], 0
jmp 0x100cd161
xorps xmm0, xmm0
mov edi, 8
movups xmmword [esp + 0x24], xmm0
mov dword [esp + 0x24], 0x7466656c
mov dword [esp + 0x28], 0x67656c20
mov byte [esp + 0x2c], 0
jmp 0x100cd161
mov al, byte [0x101eeb0c]
xorps xmm0, xmm0
movups xmmword [esp + 0x24], xmm0
mov edi, 9
mov byte [esp + 0x2c], al
movq xmm0, qword [str.right_leg]
movq qword [esp + 0x24], xmm0
mov byte [esp + 0x2d], 0
jmp 0x100cd161
mov eax, dword [str.unknown]
mov dword [esp + 0x24], eax
mov ax, word [0x101d24b8]
mov word [esp + 0x28], ax
mov al, byte [0x101d24ba]
xorps xmm0, xmm0
mov byte [esp + 0x2a], al
movlpd qword [esp + 0x2c], xmm0
mov edi, 7
mov byte [esp + 0x2b], 0
mov eax, dword [0x10228e54]
mov ebx, 0xf
mov dword [esp + 0x34], edi
mov dword [esp + 0x38], ebx
mov ecx, dword [eax]
mov eax, dword [ecx + 8]
add ecx, 8
mov eax, dword [eax + 0x28]
call eax
cmp dword [esp + 0x3c], eax
je 0x100cde26
mov eax, dword [0x10228e54]
mov ecx, dword [eax]
mov eax, dword [ecx + 8]
add ecx, 8
mov eax, dword [eax + 0x28]
call eax
cmp esi, eax
jne 0x100cde26
mov eax, dword [0x10226ca8]
test byte [eax + 0x3678], 1
jne 0x100cd1f0
mov ecx, dword [esp + 0x16c]
cmp ecx, ebx
jbe 0x100cebe3
mov edx, dword [esp + 0x158]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cdea0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cecd8
jmp 0x100cdea0
mov eax, dword [0x10226cb0]
push dword [esp + 0x3c]
mov ecx, dword [eax + 0x18]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
mov dword [esp + 0x3c], eax
test eax, eax
jne 0x100cd220
lea ecx, [esp + 0x24]
call fcn.10002240
lea ecx, [esp + 0x158]
jmp 0x100cebde
lea ecx, [esp + 0x140]
call fcn.10020d90
mov ax, word [0x101ee090]
xor ebx, ebx
movq xmm0, qword [0x101ee088]
mov word [esp + 0x68], ax
mov al, byte [0x101ee092]
movq qword [esp + 0x60], xmm0
mov byte [esp + 0x6a], al
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x60], cl
inc ebx
cmp ebx, 0xb
jl 0x100cd250
push ecx
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0x64]
push eax
call fcn.100a6a80
mov ecx, dword [esp + 0x3c]
mov esi, eax
call fcn.1007dba0
sub eax, esi
jns 0x100cd442
movups xmm0, xmmword [0x101eebc8]
movups xmmword [esp + 0x10], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x100cd417
xor ebx, ebx
cmp dword [0x10228670], 2
jl 0x100cd3f0
movaps xmm0, xmmword [0x101faf50]
xor ecx, ecx
movaps xmm4, xmmword [0x101fadd0]
movaps xmm3, xmmword [0x101faf20]
movaps xmm5, xmmword [0x101fae60]
movaps xmmword [esp + 0x60], xmm0
mov edx, dword [esp + 0x60]
nop
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, 1
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 [0x101faf00]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x10]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x10], 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, 1
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 [0x101faf00]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x14]
xorps xmm1, xmm0
movd dword [esp + ecx + 0x14], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x100cd2f0
jmp 0x100cd417
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x10], cl
inc ebx
cmp ebx, 0x10
jl 0x100cd3f0
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x7c]
call fcn.10020c60
mov ecx, eax
call fcn.10006800
push eax
lea ecx, [esp + 0x144]
call fcn.10020ac0
lea ecx, [esp + 0x78]
jmp 0x100cd66b
mov eax, dword [0x101eebb4]
xor ebx, ebx
cmp dword [0x10228670], 2
movq xmm0, qword [0x101eebac]
mov dword [esp + 0x18], eax
mov ax, word [0x101eebb8]
mov word [esp + 0x1c], ax
mov al, byte [0x101eebba]
movq qword [esp + 0x10], xmm0
mov byte [esp + 0x1e], al
jl 0x100cd573
movaps xmm2, xmmword [0x101fadd0]
mov ebx, 8
movaps xmm4, xmmword [0x101faf20]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
mov eax, dword [0x101faf50]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101fae60]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101fae10]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101faf00]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101eebac]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x10], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101fae60]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101faf00]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x14]
xorps xmm1, xmm0
movd dword [esp + 0x14], xmm1
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x10], cl
inc ebx
cmp ebx, 0xf
jl 0x100cd573
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x18c]
call fcn.10020c60
mov ecx, eax
call fcn.10006800
mov cx, word [0x101ee090]
xor ebx, ebx
movq xmm0, qword [0x101ee088]
mov word [esp + 0x68], cx
mov cl, byte [0x101ee092]
mov dword [esp + 0x10], eax
movq qword [esp + 0x60], xmm0
mov byte [esp + 0x6a], cl
nop dword [eax]
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x60], cl
inc ebx
cmp ebx, 0xb
jl 0x100cd5e0
push ecx
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0x64]
push eax
call fcn.100a6a80
mov ecx, dword [esp + 0x3c]
mov esi, eax
call fcn.1007dba0
sub eax, esi
lea ecx, [esp + 0x128]
mov edx, eax
call fcn.10003f90
push dword [esp + 0x10]
mov edx, eax
lea ecx, [esp + 0x7c]
call fcn.10024860
push eax
lea ecx, [esp + 0x144]
call fcn.10020af0
lea ecx, [esp + 0x78]
call fcn.10002240
lea ecx, [esp + 0x128]
call fcn.10002240
lea ecx, [esp + 0x188]
call fcn.10002240
mov eax, dword [0x101eeb24]
mov dword [esp + 0x10], eax
mov ax, word [0x101eeb28]
mov word [esp + 0x14], ax
test ah, ah
je 0x100cd6b9
xor ebx, ebx
nop word [eax + eax]
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x10], cl
inc ebx
cmp ebx, 6
jl 0x100cd690
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x7c]
call fcn.10020c60
mov ecx, eax
xor ebx, ebx
mov eax, dword [0x101eeb74]
mov dword [esp + 0x10], eax
mov al, byte [0x101eeb78]
mov byte [esp + 0x14], al
call fcn.10006800
mov dword [esp + 0xc], eax
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x10], cl
inc ebx
cmp ebx, 5
jl 0x100cd6e6
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x114]
call fcn.10020c60
mov ecx, eax
call fcn.10006800
mov ecx, dword [esp + 0x3c]
mov esi, eax
lea eax, [esp + 0x128]
push eax
call fcn.10036460
mov ecx, dword [0x101eeb4c]
xor ebx, ebx
mov dword [esp + 0x3c], ecx
mov cl, byte [0x101eeb50]
mov dword [esp + 0x10], eax
mov byte [esp + 0x40], cl
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x3c], cl
inc ebx
cmp ebx, 5
jl 0x100cd754
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0x18c]
call fcn.10020c60
push dword [esp + 0x10]
lea ecx, [esp + 0xfc]
push eax
push dword [esp + 0x18]
call fcn.10029a70
push esi
lea ecx, [esp + 0xfc]
call fcn.100209e0
mov dword [esp + 0xa0], 0
lea ecx, [esp + 0x24]
mov dword [esp + 0xa4], 0
xorps xmm0, xmm0
movups xmmword [esp + 0x90], xmm0
push edi
movups xmm0, xmmword [eax]
mov ebx, 0xf
push ecx
movups xmmword [esp + 0x98], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esp + 0xa8], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov esi, dword [esp + 0xac]
mov eax, esi
mov edx, dword [esp + 0xa8]
sub eax, edx
cmp edi, eax
ja 0x100cd850
lea eax, [edi + edx]
cmp esi, ebx
mov dword [esp + 0xa8], eax
lea eax, [esp + 0x98]
cmova eax, dword [esp + 0x98]
lea esi, [eax + edx]
push esi
call fcn.1019d290
add esp, 0xc
mov byte [edi + esi], 0
lea eax, [esp + 0x90]
jmp 0x100cd865
push dword [esp + 0x18]
lea ecx, [esp + 0x9c]
push edi
call fcn.10028690
mov ebx, dword [esp + 0x38]
push dword [esp + 0xc]
mov dword [esp + 0x5c], 0
lea ecx, [esp + 0x4c]
mov dword [esp + 0x60], 0
xorps xmm0, xmm0
movups xmmword [esp + 0x4c], xmm0
movups xmm0, xmmword [eax]
movups xmmword [esp + 0x4c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esp + 0x5c], xmm0
mov dword [eax + 0x14], 0xf
mov dword [eax + 0x10], 0
mov byte [eax], 0
call fcn.100209e0
mov dword [esp + 0xd8], 0
lea edx, [esp + 0x158]
mov dword [esp + 0xdc], 0
xorps xmm0, xmm0
movups xmmword [esp + 0xc8], xmm0
movups xmm0, xmmword [eax]
movups xmmword [esp + 0xc8], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esp + 0xd8], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
cmp dword [esp + 0x16c], 0xf
mov ecx, dword [esp + 0xd8]
cmova edx, dword [esp + 0x158]
mov eax, dword [esp + 0xdc]
mov edi, dword [esp + 0x168]
sub eax, ecx
mov dword [esp + 0x10], ecx
push edi
push edx
cmp edi, eax
ja 0x100cd972
cmp dword [esp + 0xe4], 0xf
lea esi, [esp + 0xd0]
lea eax, [edi + ecx]
cmova esi, dword [esp + 0xd0]
mov dword [esp + 0xe0], eax
lea eax, [esi + ecx]
push eax
call fcn.1019d290
mov ecx, dword [esp + 0x1c]
lea eax, [edi + esi]
add esp, 0xc
mov byte [eax + ecx], 0
lea eax, [esp + 0xc8]
jmp 0x100cd983
push dword [esp + 0x18]
lea ecx, [esp + 0xd4]
push edi
call fcn.10028690
mov dword [esp + 0xf0], 0
xorps xmm0, xmm0
movups xmmword [esp + 0xe0], xmm0
mov dword [esp + 0xf4], 0
movups xmm0, xmmword [eax]
movups xmmword [esp + 0xe0], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esp + 0xf0], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov edx, dword [esp + 0xf4]
mov eax, edx
mov ecx, dword [esp + 0xf0]
sub eax, ecx
cmp eax, 2
jb 0x100cda18
lea eax, [ecx + 2]
cmp edx, 0xf
mov dword [esp + 0xf0], eax
mov edx, 0x2820
lea eax, [esp + 0xe0]
cmova eax, dword [esp + 0xe0]
mov word [eax + ecx], dx
mov byte [eax + ecx + 2], 0
lea eax, [esp + 0xe0]
jmp 0x100cda31
push 2
push 0x101eeb00
push dword [esp + 0x18]
lea ecx, [esp + 0xec]
push 2
call fcn.10028690
mov dword [esp + 0x180], 0
lea ecx, [esp + 0x170]
mov dword [esp + 0x184], 0
xorps xmm0, xmm0
movups xmmword [esp + 0x170], xmm0
movups xmm0, xmmword [eax]
movups xmmword [esp + 0x170], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esp + 0x180], xmm0
mov dword [eax + 0x14], 0xf
mov dword [eax + 0x10], 0
mov byte [eax], 0
lea eax, [esp + 0x140]
push eax
call fcn.10020a50
movups xmm0, xmmword [eax]
movq xmm1, qword [eax + 0x10]
movups xmmword [esp + 0x60], xmm0
movq qword [esp + 0x10], xmm1
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov ecx, dword [esp + 0xc4]
cmp ecx, 0xf
jbe 0x100cdafb
mov edx, dword [esp + 0xb0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cdae6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cecdd
push ecx
push edx
call fcn.1019bd5d
movups xmm0, xmmword [esp + 0x68]
add esp, 8
movq xmm1, qword [esp + 0x10]
mov ecx, dword [esp + 0x184]
movq qword [esp + 0xc0], xmm1
movups xmmword [esp + 0xb0], xmm0
cmp ecx, 0xf
jbe 0x100cdb48
mov edx, dword [esp + 0x170]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cdb3e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cecdd
push ecx
push edx
call fcn.1019bd5d
add esp, 8
mov ecx, dword [esp + 0xf4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0xf
mov byte [esp + 0x170], 0
cmp ecx, 0xf
jbe 0x100cdba2
mov edx, dword [esp + 0xe0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cdb98
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cecdd
push ecx
push edx
call fcn.1019bd5d
add esp, 8
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0xf0], 0
mov dword [esp + 0xf4], 0xf
mov byte [esp + 0xe0], 0
cmp ecx, 0xf
jbe 0x100cdbfc
mov edx, dword [esp + 0xc8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cdbf2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cecdd
push ecx
push edx
call fcn.1019bd5d
add esp, 8
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0xd8], 0
mov dword [esp + 0xdc], 0xf
mov byte [esp + 0xc8], 0
cmp ecx, 0xf
jbe 0x100cdc50
mov edx, dword [esp + 0x48]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cdc46
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cecdd
push ecx
push edx
call fcn.1019bd5d
add esp, 8
mov ecx, dword [esp + 0xa4]
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], 0xf
mov byte [esp + 0x48], 0
cmp ecx, 0xf
jbe 0x100cdca1
mov edx, dword [esp + 0x90]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cdc97
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cecdd
push ecx
push edx
call fcn.1019bd5d
add esp, 8
mov ecx, dword [esp + 0x10c]
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0xf
mov byte [esp + 0x90], 0
cmp ecx, 0xf
jbe 0x100cdcfb
mov edx, dword [esp + 0xf8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cdcf1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cecdd
push ecx
push edx
call fcn.1019bd5d
add esp, 8
mov ecx, dword [esp + 0x19c]
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0xf
mov byte [esp + 0xf8], 0
cmp ecx, 0xf
jbe 0x100cdd55
mov edx, dword [esp + 0x188]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cdd4b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cecdd
push ecx
push edx
call fcn.1019bd5d
add esp, 8
mov ecx, dword [esp + 0x13c]
mov dword [esp + 0x198], 0
mov dword [esp + 0x19c], 0xf
mov byte [esp + 0x188], 0
cmp ecx, 0xf
jbe 0x100cddaf
mov edx, dword [esp + 0x128]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cdda5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cecdd
push ecx
push edx
call fcn.1019bd5d
add esp, 8
mov eax, dword [esp + 0x124]
mov dword [esp + 0x138], 0
mov dword [esp + 0x13c], 0xf
mov byte [esp + 0x128], 0
cmp eax, 0xf
jbe 0x100cddee
inc eax
lea ecx, [esp + 0x110]
push eax
push dword [esp + 0x114]
call fcn.10002370
lea ecx, [esp + 0x78]
mov dword [esp + 0x120], 0
mov dword [esp + 0x124], 0xf
mov byte [esp + 0x110], 0
call fcn.10002240
lea ecx, [esp + 0x140]
call fcn.10002240
jmp 0x100ce0c7
mov eax, dword [0x10228e54]
mov ecx, dword [eax]
mov eax, dword [ecx + 8]
add ecx, 8
mov eax, dword [eax + 0x28]
call eax
cmp dword [esp + 0x3c], eax
jne 0x100ce0c7
mov eax, dword [0x10228e54]
mov ecx, dword [eax]
mov eax, dword [ecx + 8]
add ecx, 8
mov eax, dword [eax + 0x28]
call eax
cmp esi, eax
je 0x100ce0c7
mov eax, dword [0x10226ca8]
test byte [eax + 0x3678], 2
jne 0x100cdeaf
mov ecx, dword [esp + 0x16c]
cmp ecx, 0xf
jbe 0x100cebe3
mov edx, dword [esp + 0x158]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cdea0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cecec
push ecx
push edx
call fcn.1019bd5d
add esp, 8
jmp 0x100cebe3
mov eax, dword [0x10226cb0]
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 0x100cdeda
lea ecx, [esp + 0x24]
call fcn.10002240
lea ecx, [esp + 0x158]
jmp 0x100cebde
mov eax, dword [0x101eeb74]
xor ebx, ebx
mov dword [esp + 0x10], eax
mov al, byte [0x101eeb78]
mov byte [esp + 0x14], al
nop
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x10], cl
inc ebx
cmp ebx, 5
jl 0x100cdef0
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x94]
call fcn.10020c60
mov ecx, eax
call fcn.10006800
mov ecx, dword [0x101eeb24]
mov dword [esp + 0x3c], ecx
mov cx, word [0x101eeb28]
mov dword [esp + 0x10], eax
mov word [esp + 0x40], cx
test ch, ch
je 0x100cdf7a
xor ebx, ebx
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x3c], cl
inc ebx
cmp ebx, 6
jl 0x100cdf51
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0x174]
call fcn.10020c60
mov ecx, eax
call fcn.10006800
mov edi, eax
mov ecx, esi
lea eax, [esp + 0x48]
push eax
call fcn.10036460
movq xmm0, qword [str._CEL]
mov esi, eax
mov cl, byte [0x101eebc4]
xor ebx, ebx
movq qword [esp + 0x3c], xmm0
mov byte [esp + 0x44], cl
nop dword [eax]
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x3c], cl
inc ebx
cmp ebx, 9
jl 0x100cdfc0
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0xfc]
call fcn.10020c60
push esi
mov edx, eax
lea ecx, [esp + 0x114]
call fcn.100248b0
lea ecx, [esp + 0x158]
mov edx, eax
push ecx
push edi
lea ecx, [esp + 0x190]
call fcn.10024860
mov edx, eax
lea ecx, [esp + 0x12c]
call fcn.10031170
lea ecx, [esp + 0x24]
mov edx, eax
push ecx
push dword [esp + 0x14]
lea ecx, [esp + 0x148]
call fcn.10024860
mov edx, eax
lea ecx, [esp + 0x7c]
call fcn.10031170
push eax
lea ecx, [esp + 0xb4]
call fcn.10020af0
lea ecx, [esp + 0x78]
call fcn.10002240
lea ecx, [esp + 0x140]
call fcn.10002240
lea ecx, [esp + 0x128]
call fcn.10002240
lea ecx, [esp + 0x188]
call fcn.10002240
lea ecx, [esp + 0x110]
call fcn.10002240
lea ecx, [esp + 0xf8]
call fcn.10002240
lea ecx, [esp + 0x48]
call fcn.10002240
lea ecx, [esp + 0x170]
call fcn.10002240
lea ecx, [esp + 0x90]
call fcn.10002240
mov ebx, dword [esp + 0x38]
cmp ebx, 0xf
jbe 0x100ce0f9
mov ecx, dword [esp + 0x24]
inc ebx
mov eax, ecx
cmp ebx, 0x1000
jb 0x100ce0ef
mov ecx, dword [eax - 4]
add ebx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cecec
push ebx
push ecx
call fcn.1019bd5d
add esp, 8
mov ecx, dword [esp + 0x16c]
cmp ecx, 0xf
jbe 0x100cebe3
mov edx, dword [esp + 0x158]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100ce12f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cecec
push ecx
push edx
call fcn.1019bd5d
add esp, 8
jmp 0x100cebe3
mov eax, dword [0x10226ca8]
test byte [eax + 0x3678], 8
je 0x100cebe3
mov eax, dword [0x10226cb0]
xor ebx, ebx
mov esi, dword [eax + 0x10]
mov eax, dword [str._ERJP_]
mov dword [esp + 0x10], eax
mov ax, word [0x101eeb30]
mov word [esp + 0x14], ax
mov al, byte [0x101eeb32]
mov byte [esp + 0x16], al
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x10], cl
inc ebx
cmp ebx, 7
jl 0x100ce177
xorps xmm0, xmm0
mov dword [esp + 0x58], 0
lea ecx, [esp + 0x10]
mov dword [esp + 0x5c], 0
movups xmmword [esp + 0x48], xmm0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100ce1c0
sub ecx, edx
lea eax, [esp + 0x10]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.10027a80
cmp dword [esp + 0x5c], 0xf
lea edx, [esp + 0x48]
mov eax, dword [edi]
mov ecx, edi
cmova edx, dword [esp + 0x48]
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 + 0x5c]
mov edi, eax
cmp ecx, 0xf
jbe 0x100ce234
mov edx, dword [esp + 0x48]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100ce22a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cece2
push ecx
push edx
call fcn.1019bd5d
add esp, 8
test edi, edi
je 0x100cebe3
mov eax, dword [0x10228e54]
mov ecx, dword [eax]
test ecx, ecx
je 0x100cebe3
mov eax, dword [0x10226cb0]
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 + 0x1a0]
push ecx
push eax
mov ecx, esi
mov edx, dword [edx + 0x20]
call edx
or ecx, 0xffffffff
test al, al
cmovne ecx, dword [esp + 0x230]
cmp edi, ecx
je 0x100cebe3
mov eax, dword [0x10226cb0]
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 0x100cebe3
mov eax, dword [0x101eebf0]
movups xmm0, xmmword [0x101eebe0]
mov dword [esp + 0x34], eax
mov ax, word [0x101eebf4]
mov word [esp + 0x38], ax
movups xmmword [esp + 0x24], xmm0
test ah, ah
je 0x100ceb87
xor ebx, ebx
cmp dword [0x10228670], 2
jl 0x100ce400
movaps xmm0, xmmword [0x101faf50]
movaps xmm4, xmmword [0x101fadd0]
movaps xmm3, xmmword [0x101faf20]
movaps xmm5, xmmword [0x101fae60]
movaps xmmword [esp + 0x60], xmm0
mov ecx, dword [esp + 0x60]
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, 1
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 [0x101faf00]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x24]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ebx + 0x24], 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, 1
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 [0x101faf00]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x28]
xorps xmm1, xmm0
movd dword [esp + ebx + 0x28], xmm1
add ebx, 8
cmp ebx, 0x10
jl 0x100ce300
cmp ebx, 0x16
jge 0x100ceb87
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x24], cl
inc ebx
cmp ebx, 0x16
jl 0x100ce400
jmp 0x100ceb87
cmp ecx, 0xc3c7d299
je 0x100ce8a1
cmp ecx, 0xec398ed7
jne 0x100cec11
mov eax, dword [0x10226ca8]
test byte [eax + 0x3678], 4
je 0x100cebe3
mov eax, dword [0x10226cb0]
xor ebx, ebx
mov esi, dword [eax + 0x10]
mov eax, dword [str._ERJP_]
mov dword [esp + 0x10], eax
mov ax, word [0x101eeb30]
mov word [esp + 0x14], ax
mov al, byte [0x101eeb32]
mov byte [esp + 0x16], al
nop dword [eax]
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x10], cl
inc ebx
cmp ebx, 7
jl 0x100ce480
xorps xmm0, xmm0
mov dword [esp + 0x58], 0
lea ecx, [esp + 0x10]
mov dword [esp + 0x5c], 0
movups xmmword [esp + 0x48], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100ce4c8
sub ecx, edx
lea eax, [esp + 0x10]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.10027a80
cmp dword [esp + 0x5c], 0xf
lea edx, [esp + 0x48]
mov eax, dword [edi]
mov ecx, edi
cmova edx, dword [esp + 0x48]
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 + 0x5c]
mov edi, eax
cmp ecx, 0xf
jbe 0x100ce53c
mov edx, dword [esp + 0x48]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100ce532
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cece7
push ecx
push edx
call fcn.1019bd5d
add esp, 8
mov eax, dword [0x10226cb0]
mov esi, dword [eax + 0x10]
mov eax, dword [0x10228e54]
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 + 0x1a0]
push ecx
push eax
mov ecx, esi
mov edx, dword [edx + 0x20]
call edx
or ecx, 0xffffffff
test al, al
cmovne ecx, dword [esp + 0x230]
cmp edi, ecx
je 0x100cebe3
mov eax, dword [0x10226cb0]
push edi
mov ecx, dword [eax + 0x18]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
test eax, eax
je 0x100cebe3
lea ecx, [esp + 0x1a0]
push ecx
mov ecx, eax
call fcn.1018f550
xorps xmm0, xmm0
mov dword [esp + 0x108], 0
lea ecx, [esp + 0x1a0]
mov dword [esp + 0x10c], 0
movups xmmword [esp + 0xf8], xmm0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100ce5d0
sub ecx, edx
lea eax, [esp + 0x1a0]
push ecx
push eax
lea ecx, [esp + 0x100]
call fcn.10027a80
movups xmm0, xmmword [str._YDLX_]
mov ax, word [0x101eeba8]
mov word [esp + 0x34], ax
movups xmmword [esp + 0x24], xmm0
test ah, ah
je 0x100ce767
xor ebx, ebx
cmp dword [0x10228670], 2
jl 0x100ce740
movaps xmm0, xmmword [0x101faf50]
movaps xmm4, xmmword [0x101fadd0]
movaps xmm3, xmmword [0x101faf20]
movaps xmm5, xmmword [0x101fae60]
movaps xmmword [esp + 0x60], xmm0
mov ecx, dword [esp + 0x60]
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, 1
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 [0x101faf00]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x24]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ebx + 0x24], 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, 1
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 [0x101faf00]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x28]
xorps xmm1, xmm0
movd dword [esp + ebx + 0x28], xmm1
add ebx, 8
cmp ebx, 0x10
jl 0x100ce641
cmp ebx, 0x12
jge 0x100ce767
nop dword [eax]
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x24], cl
inc ebx
cmp ebx, 0x12
jl 0x100ce740
xorps xmm0, xmm0
mov dword [esp + 0x120], 0
lea ecx, [esp + 0x24]
mov dword [esp + 0x124], 0
movups xmmword [esp + 0x110], xmm0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100ce790
sub ecx, edx
lea eax, [esp + 0x24]
push ecx
push eax
lea ecx, [esp + 0x118]
call fcn.10027a80
lea eax, [esp + 0xf8]
push eax
lea eax, [esp + 0x114]
push eax
push dword [esp + 0x18]
lea ecx, [esp + 0x84]
call fcn.10029a70
mov ecx, dword [esp + 0xc4]
cmp ecx, 0xf
jbe 0x100ce807
mov edx, dword [esp + 0xb0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100ce7fd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cecec
push ecx
push edx
call fcn.1019bd5d
add esp, 8
movups xmm0, xmmword [esp + 0x78]
mov ecx, dword [esp + 0x124]
movups xmmword [esp + 0xb0], xmm0
movq xmm0, qword [esp + 0x88]
movq qword [esp + 0xc0], xmm0
cmp ecx, 0xf
jbe 0x100ce862
mov edx, dword [esp + 0x110]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100ce858
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cecec
push ecx
push edx
call fcn.1019bd5d
add esp, 8
mov ecx, dword [esp + 0x10c]
cmp ecx, 0xf
jbe 0x100cebe3
mov edx, dword [esp + 0xf8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cdea0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cecec
jmp 0x100cdea0
mov eax, dword [0x10226ca8]
test byte [eax + 0x3678], 8
je 0x100cebe3
mov eax, dword [0x10226cb0]
xor ebx, ebx
mov esi, dword [eax + 0x10]
mov eax, dword [str._ERJP_]
mov dword [esp + 0x10], eax
mov ax, word [0x101eeb30]
mov word [esp + 0x14], ax
mov al, byte [0x101eeb32]
mov byte [esp + 0x16], al
nop word [eax + eax]
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x10], cl
inc ebx
cmp ebx, 7
jl 0x100ce8e0
xorps xmm0, xmm0
mov dword [esp + 0x58], 0
lea ecx, [esp + 0x10]
mov dword [esp + 0x5c], 0
movups xmmword [esp + 0x48], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100ce928
sub ecx, edx
lea eax, [esp + 0x10]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.10027a80
cmp dword [esp + 0x5c], 0xf
lea edx, [esp + 0x48]
mov eax, dword [edi]
mov ecx, edi
cmova edx, dword [esp + 0x48]
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 + 0x5c]
mov edi, eax
cmp ecx, 0xf
jbe 0x100ce99c
mov edx, dword [esp + 0x48]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100ce992
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cecf1
push ecx
push edx
call fcn.1019bd5d
add esp, 8
test edi, edi
je 0x100cebe3
mov eax, dword [0x10228e54]
mov ecx, dword [eax]
test ecx, ecx
je 0x100cebe3
mov eax, dword [0x10226cb0]
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 + 0x1a0]
push ecx
push eax
mov ecx, esi
mov edx, dword [edx + 0x20]
call edx
or ecx, 0xffffffff
test al, al
cmovne ecx, dword [esp + 0x230]
cmp edi, ecx
je 0x100cebe3
mov eax, dword [0x10226cb0]
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 0x100cebe3
mov eax, dword [0x101eeb44]
movups xmm0, xmmword [0x101eeb34]
mov dword [esp + 0x34], eax
mov ax, word [0x101eeb48]
mov word [esp + 0x38], ax
movups xmmword [esp + 0x24], xmm0
test ah, ah
je 0x100ceb87
xor ebx, ebx
cmp dword [0x10228670], 2
jl 0x100ceb60
movaps xmm0, xmmword [0x101faf50]
movaps xmm4, xmmword [0x101fadd0]
movaps xmm3, xmmword [0x101faf20]
movaps xmm5, xmmword [0x101fae60]
movaps xmmword [esp + 0x60], xmm0
mov ecx, dword [esp + 0x60]
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, 1
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 [0x101faf00]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x24]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ebx + 0x24], 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, 1
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 [0x101faf00]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x28]
xorps xmm1, xmm0
movd dword [esp + ebx + 0x28], xmm1
add ebx, 8
cmp ebx, 0x10
jl 0x100cea62
cmp ebx, 0x16
jge 0x100ceb87
nop
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x35
xor byte [esp + ebx + 0x24], cl
inc ebx
cmp ebx, 0x16
jl 0x100ceb60
lea eax, [esp + 0x24]
push eax
lea ecx, [esp + 0x12c]
call fcn.10020c60
mov esi, eax
mov ecx, edi
lea eax, [esp + 0x140]
push eax
call fcn.10036460
push esi
mov edx, eax
lea ecx, [esp + 0x7c]
call fcn.100248b0
push eax
lea ecx, [esp + 0xb4]
call fcn.10020af0
lea ecx, [esp + 0x78]
call fcn.10002240
lea ecx, [esp + 0x140]
call fcn.10002240
lea ecx, [esp + 0x128]
call fcn.10002240
cmp dword [esp + 0xc0], 0
je 0x100cec11
lea eax, [esp + 0xa8]
mov ecx, 0x1043b68c
push eax
call fcn.100cf790
lea eax, [esp + 0xa8]
mov ecx, 0x1043b678
push eax
call fcn.100cf790
mov ecx, dword [esp + 0xc4]
cmp ecx, 0xf
jbe 0x100cec4d
mov edx, dword [esp + 0xb0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100cec43
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100cecf6
push ecx
push edx
call fcn.1019bd5d
add esp, 8
push 0x1051bcfc
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc8], 0xf
mov byte [esp + 0xb4], 0
call fcn.1019b18d
add esp, 4
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x2f0]
xor ecx, esp
call fcn.1019ba64
mov esp, ebp
pop ebp
ret
mov ecx, 0x1043b68c
call fcn.1003f180
mov ecx, 0x1043b678
call fcn.1003f180
mov ecx, dword [esp + 0x2fc]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.1019ba64
mov esp, ebp
pop ebp
ret
push 5
call fcn.1019b39c
push 6
mov dword [0x1051bd28], 0x7ffffffe
call fcn.1019b39c
call fcn.101a0e96
call fcn.101a0e96
call fcn.101a0e96
call fcn.101a0e96
call fcn.101a0e96
call fcn.101a0e96
call fcn.101a0e96
call fcn.101a0e96
call fcn.101a0e96
nop
or eax, edx
or al, 16
daa
ror byte [eax + edx], 1
inc esi
ror byte [eax + edx], 1
outsd dx, dword [esi]
ror byte [eax + edx], 1
invalid