Function at 0x100c00c0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x34
mov ecx, dword [esp + 0x48]
push ebx
push ebp
or eax, 0xffffffff
push esi
push edi
test ecx, ecx
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], eax
jne 0x100c0113
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x5c]
push eax
mov eax, dword [esp + 0x58]
push ecx
mov ecx, dword [esp + 0x58]
push edx
mov edx, dword [esp + 0x58]
push 0
push eax
mov eax, dword [esp + 0x5c]
push ecx
push edx
push eax
call fcn.100c2980
add esp, 0x20
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x34
ret
mov ecx, dword [esp + 0x54]
mov esi, dword [esp + 0x64]
and ecx, 0xff
mov edx, dword [esp + 0x4c]
shl eax, cl
mov dword [esp + 0x54], ecx
mov ecx, dword [esp + 0x50]
mov edi, dword [esp + 0x60]
and ecx, 0xfffffffc
not eax
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x5c]
add eax, edx
lea ecx, [esi + ecx*4]
cmp eax, 0x20
mov dword [esp + 0x30], ecx
mov dword [esp + 0x38], eax
jbe 0x100c1317
cmp esi, ecx
jae 0x100c2115
mov ecx, dword [esp + 0x54]
mov ebx, dword [esp + 0x48]
mov edx, 0x20
mov ebp, dword [ebx + 0x18]
lea eax, [ecx + 1]
sub edx, eax
mov eax, dword [ebx + 0x101c]
test eax, eax
mov dword [esp + 0x60], edx
mov dword [esp + 0x64], eax
jne 0x100c018c
mov ecx, 0x20
jmp 0x100c01de
mov ecx, eax
shr ecx, 0x1c
mov ecx, dword [ecx*4 + 0x10112ef4]
test ecx, ecx
jne 0x100c01dd
test eax, 0xffff0000
jne 0x100c01af
mov edx, eax
mov ecx, 0x10
shl edx, 0x10
jmp 0x100c01b3
mov edx, dword [esp + 0x64]
test edx, 0xff000000
jne 0x100c01c1
add ecx, 8
shl edx, 8
test edx, 0xf0000000
jne 0x100c01cf
add ecx, 4
shl edx, 4
shr edx, 0x1c
add ecx, dword [edx*4 + 0x10112ef4]
mov edx, dword [esp + 0x60]
dec ecx
cmp ecx, 0x20
mov dword [esp + 0x64], ecx
mov dword [esp + 0x4c], ecx
jae 0x100c01f4
mov dword [esp + 0x1c], ecx
jmp 0x100c02ca
mov eax, 0x20
sub eax, ebp
mov dword [esp + 0x64], eax
mov eax, dword [ebx + 0x14]
cmp eax, 0x400
jae 0x100c0238
mov ecx, dword [ebx + eax*4 + 0x1c]
inc eax
mov dword [ebx + 0x14], eax
mov eax, ecx
mov edx, ecx
and eax, 0xff0000
shr edx, 0x10
or eax, edx
mov edx, ecx
shl edx, 0x10
and ecx, 0xff00
or edx, ecx
shr eax, 8
shl edx, 8
or eax, edx
xor ebp, ebp
jmp 0x100c0252
push ebx
call fcn.100bf3c0
add esp, 4
test eax, eax
je 0x100c26dc
mov eax, dword [ebx + 0x101c]
mov ebp, dword [ebx + 0x18]
test eax, eax
mov ecx, eax
jne 0x100c025f
mov ecx, 0x20
jmp 0x100c02a9
mov edx, eax
shr edx, 0x1c
mov edx, dword [edx*4 + 0x10112ef4]
test edx, edx
jne 0x100c02a6
test eax, 0xffff0000
jne 0x100c0280
mov ecx, eax
mov edx, 0x10
shl ecx, 0x10
test ecx, 0xff000000
jne 0x100c028e
add edx, 8
shl ecx, 8
test ecx, 0xf0000000
jne 0x100c029c
add edx, 4
shl ecx, 4
shr ecx, 0x1c
add edx, dword [ecx*4 + 0x10112ef4]
lea ecx, [edx - 1]
mov edx, dword [esp + 0x64]
mov dword [esp + 0x4c], ecx
add edx, ecx
cmp ecx, 0x20
mov dword [esp + 0x64], edx
jae 0x100c01ff
mov ecx, edx
mov edx, dword [esp + 0x60]
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x4c]
add ebp, ecx
shl eax, cl
cmp ebp, edx
ja 0x100c02f6
mov ecx, edx
mov edx, eax
shr edx, cl
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x64], eax
inc ecx
shl eax, cl
add ebp, ecx
mov dword [esp + 0x60], edx
mov dword [esp + 0x4c], ebp
jmp 0x100c0384
mov ecx, edx
sub ebp, edx
shr eax, cl
mov edx, ebp
mov dword [esp + 0x64], edx
mov dword [esp + 0x60], eax
mov eax, dword [ebx + 0x14]
cmp eax, 0x400
jae 0x100c0343
mov ecx, dword [ebx + eax*4 + 0x1c]
inc eax
mov dword [ebx + 0x14], eax
mov eax, ecx
mov ebp, ecx
and eax, 0xff0000
shr ebp, 0x10
or eax, ebp
mov ebp, ecx
shl ebp, 0x10
and ecx, 0xff00
or ebp, ecx
shr eax, 8
shl ebp, 8
or eax, ebp
mov ebp, edx
mov dword [esp + 0x4c], ebp
jmp 0x100c0369
push ebx
call fcn.100bf3c0
add esp, 4
test eax, eax
je 0x100c26dc
mov ebp, dword [ebx + 0x18]
mov ecx, dword [esp + 0x64]
mov eax, dword [ebx + 0x101c]
add ebp, ecx
mov dword [esp + 0x4c], ebp
mov edx, ecx
mov ecx, 0x20
sub ecx, edx
mov edx, eax
shr edx, cl
mov ecx, dword [esp + 0x60]
or edx, ecx
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x60], edx
shl eax, cl
mov ecx, dword [esp + 0x54]
mov edx, 0x20
inc ecx
mov dword [ebx + 0x101c], eax
sub edx, ecx
mov dword [ebx + 0x18], ebp
mov dword [esp + 0x2c], edx
mov edx, eax
test eax, eax
mov dword [esp + 0x64], eax
jne 0x100c03ae
mov eax, 0x20
jmp 0x100c03fa
mov ecx, eax
shr ecx, 0x1c
mov ecx, dword [ecx*4 + 0x10112ef4]
test ecx, ecx
jne 0x100c03f7
test eax, 0xffff0000
jne 0x100c03cf
mov ecx, 0x10
shl eax, 0x10
jmp 0x100c03d3
mov eax, dword [esp + 0x64]
test eax, 0xff000000
jne 0x100c03e0
add ecx, 8
shl eax, 8
test eax, 0xf0000000
jne 0x100c03ed
add ecx, 4
shl eax, 4
shr eax, 0x1c
add ecx, dword [eax*4 + 0x10112ef4]
lea eax, [ecx - 1]
cmp eax, 0x20
jae 0x100c0408
mov dword [esp + 0x20], eax
jmp 0x100c04e2
mov ecx, dword [esp + 0x4c]
mov eax, 0x20
sub eax, ecx
mov dword [esp + 0x64], eax
mov ecx, dword [ebx + 0x14]
cmp ecx, 0x400
jae 0x100c0451
mov eax, dword [ebx + ecx*4 + 0x1c]
inc ecx
mov dword [ebx + 0x14], ecx
mov edx, eax
mov ecx, eax
and edx, 0xff0000
shr ecx, 0x10
or edx, ecx
mov ecx, eax
shl ecx, 0x10
and eax, 0xff00
or ecx, eax
shr edx, 8
shl ecx, 8
or edx, ecx
xor ebp, ebp
jmp 0x100c046b
push ebx
call fcn.100bf3c0
add esp, 4
test eax, eax
je 0x100c26dc
mov edx, dword [ebx + 0x101c]
mov ebp, dword [ebx + 0x18]
test edx, edx
mov eax, edx
jne 0x100c0478
mov eax, 0x20
jmp 0x100c04c1
mov ecx, edx
shr ecx, 0x1c
mov ecx, dword [ecx*4 + 0x10112ef4]
test ecx, ecx
jne 0x100c04be
test edx, 0xffff0000
jne 0x100c049a
mov eax, edx
mov ecx, 0x10
shl eax, 0x10
test eax, 0xff000000
jne 0x100c04a7
add ecx, 8
shl eax, 8
test eax, 0xf0000000
jne 0x100c04b4
add ecx, 4
shl eax, 4
shr eax, 0x1c
add ecx, dword [eax*4 + 0x10112ef4]
lea eax, [ecx - 1]
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x4c], eax
add ecx, eax
cmp eax, 0x20
mov dword [esp + 0x64], ecx
jae 0x100c0417
mov eax, ecx
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x4c]
mov ecx, eax
add ebp, eax
shl edx, cl
mov ecx, dword [esp + 0x2c]
cmp ebp, ecx
ja 0x100c050a
mov eax, edx
shr eax, cl
mov ecx, dword [esp + 0x54]
inc ecx
shl edx, cl
add ebp, ecx
mov dword [esp + 0x64], eax
mov dword [esp + 0x28], ebp
jmp 0x100c0591
shr edx, cl
sub ebp, ecx
mov ecx, dword [ebx + 0x14]
cmp ecx, 0x400
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x64], edx
jae 0x100c054e
mov eax, dword [ebx + ecx*4 + 0x1c]
inc ecx
mov dword [ebx + 0x14], ecx
mov edx, eax
mov ecx, eax
and edx, 0xff0000
shr ecx, 0x10
or edx, ecx
mov ecx, eax
shl ecx, 0x10
and eax, 0xff00
or ecx, eax
shr edx, 8
shl ecx, 8
or edx, ecx
jmp 0x100c056e
push ebx
call fcn.100bf3c0
add esp, 4
test eax, eax
je 0x100c26dc
mov ebp, dword [ebx + 0x18]
mov eax, dword [esp + 0x4c]
mov edx, dword [ebx + 0x101c]
add ebp, eax
mov eax, dword [esp + 0x4c]
mov ecx, 0x20
sub ecx, eax
mov eax, edx
shr eax, cl
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x28], ebp
or eax, ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x64], eax
shl edx, cl
mov eax, dword [esp + 0x54]
mov ecx, 0x20
inc eax
mov dword [ebx + 0x101c], edx
sub ecx, eax
mov dword [ebx + 0x18], ebp
test edx, edx
mov dword [esp + 0x14], ecx
mov eax, edx
mov dword [esp + 0x4c], edx
jne 0x100c05bb
mov ecx, 0x20
jmp 0x100c0608
mov ecx, edx
shr ecx, 0x1c
mov ecx, dword [ecx*4 + 0x10112ef4]
test ecx, ecx
jne 0x100c0607
test edx, 0xffff0000
jne 0x100c05dd
mov ecx, 0x10
shl edx, 0x10
jmp 0x100c05e1
mov edx, dword [esp + 0x4c]
test edx, 0xff000000
jne 0x100c05ef
add ecx, 8
shl edx, 8
test edx, 0xf0000000
jne 0x100c05fd
add ecx, 4
shl edx, 4
shr edx, 0x1c
add ecx, dword [edx*4 + 0x10112ef4]
dec ecx
cmp ecx, 0x20
jae 0x100c0616
mov dword [esp + 0x24], ecx
jmp 0x100c06f0
mov ecx, dword [esp + 0x28]
mov eax, 0x20
sub eax, ecx
mov dword [esp + 0x4c], eax
mov eax, dword [ebx + 0x14]
cmp eax, 0x400
jae 0x100c065e
mov ecx, dword [ebx + eax*4 + 0x1c]
inc eax
mov dword [ebx + 0x14], eax
mov eax, ecx
mov edx, ecx
and eax, 0xff0000
shr edx, 0x10
or eax, edx
mov edx, ecx
shl edx, 0x10
and ecx, 0xff00
or edx, ecx
shr eax, 8
shl edx, 8
or eax, edx
xor ebp, ebp
jmp 0x100c0678
push ebx
call fcn.100bf3c0
add esp, 4
test eax, eax
je 0x100c26dc
mov eax, dword [ebx + 0x101c]
mov ebp, dword [ebx + 0x18]
test eax, eax
mov ecx, eax
jne 0x100c0685
mov ecx, 0x20
jmp 0x100c06cf
mov edx, eax
shr edx, 0x1c
mov edx, dword [edx*4 + 0x10112ef4]
test edx, edx
jne 0x100c06cc
test eax, 0xffff0000
jne 0x100c06a6
mov ecx, eax
mov edx, 0x10
shl ecx, 0x10
test ecx, 0xff000000
jne 0x100c06b4
add edx, 8
shl ecx, 8
test ecx, 0xf0000000
jne 0x100c06c2
add edx, 4
shl ecx, 4
shr ecx, 0x1c
add edx, dword [ecx*4 + 0x10112ef4]
lea ecx, [edx - 1]
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x2c], ecx
add edx, ecx
cmp ecx, 0x20
mov dword [esp + 0x4c], edx
jae 0x100c0625
mov ecx, edx
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x2c]
shl eax, cl
add ebp, ecx
mov ecx, dword [esp + 0x14]
cmp ebp, ecx
ja 0x100c0718
mov edx, eax
shr edx, cl
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0x54]
lea ecx, [edx + 1]
shl eax, cl
add ebp, ecx
mov dword [esp + 0x28], ebp
jmp 0x100c07a4
shr eax, cl
sub ebp, ecx
mov edx, ebp
mov dword [esp + 0x4c], edx
mov dword [esp + 0x2c], eax
mov eax, dword [ebx + 0x14]
cmp eax, 0x400
jae 0x100c0763
mov ecx, dword [ebx + eax*4 + 0x1c]
inc eax
mov dword [ebx + 0x14], eax
mov eax, ecx
mov ebp, ecx
and eax, 0xff0000
shr ebp, 0x10
or eax, ebp
mov ebp, ecx
shl ebp, 0x10
and ecx, 0xff00
or ebp, ecx
shr eax, 8
shl ebp, 8
or eax, ebp
mov ebp, edx
mov dword [esp + 0x28], ebp
jmp 0x100c0789
push ebx
call fcn.100bf3c0
add esp, 4
test eax, eax
je 0x100c26dc
mov ebp, dword [ebx + 0x18]
mov ecx, dword [esp + 0x4c]
mov eax, dword [ebx + 0x101c]
add ebp, ecx
mov dword [esp + 0x28], ebp
mov edx, ecx
mov ecx, 0x20
sub ecx, edx
mov edx, eax
shr edx, cl
mov ecx, dword [esp + 0x2c]
or edx, ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x14], edx
shl eax, cl
mov ecx, dword [esp + 0x54]
mov edx, 0x20
inc ecx
mov dword [ebx + 0x101c], eax
sub edx, ecx
mov dword [ebx + 0x18], ebp
mov dword [esp + 0x10], edx
mov edx, eax
test eax, eax
mov dword [esp + 0x4c], eax
jne 0x100c07ce
mov eax, 0x20
jmp 0x100c081a
mov ecx, eax
shr ecx, 0x1c
mov ecx, dword [ecx*4 + 0x10112ef4]
test ecx, ecx
jne 0x100c0817
test eax, 0xffff0000
jne 0x100c07ef
mov ecx, 0x10
shl eax, 0x10
jmp 0x100c07f3
mov eax, dword [esp + 0x4c]
test eax, 0xff000000
jne 0x100c0800
add ecx, 8
shl eax, 8
test eax, 0xf0000000
jne 0x100c080d
add ecx, 4
shl eax, 4
shr eax, 0x1c
add ecx, dword [eax*4 + 0x10112ef4]
lea eax, [ecx - 1]
cmp eax, 0x20
jae 0x100c0828
mov dword [esp + 0x28], eax
jmp 0x100c0902
mov ecx, dword [esp + 0x28]
mov eax, 0x20
sub eax, ecx
mov dword [esp + 0x4c], eax
mov ecx, dword [ebx + 0x14]
cmp ecx, 0x400
jae 0x100c0871
mov eax, dword [ebx + ecx*4 + 0x1c]
inc ecx
mov dword [ebx + 0x14], ecx
mov edx, eax
mov ecx, eax
and edx, 0xff0000
shr ecx, 0x10
or edx, ecx
mov ecx, eax
shl ecx, 0x10
and eax, 0xff00
or ecx, eax
shr edx, 8
shl ecx, 8
or edx, ecx
xor ebp, ebp
jmp 0x100c088b
push ebx
call fcn.100bf3c0
add esp, 4
test eax, eax
je 0x100c26dc
mov edx, dword [ebx + 0x101c]
mov ebp, dword [ebx + 0x18]
test edx, edx
mov eax, edx
jne 0x100c0898
mov eax, 0x20
jmp 0x100c08e1
mov ecx, edx
shr ecx, 0x1c
mov ecx, dword [ecx*4 + 0x10112ef4]
test ecx, ecx
jne 0x100c08de
test edx, 0xffff0000
jne 0x100c08ba
mov eax, edx
mov ecx, 0x10
shl eax, 0x10
test eax, 0xff000000
jne 0x100c08c7
add ecx, 8
shl eax, 8
test eax, 0xf0000000
jne 0x100c08d4
add ecx, 4
shl eax, 4
shr eax, 0x1c
add ecx, dword [eax*4 + 0x10112ef4]
lea eax, [ecx - 1]
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x2c], eax
add ecx, eax
cmp eax, 0x20
mov dword [esp + 0x4c], ecx
jae 0x100c0837
mov eax, ecx
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x2c]
mov ecx, eax
add ebp, eax
shl edx, cl
mov ecx, dword [esp + 0x10]
cmp ebp, ecx
ja 0x100c0926
mov eax, edx
shr eax, cl
mov ecx, dword [esp + 0x54]
inc ecx
shl edx, cl
mov dword [esp + 0x4c], eax
add ebp, ecx
jmp 0x100c09aa
shr edx, cl
sub ebp, ecx
mov eax, ebp
mov dword [esp + 0x10], eax
mov dword [esp + 0x4c], edx
mov edx, dword [ebx + 0x14]
cmp edx, 0x400
jae 0x100c096f
mov ecx, dword [ebx + edx*4 + 0x1c]
inc edx
mov dword [ebx + 0x14], edx
mov edx, ecx
mov ebp, ecx
and edx, 0xff0000
shr ebp, 0x10
or edx, ebp
mov ebp, ecx
shl ebp, 0x10
and ecx, 0xff00
or ebp, ecx
shr edx, 8
shl ebp, 8
or edx, ebp
mov ebp, eax
jmp 0x100c098f
push ebx
call fcn.100bf3c0
add esp, 4
test eax, eax
je 0x100c26dc
mov ebp, dword [ebx + 0x18]
mov eax, dword [esp + 0x10]
mov edx, dword [ebx + 0x101c]
add ebp, eax
mov ecx, 0x20
sub ecx, eax
mov eax, edx
shr eax, cl
mov ecx, dword [esp + 0x4c]
or eax, ecx
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x4c], eax
shl edx, cl
mov ecx, dword [esp + 0x54]
mov eax, dword [esp + 0x1c]
mov dword [ebx + 0x101c], edx
mov edx, dword [esp + 0x18]
shl eax, cl
mov ecx, dword [esp + 0x60]
mov dword [ebx + 0x18], ebp
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x64]
and edx, ecx
mov ecx, dword [esp + 0x54]
or eax, edx
mov edx, dword [esp + 0x20]
shl edx, cl
and ebx, ebp
mov ebp, dword [esp + 0x18]
and ebp, dword [esp + 0x14]
or edx, ebx
mov ebx, dword [esp + 0x24]
shl ebx, cl
or ebx, ebp
mov ebp, dword [esp + 0x28]
shl ebp, cl
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x64], ebp
mov ebp, dword [esp + 0x18]
and ebp, ecx
mov ecx, dword [esp + 0x64]
or ecx, ebp
mov ebp, eax
and ebp, 1
shr eax, 1
mov ebp, dword [esp + ebp*4 + 0x3c]
xor ebp, eax
mov eax, edx
and eax, 1
mov dword [esp + 0x60], ebp
shr edx, 1
mov eax, dword [esp + eax*4 + 0x3c]
xor eax, edx
mov edx, ebx
and edx, 1
mov dword [esp + 0x64], eax
shr ebx, 1
mov eax, dword [esp + edx*4 + 0x3c]
xor eax, ebx
mov dword [esp + 0x14], eax
mov eax, ecx
and eax, 1
shr ecx, 1
mov eax, dword [esp + eax*4 + 0x3c]
xor eax, ecx
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x58]
cmp eax, 8
jne 0x100c0aaa
mov eax, dword [edi + 0x1c]
imul dword [esi - 0x20]
mov ebx, eax
mov ebp, edx
mov eax, dword [edi + 0x18]
imul dword [esi - 0x1c]
add ebx, eax
mov eax, dword [edi + 0x14]
adc ebp, edx
imul dword [esi - 0x18]
add ebx, eax
adc ebp, edx
mov eax, dword [edi + 0x10]
imul dword [esi - 0x14]
add ebx, eax
adc ebp, edx
mov eax, dword [edi + 0xc]
imul dword [esi - 0x10]
add ebx, eax
adc ebp, edx
mov eax, dword [edi + 8]
imul dword [esi - 0xc]
add ebx, eax
adc ebp, edx
mov eax, dword [edi + 4]
imul dword [esi - 8]
add ebx, eax
mov eax, dword [esi - 4]
adc ebp, edx
imul dword [edi]
add ebx, eax
adc ebp, edx
jmp 0x100c0c66
cmp eax, 7
jne 0x100c0af9
mov eax, dword [edi + 0x18]
imul dword [esi - 0x1c]
mov ebx, eax
mov eax, dword [edi + 0x14]
mov ebp, edx
imul dword [esi - 0x18]
add ebx, eax
mov eax, dword [edi + 0x10]
adc ebp, edx
imul dword [esi - 0x14]
add ebx, eax
mov eax, dword [edi + 0xc]
adc ebp, edx
imul dword [esi - 0x10]
add ebx, eax
mov eax, dword [edi + 8]
adc ebp, edx
imul dword [esi - 0xc]
add ebx, eax
mov eax, dword [edi + 4]
adc ebp, edx
imul dword [esi - 8]
add ebx, eax
mov eax, dword [esi - 4]
adc ebp, edx
imul dword [edi]
add ebx, eax
adc ebp, edx
jmp 0x100c0c66
cmp eax, 3
jne 0x100c0b0a
mov eax, dword [edi + 8]
imul dword [esi - 0xc]
mov ebx, eax
mov ebp, edx
jmp 0x100c0a92
cmp eax, 6
jne 0x100c0b1e
mov eax, dword [edi + 0x14]
imul dword [esi - 0x18]
mov ebx, eax
mov ebp, edx
jmp 0x100c0a74
cmp eax, 5
jne 0x100c0b32
mov eax, dword [edi + 0x10]
imul dword [esi - 0x14]
mov ebx, eax
mov ebp, edx
jmp 0x100c0a7e
cmp eax, 4
jne 0x100c0b46
mov eax, dword [edi + 0xc]
imul dword [esi - 0x10]
mov ebx, eax
mov ebp, edx
jmp 0x100c0a88
cmp eax, 0xc
jne 0x100c0b82
mov eax, dword [edi + 0x2c]
imul dword [esi - 0x30]
mov ebx, eax
mov eax, dword [edi + 0x28]
mov ebp, edx
imul dword [esi - 0x2c]
add ebx, eax
mov eax, dword [edi + 0x24]
adc ebp, edx
imul dword [esi - 0x28]
add ebx, eax
mov eax, dword [edi + 0x20]
adc ebp, edx
imul dword [esi - 0x24]
add ebx, eax
mov eax, dword [edi + 0x1c]
adc ebp, edx
imul dword [esi - 0x20]
add ebx, eax
adc ebp, edx
jmp 0x100c0a60
cmp eax, 2
jne 0x100c0b9f
mov eax, dword [edi + 4]
imul dword [esi - 8]
mov ebx, eax
mov eax, dword [esi - 4]
mov ebp, edx
imul dword [edi]
add ebx, eax
adc ebp, edx
jmp 0x100c0c66
cmp eax, 1
jne 0x100c0bb2
mov eax, dword [esi - 4]
imul dword [edi]
mov ebx, eax
mov ebp, edx
jmp 0x100c0c66
cmp eax, 0xa
jne 0x100c0bda
mov eax, dword [edi + 0x24]
imul dword [esi - 0x28]
mov ebx, eax
mov eax, dword [edi + 0x20]
mov ebp, edx
imul dword [esi - 0x24]
add ebx, eax
mov eax, dword [edi + 0x1c]
adc ebp, edx
imul dword [esi - 0x20]
add ebx, eax
adc ebp, edx
jmp 0x100c0a60
cmp eax, 9
jne 0x100c0bf8
mov eax, dword [edi + 0x20]
imul dword [esi - 0x24]
mov ebx, eax
mov eax, dword [edi + 0x1c]
mov ebp, edx
imul dword [esi - 0x20]
add ebx, eax
adc ebp, edx
jmp 0x100c0a60
cmp eax, 0xb
jne 0x100c0c2a
mov eax, dword [edi + 0x28]
imul dword [esi - 0x2c]
mov ebx, eax
mov eax, dword [edi + 0x24]
mov ebp, edx
imul dword [esi - 0x28]
add ebx, eax
mov eax, dword [edi + 0x20]
adc ebp, edx
imul dword [esi - 0x24]
add ebx, eax
mov eax, dword [edi + 0x1c]
adc ebp, edx
imul dword [esi - 0x20]
add ebx, eax
adc ebp, edx
jmp 0x100c0a60
mov eax, dword [esp + 0x58]
xor ebx, ebx
xor ebp, ebp
test eax, eax
jle 0x100c0c66
mov dword [esp + 0x28], edi
lea ecx, [esi - 4]
mov dword [esp + 0x2c], eax
mov edx, dword [esp + 0x28]
mov eax, dword [ecx]
imul dword [edx]
add ebx, eax
mov eax, dword [esp + 0x2c]
adc ebp, edx
mov edx, dword [esp + 0x28]
sub ecx, 4
add edx, 4
dec eax
mov dword [esp + 0x28], edx
mov dword [esp + 0x2c], eax
jne 0x100c0c41
mov ecx, dword [esp + 0x5c]
mov eax, ebx
mov edx, ebp
call fcn.100e0db0
add eax, dword [esp + 0x60]
mov dword [esi], eax
mov eax, dword [esp + 0x58]
cmp eax, 8
jne 0x100c0cd5
mov eax, dword [esi - 0x1c]
imul dword [edi + 0x1c]
mov ebx, eax
mov ebp, edx
mov eax, dword [esi - 0x18]
imul dword [edi + 0x18]
add ebx, eax
mov eax, dword [esi - 0x14]
adc ebp, edx
imul dword [edi + 0x14]
add ebx, eax
adc ebp, edx
mov eax, dword [esi - 0x10]
imul dword [edi + 0x10]
add ebx, eax
adc ebp, edx
mov eax, dword [esi - 0xc]
imul dword [edi + 0xc]
add ebx, eax
adc ebp, edx
mov eax, dword [esi - 8]
imul dword [edi + 8]
add ebx, eax
adc ebp, edx
mov eax, dword [esi - 4]
imul dword [edi + 4]
add ebx, eax
mov eax, dword [esi]
adc ebp, edx
imul dword [edi]
add ebx, eax
adc ebp, edx
jmp 0x100c0e91
mov eax, dword [esp + 0x58]
cmp eax, 7
jne 0x100c0d27
mov eax, dword [esi - 0x18]
imul dword [edi + 0x18]
mov ebx, eax
mov eax, dword [esi - 0x14]
mov ebp, edx
imul dword [edi + 0x14]
add ebx, eax
mov eax, dword [esi - 0x10]
adc ebp, edx
imul dword [edi + 0x10]
add ebx, eax
mov eax, dword [esi - 0xc]
adc ebp, edx
imul dword [edi + 0xc]
add ebx, eax
mov eax, dword [esi - 8]
adc ebp, edx
imul dword [edi + 8]
add ebx, eax
mov eax, dword [esi - 4]
adc ebp, edx
imul dword [edi + 4]
add ebx, eax
mov eax, dword [esi]
adc ebp, edx
imul dword [edi]
add ebx, eax
adc ebp, edx
jmp 0x100c0e91
cmp eax, 3
jne 0x100c0d38
mov eax, dword [esi - 8]
imul dword [edi + 8]
mov ebx, eax
mov ebp, edx
jmp 0x100c0cbe
cmp eax, 6
jne 0x100c0d4c
mov eax, dword [esi - 0x14]
imul dword [edi + 0x14]
mov ebx, eax
mov ebp, edx
jmp 0x100c0ca0
cmp eax, 5
jne 0x100c0d60
mov eax, dword [esi - 0x10]
imul dword [edi + 0x10]
mov ebx, eax
mov ebp, edx
jmp 0x100c0caa
cmp eax, 4
jne 0x100c0d74
mov eax, dword [esi - 0xc]
imul dword [edi + 0xc]
mov ebx, eax
mov ebp, edx
jmp 0x100c0cb4
cmp eax, 0xc
jne 0x100c0db0
mov eax, dword [esi - 0x2c]
imul dword [edi + 0x2c]
mov ebx, eax
mov eax, dword [esi - 0x28]
mov ebp, edx
imul dword [edi + 0x28]
add ebx, eax
mov eax, dword [esi - 0x24]
adc ebp, edx
imul dword [edi + 0x24]
add ebx, eax
mov eax, dword [esi - 0x20]
adc ebp, edx
imul dword [edi + 0x20]
add ebx, eax
mov eax, dword [esi - 0x1c]
adc ebp, edx
imul dword [edi + 0x1c]
add ebx, eax
adc ebp, edx
jmp 0x100c0c8c
cmp eax, 2
jne 0x100c0dcc
mov eax, dword [esi - 4]
imul dword [edi + 4]
mov ebx, eax
mov eax, dword [esi]
mov ebp, edx
imul dword [edi]
add ebx, eax
adc ebp, edx
jmp 0x100c0e91
cmp eax, 1
jne 0x100c0dde
mov eax, dword [esi]
imul dword [edi]
mov ebx, eax
mov ebp, edx
jmp 0x100c0e91
cmp eax, 0xa
jne 0x100c0e06
mov eax, dword [esi - 0x24]
imul dword [edi + 0x24]
mov ebx, eax
mov eax, dword [esi - 0x20]
mov ebp, edx
imul dword [edi + 0x20]
add ebx, eax
mov eax, dword [esi - 0x1c]
adc ebp, edx
imul dword [edi + 0x1c]
add ebx, eax
adc ebp, edx
jmp 0x100c0c8c
cmp eax, 9
jne 0x100c0e24
mov eax, dword [esi - 0x20]
imul dword [edi + 0x20]
mov ebx, eax
mov eax, dword [esi - 0x1c]
mov ebp, edx
imul dword [edi + 0x1c]
add ebx, eax
adc ebp, edx
jmp 0x100c0c8c
cmp eax, 0xb
jne 0x100c0e56
mov eax, dword [esi - 0x28]
imul dword [edi + 0x28]
mov ebx, eax
mov eax, dword [esi - 0x24]
mov ebp, edx
imul dword [edi + 0x24]
add ebx, eax
mov eax, dword [esi - 0x20]
adc ebp, edx
imul dword [edi + 0x20]
add ebx, eax
mov eax, dword [esi - 0x1c]
adc ebp, edx
imul dword [edi + 0x1c]
add ebx, eax
adc ebp, edx
jmp 0x100c0c8c
mov eax, dword [esp + 0x58]
xor ebx, ebx
xor ebp, ebp
test eax, eax
jle 0x100c0e91
mov dword [esp + 0x60], edi
lea ecx, [esi]
mov dword [esp + 0x2c], eax
mov edx, dword [esp + 0x60]
mov eax, dword [ecx]
imul dword [edx]
add ebx, eax
mov eax, dword [esp + 0x2c]
adc ebp, edx
mov edx, dword [esp + 0x60]
sub ecx, 4
add edx, 4
dec eax
mov dword [esp + 0x60], edx
mov dword [esp + 0x2c], eax
jne 0x100c0e6c
mov ecx, dword [esp + 0x5c]
mov eax, ebx
mov edx, ebp
call fcn.100e0db0
add eax, dword [esp + 0x64]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x58]
cmp eax, 8
jne 0x100c0f01
mov eax, dword [esi - 0x18]
imul dword [edi + 0x1c]
mov ebx, eax
mov ebp, edx
mov eax, dword [esi - 0x14]
imul dword [edi + 0x18]
add ebx, eax
mov eax, dword [esi - 0x10]
adc ebp, edx
imul dword [edi + 0x14]
add ebx, eax
adc ebp, edx
mov eax, dword [esi - 0xc]
imul dword [edi + 0x10]
add ebx, eax
adc ebp, edx
mov eax, dword [esi - 8]
imul dword [edi + 0xc]
add ebx, eax
adc ebp, edx
mov eax, dword [esi - 4]
imul dword [edi + 8]
add ebx, eax
adc ebp, edx
mov eax, dword [esi]
imul dword [edi + 4]
add ebx, eax
mov eax, dword [esi + 4]
adc ebp, edx
imul dword [edi]
add ebx, eax
adc ebp, edx
jmp 0x100c10bf
mov eax, dword [esp + 0x58]
cmp eax, 7
jne 0x100c0f53
mov eax, dword [esi - 0x14]
imul dword [edi + 0x18]
mov ebx, eax
mov eax, dword [esi - 0x10]
mov ebp, edx
imul dword [edi + 0x14]
add ebx, eax
mov eax, dword [esi - 0xc]
adc ebp, edx
imul dword [edi + 0x10]
add ebx, eax
mov eax, dword [esi - 8]
adc ebp, edx
imul dword [edi + 0xc]
add ebx, eax
mov eax, dword [esi - 4]
adc ebp, edx
imul dword [edi + 8]
add ebx, eax
mov eax, dword [esi]
adc ebp, edx
imul dword [edi + 4]
add ebx, eax
mov eax, dword [esi + 4]
adc ebp, edx
imul dword [edi]
add ebx, eax
adc ebp, edx
jmp 0x100c10bf
cmp eax, 3
jne 0x100c0f64
mov eax, dword [esi - 4]
imul dword [edi + 8]
mov ebx, eax
mov ebp, edx
jmp 0x100c0eea
cmp eax, 6
jne 0x100c0f78
mov eax, dword [esi - 0x10]
imul dword [edi + 0x14]
mov ebx, eax
mov ebp, edx
jmp 0x100c0ecc
cmp eax, 5
jne 0x100c0f8c
mov eax, dword [esi - 0xc]
imul dword [edi + 0x10]
mov ebx, eax
mov ebp, edx
jmp 0x100c0ed6
cmp eax, 4
jne 0x100c0fa0
mov eax, dword [esi - 8]
imul dword [edi + 0xc]
mov ebx, eax
mov ebp, edx
jmp 0x100c0ee0
cmp eax, 0xc
jne 0x100c0fdc
mov eax, dword [esi - 0x28]
imul dword [edi + 0x2c]
mov ebx, eax
mov eax, dword [esi - 0x24]
mov ebp, edx
imul dword [edi + 0x28]
add ebx, eax
mov eax, dword [esi - 0x20]
adc ebp, edx
imul dword [edi + 0x24]
add ebx, eax
mov eax, dword [esi - 0x1c]
adc ebp, edx
imul dword [edi + 0x20]
add ebx, eax
mov eax, dword [esi - 0x18]
adc ebp, edx
imul dword [edi + 0x1c]
add ebx, eax
adc ebp, edx
jmp 0x100c0eb8
cmp eax, 2
jne 0x100c0ff8
mov eax, dword [esi]
imul dword [edi + 4]
mov ebx, eax
mov eax, dword [esi + 4]
mov ebp, edx
imul dword [edi]
add ebx, eax
adc ebp, edx
jmp 0x100c10bf
cmp eax, 1
jne 0x100c100b
mov eax, dword [esi + 4]
imul dword [edi]
mov ebx, eax
mov ebp, edx
jmp 0x100c10bf
cmp eax, 0xa
jne 0x100c1033
mov eax, dword [esi - 0x20]
imul dword [edi + 0x24]
mov ebx, eax
mov eax, dword [esi - 0x1c]
mov ebp, edx
imul dword [edi + 0x20]
add ebx, eax
mov eax, dword [esi - 0x18]
adc ebp, edx
imul dword [edi + 0x1c]
add ebx, eax
adc ebp, edx
jmp 0x100c0eb8
cmp eax, 9
jne 0x100c1051
mov eax, dword [esi - 0x1c]
imul dword [edi + 0x20]
mov ebx, eax
mov eax, dword [esi - 0x18]
mov ebp, edx
imul dword [edi + 0x1c]
add ebx, eax
adc ebp, edx
jmp 0x100c0eb8
cmp eax, 0xb
jne 0x100c1083
mov eax, dword [esi - 0x24]
imul dword [edi + 0x28]
mov ebx, eax
mov eax, dword [esi - 0x20]
mov ebp, edx
imul dword [edi + 0x24]
add ebx, eax
mov eax, dword [esi - 0x1c]
adc ebp, edx
imul dword [edi + 0x20]
add ebx, eax
mov eax, dword [esi - 0x18]
adc ebp, edx
imul dword [edi + 0x1c]
add ebx, eax
adc ebp, edx
jmp 0x100c0eb8
mov eax, dword [esp + 0x58]
xor ebx, ebx
xor ebp, ebp
test eax, eax
jle 0x100c10bf
mov dword [esp + 0x64], edi
lea ecx, [esi + 4]
mov dword [esp + 0x60], eax
mov edx, dword [esp + 0x64]
mov eax, dword [ecx]
imul dword [edx]
add ebx, eax
mov eax, dword [esp + 0x60]
adc ebp, edx
mov edx, dword [esp + 0x64]
sub ecx, 4
add edx, 4
dec eax
mov dword [esp + 0x64], edx
mov dword [esp + 0x60], eax
jne 0x100c109a
mov ecx, dword [esp + 0x5c]
mov eax, ebx
mov edx, ebp
call fcn.100e0db0
add eax, dword [esp + 0x14]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x58]
cmp eax, 8
jne 0x100c112f
mov eax, dword [esi - 0x14]
imul dword [edi + 0x1c]
mov ebx, eax
mov ebp, edx
mov eax, dword [esi - 0x10]
imul dword [edi + 0x18]
add ebx, eax
mov eax, dword [esi - 0xc]
adc ebp, edx
imul dword [edi + 0x14]
add ebx, eax
adc ebp, edx
mov eax, dword [esi - 8]
imul dword [edi + 0x10]
add ebx, eax
adc ebp, edx
mov eax, dword [esi - 4]
imul dword [edi + 0xc]
add ebx, eax
adc ebp, edx
mov eax, dword [esi]
imul dword [edi + 8]
add ebx, eax
adc ebp, edx
mov eax, dword [esi + 4]
imul dword [edi + 4]
add ebx, eax
mov eax, dword [esi + 8]
adc ebp, edx
imul dword [edi]
add ebx, eax
adc ebp, edx
jmp 0x100c12ed
mov eax, dword [esp + 0x58]
cmp eax, 7
jne 0x100c1181
mov eax, dword [esi - 0x10]
imul dword [edi + 0x18]
mov ebx, eax
mov eax, dword [esi - 0xc]
mov ebp, edx
imul dword [edi + 0x14]
add ebx, eax
mov eax, dword [esi - 8]
adc ebp, edx
imul dword [edi + 0x10]
add ebx, eax
mov eax, dword [esi - 4]
adc ebp, edx
imul dword [edi + 0xc]
add ebx, eax
mov eax, dword [esi]
adc ebp, edx
imul dword [edi + 8]
add ebx, eax
mov eax, dword [esi + 4]
adc ebp, edx
imul dword [edi + 4]
add ebx, eax
mov eax, dword [esi + 8]
adc ebp, edx
imul dword [edi]
add ebx, eax
adc ebp, edx
jmp 0x100c12ed
cmp eax, 3
jne 0x100c1191
mov eax, dword [esi]
imul dword [edi + 8]
mov ebx, eax
mov ebp, edx
jmp 0x100c1117
cmp eax, 6
jne 0x100c11a5
mov eax, dword [esi - 0xc]
imul dword [edi + 0x14]
mov ebx, eax
mov ebp, edx
jmp 0x100c10fa
cmp eax, 5
jne 0x100c11b9
mov eax, dword [esi - 8]
imul dword [edi + 0x10]
mov ebx, eax
mov ebp, edx
jmp 0x100c1104
cmp eax, 4
jne 0x100c11cd
mov eax, dword [esi - 4]
imul dword [edi + 0xc]
mov ebx, eax
mov ebp, edx
jmp 0x100c110e
cmp eax, 0xc
jne 0x100c1209
mov eax, dword [esi - 0x24]
imul dword [edi + 0x2c]
mov ebx, eax
mov eax, dword [esi - 0x20]
mov ebp, edx
imul dword [edi + 0x28]
add ebx, eax
mov eax, dword [esi - 0x1c]
adc ebp, edx
imul dword [edi + 0x24]
add ebx, eax
mov eax, dword [esi - 0x18]
adc ebp, edx
imul dword [edi + 0x20]
add ebx, eax
mov eax, dword [esi - 0x14]
adc ebp, edx
imul dword [edi + 0x1c]
add ebx, eax
adc ebp, edx
jmp 0x100c10e6
cmp eax, 2
jne 0x100c1226
mov eax, dword [esi + 4]
imul dword [edi + 4]
mov ebx, eax
mov eax, dword [esi + 8]
mov ebp, edx
imul dword [edi]
add ebx, eax
adc ebp, edx
jmp 0x100c12ed
cmp eax, 1
jne 0x100c1239
mov eax, dword [esi + 8]
imul dword [edi]
mov ebx, eax
mov ebp, edx
jmp 0x100c12ed
cmp eax, 0xa
jne 0x100c1261
mov eax, dword [esi - 0x1c]
imul dword [edi + 0x24]
mov ebx, eax
mov eax, dword [esi - 0x18]
mov ebp, edx
imul dword [edi + 0x20]
add ebx, eax
mov eax, dword [esi - 0x14]
adc ebp, edx
imul dword [edi + 0x1c]
add ebx, eax
adc ebp, edx
jmp 0x100c10e6
cmp eax, 9
jne 0x100c127f
mov eax, dword [esi - 0x18]
imul dword [edi + 0x20]
mov ebx, eax
mov eax, dword [esi - 0x14]
mov ebp, edx
imul dword [edi + 0x1c]
add ebx, eax
adc ebp, edx
jmp 0x100c10e6
cmp eax, 0xb
jne 0x100c12b1
mov eax, dword [esi - 0x20]
imul dword [edi + 0x28]
mov ebx, eax
mov eax, dword [esi - 0x1c]
mov ebp, edx
imul dword [edi + 0x24]
add ebx, eax
mov eax, dword [esi - 0x18]
adc ebp, edx
imul dword [edi + 0x20]
add ebx, eax
mov eax, dword [esi - 0x14]
adc ebp, edx
imul dword [edi + 0x1c]
add ebx, eax
adc ebp, edx
jmp 0x100c10e6
mov eax, dword [esp + 0x58]
xor ebx, ebx
xor ebp, ebp
test eax, eax
jle 0x100c12ed
mov dword [esp + 0x64], edi
lea ecx, [esi + 8]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x64]
mov eax, dword [eax]
imul dword [ecx]
add ebx, eax
mov eax, dword [esp + 0x60]
adc ebp, edx
mov edx, dword [esp + 0x64]
sub ecx, 4
add edx, 4
dec eax
mov dword [esp + 0x64], edx
mov dword [esp + 0x60], eax
jne 0x100c12c8
mov ecx, dword [esp + 0x5c]
mov eax, ebx
mov edx, ebp
call fcn.100e0db0
mov edx, dword [esp + 0x4c]
add esi, 0x10
add eax, edx
mov dword [esi - 4], eax
mov eax, dword [esp + 0x30]
cmp esi, eax
jae 0x100c2115
jmp 0x100c015e
cmp esi, ecx
jae 0x100c2115
mov ecx, dword [esp + 0x54]
inc ecx
mov dword [esp + 0x10], ecx
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x48]
mov edx, 0x20
mov ebp, dword [ebx + 0x18]
sub edx, eax
mov eax, dword [ebx + 0x101c]
mov dword [esp + 0x4c], edx
test eax, eax
mov ecx, eax
jne 0x100c1351
mov ecx, 0x20
jmp 0x100c13bb
mov edx, eax
shr edx, 0x1c
mov edx, dword [edx*4 + 0x10112ef4]
test edx, edx
mov dword [esp + 0x64], edx
jne 0x100c13b2
test eax, 0xffff0000
jne 0x100c137a
mov edx, 0x10
mov ecx, eax
mov dword [esp + 0x64], edx
shl ecx, 0x10
test ecx, 0xff000000
jne 0x100c138c
add edx, 8
mov dword [esp + 0x64], edx
shl ecx, 8
test ecx, 0xf0000000
jne 0x100c139e
add edx, 4
mov dword [esp + 0x64], edx
shl ecx, 4
mov edx, dword [esp + 0x64]
shr ecx, 0x1c
mov ecx, dword [ecx*4 + 0x10112ef4]
add edx, ecx
mov dword [esp + 0x64], edx
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x4c]
dec ecx
cmp ecx, 0x20
mov dword [esp + 0x64], ecx
mov dword [esp + 0x60], ecx
jae 0x100c13d1
mov dword [esp + 0x1c], ecx
jmp 0x100c14a7
mov eax, 0x20
sub eax, ebp
mov dword [esp + 0x64], eax
mov eax, dword [ebx + 0x14]
cmp eax, 0x400
jae 0x100c1415
mov ecx, dword [ebx + eax*4 + 0x1c]
inc eax
mov dword [ebx + 0x14], eax
mov eax, ecx
mov edx, ecx
and eax, 0xff0000
shr edx, 0x10
or eax, edx
mov edx, ecx
shl edx, 0x10
and ecx, 0xff00
or edx, ecx
shr eax, 8
shl edx, 8
or eax, edx
xor ebp, ebp
jmp 0x100c142f
push ebx
call fcn.100bf3c0
add esp, 4
test eax, eax
je 0x100c26dc
mov eax, dword [ebx + 0x101c]
mov ebp, dword [ebx + 0x18]
test eax, eax
mov ecx, eax
jne 0x100c143c
mov ecx, 0x20
jmp 0x100c1486
mov edx, eax
shr edx, 0x1c
mov edx, dword [edx*4 + 0x10112ef4]
test edx, edx
jne 0x100c1483
test eax, 0xffff0000
jne 0x100c145d
mov ecx, eax
mov edx, 0x10
shl ecx, 0x10
test ecx, 0xff000000
jne 0x100c146b
add edx, 8
shl ecx, 8
test ecx, 0xf0000000
jne 0x100c1479
add edx, 4
shl ecx, 4
shr ecx, 0x1c
add edx, dword [ecx*4 + 0x10112ef4]
lea ecx, [edx - 1]
mov edx, dword [esp + 0x64]
mov dword [esp + 0x60], ecx
add edx, ecx
cmp ecx, 0x20
mov dword [esp + 0x64], edx
jae 0x100c13dc
mov ecx, edx
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x60]
add ebp, ecx
shl eax, cl
cmp ebp, edx
ja 0x100c14d2
mov ecx, edx
mov edx, eax
shr edx, cl
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x64], eax
shl eax, cl
add ebp, ecx
mov dword [esp + 0x60], edx
mov dword [esp + 0x4c], ebp
jmp 0x100c1560
mov ecx, edx
sub ebp, edx
shr eax, cl
mov edx, ebp
mov dword [esp + 0x64], edx
mov dword [esp + 0x60], eax
mov eax, dword [ebx + 0x14]
cmp eax, 0x400
jae 0x100c151f
mov ecx, dword [ebx + eax*4 + 0x1c]
inc eax
mov dword [ebx + 0x14], eax
mov eax, ecx
mov ebp, ecx
and eax, 0xff0000
shr ebp, 0x10
or eax, ebp
mov ebp, ecx
shl ebp, 0x10
and ecx, 0xff00
or ebp, ecx
shr eax, 8
shl ebp, 8
or eax, ebp
mov ebp, edx
mov dword [esp + 0x4c], ebp
jmp 0x100c1545
push ebx
call fcn.100bf3c0
add esp, 4
test eax, eax
je 0x100c26dc
mov ebp, dword [ebx + 0x18]
mov ecx, dword [esp + 0x64]
mov eax, dword [ebx + 0x101c]
add ebp, ecx
mov dword [esp + 0x4c], ebp
mov edx, ecx
mov ecx, 0x20
sub ecx, edx
mov edx, eax
shr edx, cl
mov ecx, dword [esp + 0x60]
or edx, ecx
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x60], edx
shl eax, cl
mov edx, dword [esp + 0x10]
mov ecx, 0x20
sub ecx, edx
mov dword [ebx + 0x101c], eax
test eax, eax
mov dword [ebx + 0x18], ebp
mov dword [esp + 0x2c], ecx
mov edx, eax
mov dword [esp + 0x64], eax
jne 0x100c1589
mov eax, 0x20
jmp 0x100c15d5
mov ecx, eax
shr ecx, 0x1c
mov ecx, dword [ecx*4 + 0x10112ef4]
test ecx, ecx
jne 0x100c15d2
test eax, 0xffff0000
jne 0x100c15aa
mov ecx, 0x10
shl eax, 0x10
jmp 0x100c15ae
mov eax, dword [esp + 0x64]
test eax, 0xff000000
jne 0x100c15bb
add ecx, 8
shl eax, 8
test eax, 0xf0000000
jne 0x100c15c8
add ecx, 4
shl eax, 4
shr eax, 0x1c
add ecx, dword [eax*4 + 0x10112ef4]
lea eax, [ecx - 1]
cmp eax, 0x20
jae 0x100c15e3
mov dword [esp + 0x20], eax
jmp 0x100c16bd
mov ecx, dword [esp + 0x4c]
mov eax, 0x20
sub eax, ecx
mov dword [esp + 0x64], eax
mov ecx, dword [ebx + 0x14]
cmp ecx, 0x400
jae 0x100c162c
mov eax, dword [ebx + ecx*4 + 0x1c]
inc ecx
mov dword [ebx + 0x14], ecx
mov edx, eax
mov ecx, eax
and edx, 0xff0000
shr ecx, 0x10
or edx, ecx
mov ecx, eax
shl ecx, 0x10
and eax, 0xff00
or ecx, eax
shr edx, 8
shl ecx, 8
or edx, ecx
xor ebp, ebp
jmp 0x100c1646
push ebx
call fcn.100bf3c0
add esp, 4
test eax, eax
je 0x100c26dc
mov edx, dword [ebx + 0x101c]
mov ebp, dword [ebx + 0x18]
test edx, edx
mov eax, edx
jne 0x100c1653
mov eax, 0x20
jmp 0x100c169c
mov ecx, edx
shr ecx, 0x1c
mov ecx, dword [ecx*4 + 0x10112ef4]
test ecx, ecx
jne 0x100c1699
test edx, 0xffff0000
jne 0x100c1675
mov eax, edx
mov ecx, 0x10
shl eax, 0x10
test eax, 0xff000000
jne 0x100c1682
add ecx, 8
shl eax, 8
test eax, 0xf0000000
jne 0x100c168f
add ecx, 4
shl eax, 4
shr eax, 0x1c
add ecx, dword [eax*4 + 0x10112ef4]
lea eax, [ecx - 1]
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x4c], eax
add ecx, eax
cmp eax, 0x20
mov dword [esp + 0x64], ecx
jae 0x100c15f2
mov eax, ecx
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x4c]
mov ecx, eax
add ebp, eax
shl edx, cl
mov ecx, dword [esp + 0x2c]
cmp ebp, ecx
ja 0x100c16e4
mov eax, edx
shr eax, cl
mov ecx, dword [esp + 0x10]
shl edx, cl
add ebp, ecx
mov dword [esp + 0x64], eax
mov dword [esp + 0x28], ebp
jmp 0x100c176b
shr edx, cl
sub ebp, ecx
mov ecx, dword [ebx + 0x14]
cmp ecx, 0x400
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x64], edx
jae 0x100c1728
mov eax, dword [ebx + ecx*4 + 0x1c]
inc ecx
mov dword [ebx + 0x14], ecx
mov edx, eax
mov ecx, eax
and edx, 0xff0000
shr ecx, 0x10
or edx, ecx
mov ecx, eax
shl ecx, 0x10
and eax, 0xff00
or ecx, eax
shr edx, 8
shl ecx, 8
or edx, ecx
jmp 0x100c1748
push ebx
call fcn.100bf3c0
add esp, 4
test eax, eax
je 0x100c26dc
mov ebp, dword [ebx + 0x18]
mov eax, dword [esp + 0x4c]
mov edx, dword [ebx + 0x101c]
add ebp, eax
mov eax, dword [esp + 0x4c]
mov ecx, 0x20
sub ecx, eax
mov eax, edx
shr eax, cl
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x28], ebp
or eax, ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x64], eax
shl edx, cl
mov ecx, dword [esp + 0x10]
mov eax, 0x20
sub eax, ecx
mov dword [ebx + 0x101c], edx
mov dword [esp + 0x14], eax
mov dword [ebx + 0x18], ebp
test edx, edx
mov eax, edx
mov dword [esp + 0x4c], edx
jne 0x100c1794
mov ecx, 0x20
jmp 0x100c17e1
mov ecx, edx
shr ecx, 0x1c
mov ecx, dword [ecx*4 + 0x10112ef4]
test ecx, ecx
jne 0x100c17e0
test edx, 0xffff0000
jne 0x100c17b6
mov ecx, 0x10
shl edx, 0x10
jmp 0x100c17ba
mov edx, dword [esp + 0x4c]
test edx, 0xff000000
jne 0x100c17c8
add ecx, 8
shl edx, 8
test edx, 0xf0000000
jne 0x100c17d6
add ecx, 4
shl edx, 4
shr edx, 0x1c
add ecx, dword [edx*4 + 0x10112ef4]
dec ecx
cmp ecx, 0x20
jae 0x100c17ef
mov dword [esp + 0x24], ecx
jmp 0x100c18c9
mov ecx, dword [esp + 0x28]
mov eax, 0x20
sub eax, ecx
mov dword [esp + 0x4c], eax
mov eax, dword [ebx + 0x14]
cmp eax, 0x400
jae 0x100c1837
mov ecx, dword [ebx + eax*4 + 0x1c]
inc eax
mov dword [ebx + 0x14], eax
mov eax, ecx
mov edx, ecx
and eax, 0xff0000
shr edx, 0x10
or eax, edx
mov edx, ecx
shl edx, 0x10
and ecx, 0xff00
or edx, ecx
shr eax, 8
shl edx, 8
or eax, edx
xor ebp, ebp
jmp 0x100c1851
push ebx
call fcn.100bf3c0
add esp, 4
test eax, eax
je 0x100c26dc
mov eax, dword [ebx + 0x101c]
mov ebp, dword [ebx + 0x18]
test eax, eax
mov ecx, eax
jne 0x100c185e
mov ecx, 0x20
jmp 0x100c18a8
mov edx, eax
shr edx, 0x1c
mov edx, dword [edx*4 + 0x10112ef4]
test edx, edx
jne 0x100c18a5
test eax, 0xffff0000
jne 0x100c187f
mov ecx, eax
mov edx, 0x10
shl ecx, 0x10
test ecx, 0xff000000
jne 0x100c188d
add edx, 8
shl ecx, 8
test ecx, 0xf0000000
jne 0x100c189b
add edx, 4
shl ecx, 4
shr ecx, 0x1c
add edx, dword [ecx*4 + 0x10112ef4]
lea ecx, [edx - 1]
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x2c], ecx
add edx, ecx
cmp ecx, 0x20
mov dword [esp + 0x4c], edx
jae 0x100c17fe
mov ecx, edx
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x2c]
shl eax, cl
add ebp, ecx
mov ecx, dword [esp + 0x14]
cmp ebp, ecx
ja 0x100c18ee
mov edx, eax
shr edx, cl
mov ecx, dword [esp + 0x10]
shl eax, cl
add ebp, ecx
mov dword [esp + 0x14], edx
mov dword [esp + 0x28], ebp
jmp 0x100c197a
shr eax, cl
sub ebp, ecx
mov edx, ebp
mov dword [esp + 0x4c], edx
mov dword [esp + 0x2c], eax
mov eax, dword [ebx + 0x14]
cmp eax, 0x400
jae 0x100c1939
mov ecx, dword [ebx + eax*4 + 0x1c]
inc eax
mov dword [ebx + 0x14], eax
mov eax, ecx
mov ebp, ecx
and eax, 0xff0000
shr ebp, 0x10
or eax, ebp
mov ebp, ecx
shl ebp, 0x10
and ecx, 0xff00
or ebp, ecx
shr eax, 8
shl ebp, 8
or eax, ebp
mov ebp, edx
mov dword [esp + 0x28], ebp
jmp 0x100c195f
push ebx
call fcn.100bf3c0
add esp, 4
test eax, eax
je 0x100c26dc
mov ebp, dword [ebx + 0x18]
mov ecx, dword [esp + 0x4c]
mov eax, dword [ebx + 0x101c]
add ebp, ecx
mov dword [esp + 0x28], ebp
mov edx, ecx
mov ecx, 0x20
sub ecx, edx
mov edx, eax
shr edx, cl
mov ecx, dword [esp + 0x2c]
or edx, ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x14], edx
shl eax, cl
mov edx, dword [esp + 0x10]
mov ecx, 0x20
sub ecx, edx
mov dword [ebx + 0x101c], eax
test eax, eax
mov dword [ebx + 0x18], ebp
mov dword [esp + 0x34], ecx
mov edx, eax
mov dword [esp + 0x4c], eax
jne 0x100c19a3
mov eax, 0x20
jmp 0x100c19ef
mov ecx, eax
shr ecx, 0x1c
mov ecx, dword [ecx*4 + 0x10112ef4]
test ecx, ecx
jne 0x100c19ec
test eax, 0xffff0000
jne 0x100c19c4
mov ecx, 0x10
shl eax, 0x10
jmp 0x100c19c8
mov eax, dword [esp + 0x4c]
test eax, 0xff000000
jne 0x100c19d5
add ecx, 8
shl eax, 8
test eax, 0xf0000000
jne 0x100c19e2
add ecx, 4
shl eax, 4
shr eax, 0x1c
add ecx, dword [eax*4 + 0x10112ef4]
lea eax, [ecx - 1]
cmp eax, 0x20
jae 0x100c19fd
mov dword [esp + 0x28], eax
jmp 0x100c1ad7
mov ecx, dword [esp + 0x28]
mov eax, 0x20
sub eax, ecx
mov dword [esp + 0x4c], eax
mov ecx, dword [ebx + 0x14]
cmp ecx, 0x400
jae 0x100c1a46
mov eax, dword [ebx + ecx*4 + 0x1c]
inc ecx
mov dword [ebx + 0x14], ecx
mov edx, eax
mov ecx, eax
and edx, 0xff0000
shr ecx, 0x10
or edx, ecx
mov ecx, eax
shl ecx, 0x10
and eax, 0xff00
or ecx, eax
shr edx, 8
shl ecx, 8
or edx, ecx
xor ebp, ebp
jmp 0x100c1a60
push ebx
call fcn.100bf3c0
add esp, 4
test eax, eax
je 0x100c26dc
mov edx, dword [ebx + 0x101c]
mov ebp, dword [ebx + 0x18]
test edx, edx
mov eax, edx
jne 0x100c1a6d
mov eax, 0x20
jmp 0x100c1ab6
mov ecx, edx
shr ecx, 0x1c
mov ecx, dword [ecx*4 + 0x10112ef4]
test ecx, ecx
jne 0x100c1ab3
test edx, 0xffff0000
jne 0x100c1a8f
mov eax, edx
mov ecx, 0x10
shl eax, 0x10
test eax, 0xff000000
jne 0x100c1a9c
add ecx, 8
shl eax, 8
test eax, 0xf0000000
jne 0x100c1aa9
add ecx, 4
shl eax, 4
shr eax, 0x1c
add ecx, dword [eax*4 + 0x10112ef4]
lea eax, [ecx - 1]
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x2c], eax
add ecx, eax
cmp eax, 0x20
mov dword [esp + 0x4c], ecx
jae 0x100c1a0c
mov eax, ecx
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x2c]
mov ecx, eax
add ebp, eax
shl edx, cl
mov ecx, dword [esp + 0x34]
cmp ebp, ecx
ja 0x100c1afa
mov eax, edx
shr eax, cl
mov ecx, dword [esp + 0x10]
shl edx, cl
add ebp, ecx
mov dword [esp + 0x4c], eax
jmp 0x100c1b7e
shr edx, cl
sub ebp, ecx
mov eax, ebp
mov dword [esp + 0x2c], eax
mov dword [esp + 0x4c], edx
mov edx, dword [ebx + 0x14]
cmp edx, 0x400
jae 0x100c1b43
mov ecx, dword [ebx + edx*4 + 0x1c]
inc edx
mov dword [ebx + 0x14], edx
mov edx, ecx
mov ebp, ecx
and edx, 0xff0000
shr ebp, 0x10
or edx, ebp
mov ebp, ecx
shl ebp, 0x10
and ecx, 0xff00
or ebp, ecx
shr edx, 8
shl ebp, 8
or edx, ebp
mov ebp, eax
jmp 0x100c1b63
push ebx
call fcn.100bf3c0
add esp, 4
test eax, eax
je 0x100c26dc
mov ebp, dword [ebx + 0x18]
mov eax, dword [esp + 0x2c]
mov edx, dword [ebx + 0x101c]
add ebp, eax
mov ecx, 0x20
sub ecx, eax
mov eax, edx
shr eax, cl
mov ecx, dword [esp + 0x4c]
or eax, ecx
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x4c], eax
shl edx, cl
mov ecx, dword [esp + 0x54]
mov eax, dword [esp + 0x1c]
mov dword [ebx + 0x101c], edx
mov dword [ebx + 0x18], ebp
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x60]
mov edx, dword [esp + 0x20]
shl eax, cl
mov ecx, ebx
and ecx, ebp
mov ebp, ebx
and ebp, dword [esp + 0x64]
or eax, ecx
mov ecx, dword [esp + 0x54]
shl edx, cl
or edx, ebp
mov ebp, dword [esp + 0x24]
shl ebp, cl
mov ecx, dword [esp + 0x14]
and ebx, ecx
mov ecx, dword [esp + 0x54]
or ebp, ebx
mov ebx, ebp
mov ebp, dword [esp + 0x28]
shl ebp, cl
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x64], ebp
mov ebp, dword [esp + 0x18]
and ebp, ecx
mov ecx, dword [esp + 0x64]
or ecx, ebp
mov ebp, eax
and ebp, 1
shr eax, 1
mov ebp, dword [esp + ebp*4 + 0x3c]
xor ebp, eax
mov eax, edx
and eax, 1
shr edx, 1
mov eax, dword [esp + eax*4 + 0x3c]
xor eax, edx
mov edx, ebx
mov dword [esp + 0x64], eax
mov eax, ecx
and eax, 1
and edx, 1
shr ecx, 1
mov eax, dword [esp + eax*4 + 0x3c]
mov edx, dword [esp + edx*4 + 0x3c]
xor eax, ecx
mov ecx, dword [esp + 0x58]
shr ebx, 1
xor edx, ebx
mov dword [esp + 0x4c], eax
lea ebx, [ecx - 1]
xor eax, eax
cmp ebx, 0x1f
ja case.default.0x100c1c2d
jmp dword [ebx*4 + 0x100c26f4]
mov eax, dword [edi + 0x7c]
imul eax, dword [esi - 0x80]
mov ecx, dword [edi + 0x78]
imul ecx, dword [esi - 0x7c]
add eax, ecx
mov ecx, dword [edi + 0x74]
imul ecx, dword [esi - 0x78]
add eax, ecx
mov ecx, dword [edi + 0x70]
imul ecx, dword [esi - 0x74]
add eax, ecx
mov ecx, dword [edi + 0x6c]
imul ecx, dword [esi - 0x70]
add eax, ecx
mov ecx, dword [edi + 0x68]
imul ecx, dword [esi - 0x6c]
add eax, ecx
mov ecx, dword [edi + 0x64]
imul ecx, dword [esi - 0x68]
add eax, ecx
mov ecx, dword [edi + 0x60]
imul ecx, dword [esi - 0x64]
add eax, ecx
mov ecx, dword [edi + 0x5c]
imul ecx, dword [esi - 0x60]
add eax, ecx
mov ecx, dword [edi + 0x58]
imul ecx, dword [esi - 0x5c]
add eax, ecx
mov ecx, dword [edi + 0x54]
imul ecx, dword [esi - 0x58]
add eax, ecx
mov ecx, dword [edi + 0x50]
imul ecx, dword [esi - 0x54]
add eax, ecx
mov ecx, dword [edi + 0x4c]
imul ecx, dword [esi - 0x50]
add eax, ecx
mov ecx, dword [edi + 0x48]
imul ecx, dword [esi - 0x4c]
add eax, ecx
mov ecx, dword [edi + 0x44]
imul ecx, dword [esi - 0x48]
add eax, ecx
mov ecx, dword [edi + 0x40]
imul ecx, dword [esi - 0x44]
add eax, ecx
mov ecx, dword [edi + 0x3c]
imul ecx, dword [esi - 0x40]
add eax, ecx
mov ecx, dword [edi + 0x38]
imul ecx, dword [esi - 0x3c]
add eax, ecx
mov ecx, dword [edi + 0x34]
imul ecx, dword [esi - 0x38]
add eax, ecx
mov ecx, dword [edi + 0x30]
imul ecx, dword [esi - 0x34]
add eax, ecx
mov ecx, dword [edi + 0x2c]
imul ecx, dword [esi - 0x30]
add eax, ecx
mov ecx, dword [edi + 0x28]
imul ecx, dword [esi - 0x2c]
add eax, ecx
mov ecx, dword [edi + 0x24]
imul ecx, dword [esi - 0x28]
add eax, ecx
mov ecx, dword [edi + 0x20]
imul ecx, dword [esi - 0x24]
add eax, ecx
mov ecx, dword [edi + 0x1c]
imul ecx, dword [esi - 0x20]
add eax, ecx
mov ecx, dword [edi + 0x18]
imul ecx, dword [esi - 0x1c]
add eax, ecx
mov ecx, dword [edi + 0x14]
imul ecx, dword [esi - 0x18]
add eax, ecx
mov ecx, dword [edi + 0x10]
imul ecx, dword [esi - 0x14]
add eax, ecx
mov ecx, dword [edi + 0xc]
imul ecx, dword [esi - 0x10]
add eax, ecx
mov ecx, dword [edi + 8]
imul ecx, dword [esi - 0xc]
add eax, ecx
mov ecx, dword [edi + 4]
imul ecx, dword [esi - 8]
add eax, ecx
mov ecx, dword [esi - 4]
imul ecx, dword [edi]
add eax, ecx
mov ecx, dword [esp + 0x5c]
sar eax, cl
add eax, ebp
mov dword [esi], eax
xor eax, eax
cmp ebx, 0x1f
ja case.default.0x100c1d66
jmp dword [ebx*4 + 0x100c2774]
mov eax, dword [esi - 0x7c]
imul eax, dword [edi + 0x7c]
mov ecx, dword [esi - 0x78]
imul ecx, dword [edi + 0x78]
add eax, ecx
mov ecx, dword [esi - 0x74]
imul ecx, dword [edi + 0x74]
add eax, ecx
mov ecx, dword [esi - 0x70]
imul ecx, dword [edi + 0x70]
add eax, ecx
mov ecx, dword [esi - 0x6c]
imul ecx, dword [edi + 0x6c]
add eax, ecx
mov ecx, dword [esi - 0x68]
imul ecx, dword [edi + 0x68]
add eax, ecx
mov ecx, dword [esi - 0x64]
imul ecx, dword [edi + 0x64]
add eax, ecx
mov ecx, dword [esi - 0x60]
imul ecx, dword [edi + 0x60]
add eax, ecx
mov ecx, dword [esi - 0x5c]
imul ecx, dword [edi + 0x5c]
add eax, ecx
mov ecx, dword [esi - 0x58]
imul ecx, dword [edi + 0x58]
add eax, ecx
mov ecx, dword [esi - 0x54]
imul ecx, dword [edi + 0x54]
add eax, ecx
mov ecx, dword [esi - 0x50]
imul ecx, dword [edi + 0x50]
add eax, ecx
mov ecx, dword [esi - 0x4c]
imul ecx, dword [edi + 0x4c]
add eax, ecx
mov ecx, dword [esi - 0x48]
imul ecx, dword [edi + 0x48]
add eax, ecx
mov ecx, dword [esi - 0x44]
imul ecx, dword [edi + 0x44]
add eax, ecx
mov ecx, dword [esi - 0x40]
imul ecx, dword [edi + 0x40]
add eax, ecx
mov ecx, dword [esi - 0x3c]
imul ecx, dword [edi + 0x3c]
add eax, ecx
mov ecx, dword [esi - 0x38]
imul ecx, dword [edi + 0x38]
add eax, ecx
mov ecx, dword [esi - 0x34]
imul ecx, dword [edi + 0x34]
add eax, ecx
mov ecx, dword [esi - 0x30]
imul ecx, dword [edi + 0x30]
add eax, ecx
mov ecx, dword [esi - 0x2c]
imul ecx, dword [edi + 0x2c]
add eax, ecx
mov ecx, dword [esi - 0x28]
imul ecx, dword [edi + 0x28]
add eax, ecx
mov ecx, dword [esi - 0x24]
imul ecx, dword [edi + 0x24]
add eax, ecx
mov ecx, dword [esi - 0x20]
imul ecx, dword [edi + 0x20]
add eax, ecx
mov ecx, dword [esi - 0x1c]
imul ecx, dword [edi + 0x1c]
add eax, ecx
mov ecx, dword [esi - 0x18]
imul ecx, dword [edi + 0x18]
add eax, ecx
mov ecx, dword [esi - 0x14]
imul ecx, dword [edi + 0x14]
add eax, ecx
mov ecx, dword [esi - 0x10]
imul ecx, dword [edi + 0x10]
add eax, ecx
mov ecx, dword [esi - 0xc]
imul ecx, dword [edi + 0xc]
add eax, ecx
mov ecx, dword [esi - 8]
imul ecx, dword [edi + 8]
add eax, ecx
mov ecx, dword [esi - 4]
imul ecx, dword [edi + 4]
add eax, ecx
mov ecx, dword [esi]
imul ecx, dword [edi]
add eax, ecx
mov ecx, dword [esp + 0x5c]
mov ebp, dword [esp + 0x64]
sar eax, cl
add eax, ebp
mov dword [esi + 4], eax
xor eax, eax
cmp ebx, 0x1f
ja case.default.0x100c1ea3
jmp dword [ebx*4 + 0x100c27f4]
mov eax, dword [esi - 0x78]
imul eax, dword [edi + 0x7c]
mov ebp, dword [esi - 0x74]
imul ebp, dword [edi + 0x78]
add eax, ebp
mov ebp, dword [esi - 0x70]
imul ebp, dword [edi + 0x74]
add eax, ebp
mov ebp, dword [esi - 0x6c]
imul ebp, dword [edi + 0x70]
add eax, ebp
mov ebp, dword [esi - 0x68]
imul ebp, dword [edi + 0x6c]
add eax, ebp
mov ebp, dword [esi - 0x64]
imul ebp, dword [edi + 0x68]
add eax, ebp
mov ebp, dword [esi - 0x60]
imul ebp, dword [edi + 0x64]
add eax, ebp
mov ebp, dword [esi - 0x5c]
imul ebp, dword [edi + 0x60]
add eax, ebp
mov ebp, dword [esi - 0x58]
imul ebp, dword [edi + 0x5c]
add eax, ebp
mov ebp, dword [esi - 0x54]
imul ebp, dword [edi + 0x58]
add eax, ebp
mov ebp, dword [esi - 0x50]
imul ebp, dword [edi + 0x54]
add eax, ebp
mov ebp, dword [esi - 0x4c]
imul ebp, dword [edi + 0x50]
add eax, ebp
mov ebp, dword [esi - 0x48]
imul ebp, dword [edi + 0x4c]
add eax, ebp
mov ebp, dword [esi - 0x44]
imul ebp, dword [edi + 0x48]
add eax, ebp
mov ebp, dword [esi - 0x40]
imul ebp, dword [edi + 0x44]
add eax, ebp
mov ebp, dword [esi - 0x3c]
imul ebp, dword [edi + 0x40]
add eax, ebp
mov ebp, dword [esi - 0x38]
imul ebp, dword [edi + 0x3c]
add eax, ebp
mov ebp, dword [esi - 0x34]
imul ebp, dword [edi + 0x38]
add eax, ebp
mov ebp, dword [esi - 0x30]
imul ebp, dword [edi + 0x34]
add eax, ebp
mov ebp, dword [esi - 0x2c]
imul ebp, dword [edi + 0x30]
add eax, ebp
mov ebp, dword [esi - 0x28]
imul ebp, dword [edi + 0x2c]
add eax, ebp
mov ebp, dword [esi - 0x24]
imul ebp, dword [edi + 0x28]
add eax, ebp
mov ebp, dword [esi - 0x20]
imul ebp, dword [edi + 0x24]
add eax, ebp
mov ebp, dword [esi - 0x1c]
imul ebp, dword [edi + 0x20]
add eax, ebp
mov ebp, dword [esi - 0x18]
imul ebp, dword [edi + 0x1c]
add eax, ebp
mov ebp, dword [esi - 0x14]
imul ebp, dword [edi + 0x18]
add eax, ebp
mov ebp, dword [esi - 0x10]
imul ebp, dword [edi + 0x14]
add eax, ebp
mov ebp, dword [esi - 0xc]
imul ebp, dword [edi + 0x10]
add eax, ebp
mov ebp, dword [esi - 8]
imul ebp, dword [edi + 0xc]
add eax, ebp
mov ebp, dword [esi - 4]
imul ebp, dword [edi + 8]
add eax, ebp
mov ebp, dword [esi]
imul ebp, dword [edi + 4]
add eax, ebp
mov ebp, dword [esi + 4]
imul ebp, dword [edi]
add eax, ebp
sar eax, cl
add eax, edx
mov dword [esi + 8], eax
xor eax, eax
cmp ebx, 0x1f
ja case.default.0x100c1fd8
jmp dword [ebx*4 + 0x100c2874]
mov eax, dword [esi - 0x74]
imul eax, dword [edi + 0x7c]
mov edx, dword [esi - 0x70]
imul edx, dword [edi + 0x78]
add eax, edx
mov edx, dword [esi - 0x6c]
imul edx, dword [edi + 0x74]
add eax, edx
mov edx, dword [esi - 0x68]
imul edx, dword [edi + 0x70]
add eax, edx
mov edx, dword [esi - 0x64]
imul edx, dword [edi + 0x6c]
add eax, edx
mov edx, dword [esi - 0x60]
imul edx, dword [edi + 0x68]
add eax, edx
mov edx, dword [esi - 0x5c]
imul edx, dword [edi + 0x64]
add eax, edx
mov edx, dword [esi - 0x58]
imul edx, dword [edi + 0x60]
add eax, edx
mov edx, dword [esi - 0x54]
imul edx, dword [edi + 0x5c]
add eax, edx
mov edx, dword [esi - 0x50]
imul edx, dword [edi + 0x58]
add eax, edx
mov edx, dword [esi - 0x4c]
imul edx, dword [edi + 0x54]
add eax, edx
mov edx, dword [esi - 0x48]
imul edx, dword [edi + 0x50]
add eax, edx
mov edx, dword [esi - 0x44]
imul edx, dword [edi + 0x4c]
add eax, edx
mov edx, dword [esi - 0x40]
imul edx, dword [edi + 0x48]
add eax, edx
mov edx, dword [esi - 0x3c]
imul edx, dword [edi + 0x44]
add eax, edx
mov edx, dword [esi - 0x38]
imul edx, dword [edi + 0x40]
add eax, edx
mov edx, dword [esi - 0x34]
imul edx, dword [edi + 0x3c]
add eax, edx
mov edx, dword [esi - 0x30]
imul edx, dword [edi + 0x38]
add eax, edx
mov edx, dword [esi - 0x2c]
imul edx, dword [edi + 0x34]
add eax, edx
mov edx, dword [esi - 0x28]
imul edx, dword [edi + 0x30]
add eax, edx
mov edx, dword [esi - 0x24]
imul edx, dword [edi + 0x2c]
add eax, edx
mov edx, dword [esi - 0x20]
imul edx, dword [edi + 0x28]
add eax, edx
mov edx, dword [esi - 0x1c]
imul edx, dword [edi + 0x24]
add eax, edx
mov edx, dword [esi - 0x18]
imul edx, dword [edi + 0x20]
add eax, edx
mov edx, dword [esi - 0x14]
imul edx, dword [edi + 0x1c]
add eax, edx
mov edx, dword [esi - 0x10]
imul edx, dword [edi + 0x18]
add eax, edx
mov edx, dword [esi - 0xc]
imul edx, dword [edi + 0x14]
add eax, edx
mov edx, dword [esi - 8]
imul edx, dword [edi + 0x10]
add eax, edx
mov edx, dword [esi - 4]
imul edx, dword [edi + 0xc]
add eax, edx
mov edx, dword [esi]
imul edx, dword [edi + 8]
add eax, edx
mov edx, dword [esi + 4]
imul edx, dword [edi + 4]
add eax, edx
mov edx, dword [esi + 8]
imul edx, dword [edi]
add eax, edx
mov edx, dword [esp + 0x4c]
add esi, 0x10
sar eax, cl
add eax, edx
mov dword [esi - 4], eax
mov eax, dword [esp + 0x30]
cmp esi, eax
jb 0x100c1328
mov ecx, dword [esp + 0x50]
mov eax, ecx
and al, 0xfc
cmp eax, ecx
mov dword [esp + 0x2c], eax
jae 0x100c26e6
mov eax, dword [esp + 0x54]
mov ecx, 0x20
inc eax
sub ecx, eax
mov dword [esp + 0x64], ecx
mov ebx, dword [esp + 0x48]
mov eax, dword [ebx + 0x101c]
mov edx, dword [ebx + 0x18]
test eax, eax
mov ecx, eax
jne 0x100c2153
mov ebp, 0x20
jmp 0x100c219b
mov ebp, eax
shr ebp, 0x1c
mov ebp, dword [ebp*4 + 0x10112ef4]
test ebp, ebp
jne 0x100c219a
test eax, 0xffff0000
jne 0x100c2174
mov ecx, eax
mov ebp, 0x10
shl ecx, 0x10
test ecx, 0xff000000
jne 0x100c2182
add ebp, 8
shl ecx, 8
test ecx, 0xf0000000
jne 0x100c2190
add ebp, 4
shl ecx, 4
shr ecx, 0x1c
add ebp, dword [ecx*4 + 0x10112ef4]
dec ebp
cmp ebp, 0x20
mov dword [esp + 0x4c], ebp
jb 0x100c226c
mov ebp, 0x20
sub ebp, edx
mov eax, dword [ebx + 0x14]
cmp eax, 0x400
jae 0x100c21e8
mov ecx, dword [ebx + eax*4 + 0x1c]
inc eax
mov dword [ebx + 0x14], eax
mov eax, ecx
mov edx, ecx
and eax, 0xff0000
shr edx, 0x10
or eax, edx
mov edx, ecx
shl edx, 0x10
and ecx, 0xff00
or edx, ecx
shr eax, 8
shl edx, 8
or eax, edx
xor edx, edx
jmp 0x100c2202
push ebx
call fcn.100bf3c0
add esp, 4
test eax, eax
je 0x100c26dc
mov eax, dword [ebx + 0x101c]
mov edx, dword [ebx + 0x18]
test eax, eax
mov ecx, eax
jne 0x100c220f
mov ecx, 0x20
jmp 0x100c225d
mov ebx, eax
shr ebx, 0x1c
mov ebx, dword [ebx*4 + 0x10112ef4]
test ebx, ebx
jne 0x100c2256
test eax, 0xffff0000
jne 0x100c2230
mov ecx, eax
mov ebx, 0x10
shl ecx, 0x10
test ecx, 0xff000000
jne 0x100c223e
add ebx, 8
shl ecx, 8
test ecx, 0xf0000000
jne 0x100c224c
add ebx, 4
shl ecx, 4
shr ecx, 0x1c
add ebx, dword [ecx*4 + 0x10112ef4]
lea ecx, [ebx - 1]
mov ebx, dword [esp + 0x48]
add ebp, ecx
cmp ecx, 0x20
mov dword [esp + 0x4c], ecx
jae 0x100c21af
mov ecx, dword [esp + 0x4c]
shl eax, cl
add edx, ecx
mov ecx, dword [esp + 0x64]
cmp edx, ecx
ja 0x100c2293
mov ebx, eax
shr ebx, cl
mov ecx, dword [esp + 0x54]
inc ecx
shl eax, cl
mov ecx, dword [esp + 0x54]
inc ecx
add edx, ecx
jmp 0x100c231b
mov ecx, dword [esp + 0x64]
shr eax, cl
mov dword [esp + 0x60], eax
mov eax, ecx
sub edx, eax
mov eax, dword [ebx + 0x14]
cmp eax, 0x400
mov dword [esp + 0x4c], edx
jae 0x100c22e0
mov ecx, dword [ebx + eax*4 + 0x1c]
inc eax
mov dword [ebx + 0x14], eax
mov eax, ecx
mov edx, ecx
and eax, 0xff0000
shr edx, 0x10
or eax, edx
mov edx, ecx
shl edx, 0x10
and ecx, 0xff00
or edx, ecx
shr eax, 8
shl edx, 8
or eax, edx
mov edx, dword [esp + 0x4c]
jmp 0x100c2300
push ebx
call fcn.100bf3c0
add esp, 4
test eax, eax
je 0x100c26dc
mov edx, dword [ebx + 0x18]
mov ecx, dword [esp + 0x4c]
mov eax, dword [ebx + 0x101c]
add edx, ecx
mov ebx, dword [esp + 0x4c]
mov ecx, 0x20
sub ecx, ebx
mov ebx, eax
shr ebx, cl
mov ecx, dword [esp + 0x60]
or ebx, ecx
mov ecx, dword [esp + 0x4c]
shl eax, cl
mov ecx, dword [esp + 0x48]
mov dword [ecx + 0x101c], eax
mov eax, dword [esp + 0x18]
mov dword [ecx + 0x18], edx
mov ecx, dword [esp + 0x54]
shl ebp, cl
and eax, ebx
or ebp, eax
mov eax, ebp
mov ecx, eax
and ecx, 1
shr eax, 1
mov edx, dword [esp + ecx*4 + 0x3c]
xor edx, eax
mov eax, dword [esp + 0x38]
cmp eax, 0x20
mov dword [esp + 0x60], edx
jbe 0x100c2585
mov eax, dword [esp + 0x58]
cmp eax, 8
jne 0x100c23b3
mov eax, dword [edi + 0x1c]
imul dword [esi - 0x20]
mov ebx, eax
mov ebp, edx
mov eax, dword [edi + 0x18]
imul dword [esi - 0x1c]
add ebx, eax
mov eax, dword [edi + 0x14]
adc ebp, edx
imul dword [esi - 0x18]
add ebx, eax
adc ebp, edx
mov eax, dword [edi + 0x10]
imul dword [esi - 0x14]
add ebx, eax
adc ebp, edx
mov eax, dword [edi + 0xc]
imul dword [esi - 0x10]
add ebx, eax
adc ebp, edx
mov eax, dword [edi + 8]
imul dword [esi - 0xc]
add ebx, eax
adc ebp, edx
mov eax, dword [edi + 4]
imul dword [esi - 8]
add ebx, eax
mov eax, dword [esi - 4]
adc ebp, edx
imul dword [edi]
add ebx, eax
adc ebp, edx
jmp 0x100c256f
cmp eax, 7
jne 0x100c2402
mov eax, dword [edi + 0x18]
imul dword [esi - 0x1c]
mov ebx, eax
mov eax, dword [edi + 0x14]
mov ebp, edx
imul dword [esi - 0x18]
add ebx, eax
mov eax, dword [edi + 0x10]
adc ebp, edx
imul dword [esi - 0x14]
add ebx, eax
mov eax, dword [edi + 0xc]
adc ebp, edx
imul dword [esi - 0x10]
add ebx, eax
mov eax, dword [edi + 8]
adc ebp, edx
imul dword [esi - 0xc]
add ebx, eax
mov eax, dword [edi + 4]
adc ebp, edx
imul dword [esi - 8]
add ebx, eax
mov eax, dword [esi - 4]
adc ebp, edx
imul dword [edi]
add ebx, eax
adc ebp, edx
jmp 0x100c256f
cmp eax, 3
jne 0x100c2413
mov eax, dword [edi + 8]
imul dword [esi - 0xc]
mov ebx, eax
mov ebp, edx
jmp 0x100c239b
cmp eax, 6
jne 0x100c2427
mov eax, dword [edi + 0x14]
imul dword [esi - 0x18]
mov ebx, eax
mov ebp, edx
jmp 0x100c237d
cmp eax, 5
jne 0x100c243b
mov eax, dword [edi + 0x10]
imul dword [esi - 0x14]
mov ebx, eax
mov ebp, edx
jmp 0x100c2387
cmp eax, 4
jne 0x100c244f
mov eax, dword [edi + 0xc]
imul dword [esi - 0x10]
mov ebx, eax
mov ebp, edx
jmp 0x100c2391
cmp eax, 0xc
jne 0x100c248b
mov eax, dword [edi + 0x2c]
imul dword [esi - 0x30]
mov ebx, eax
mov eax, dword [edi + 0x28]
mov ebp, edx
imul dword [esi - 0x2c]
add ebx, eax
mov eax, dword [edi + 0x24]
adc ebp, edx
imul dword [esi - 0x28]
add ebx, eax
mov eax, dword [edi + 0x20]
adc ebp, edx
imul dword [esi - 0x24]
add ebx, eax
mov eax, dword [edi + 0x1c]
adc ebp, edx
imul dword [esi - 0x20]
add ebx, eax
adc ebp, edx
jmp 0x100c2369
cmp eax, 2
jne 0x100c24a8
mov eax, dword [edi + 4]
imul dword [esi - 8]
mov ebx, eax
mov eax, dword [esi - 4]
mov ebp, edx
imul dword [edi]
add ebx, eax
adc ebp, edx
jmp 0x100c256f
cmp eax, 1
jne 0x100c24bb
mov eax, dword [esi - 4]
imul dword [edi]
mov ebx, eax
mov ebp, edx
jmp 0x100c256f
cmp eax, 0xa
jne 0x100c24e3
mov eax, dword [edi + 0x24]
imul dword [esi - 0x28]
mov ebx, eax
mov eax, dword [edi + 0x20]
mov ebp, edx
imul dword [esi - 0x24]
add ebx, eax
mov eax, dword [edi + 0x1c]
adc ebp, edx
imul dword [esi - 0x20]
add ebx, eax
adc ebp, edx
jmp 0x100c2369
cmp eax, 9
jne 0x100c2501
mov eax, dword [edi + 0x20]
imul dword [esi - 0x24]
mov ebx, eax
mov eax, dword [edi + 0x1c]
mov ebp, edx
imul dword [esi - 0x20]
add ebx, eax
adc ebp, edx
jmp 0x100c2369
cmp eax, 0xb
jne 0x100c2533
mov eax, dword [edi + 0x28]
imul dword [esi - 0x2c]
mov ebx, eax
mov eax, dword [edi + 0x24]
mov ebp, edx
imul dword [esi - 0x28]
add ebx, eax
mov eax, dword [edi + 0x20]
adc ebp, edx
imul dword [esi - 0x24]
add ebx, eax
mov eax, dword [edi + 0x1c]
adc ebp, edx
imul dword [esi - 0x20]
add ebx, eax
adc ebp, edx
jmp 0x100c2369
mov eax, dword [esp + 0x58]
xor ebx, ebx
xor ebp, ebp
test eax, eax
jle 0x100c256f
mov dword [esp + 0x4c], edi
lea ecx, [esi - 4]
mov dword [esp + 0x30], eax
mov edx, dword [esp + 0x4c]
mov eax, dword [ecx]
imul dword [edx]
add ebx, eax
mov eax, dword [esp + 0x30]
adc ebp, edx
mov edx, dword [esp + 0x4c]
sub ecx, 4
add edx, 4
dec eax
mov dword [esp + 0x4c], edx
mov dword [esp + 0x30], eax
jne 0x100c254a
mov ecx, dword [esp + 0x5c]
mov eax, ebx
mov edx, ebp
call fcn.100e0db0
add eax, dword [esp + 0x60]
jmp 0x100c26c1
mov ecx, dword [esp + 0x58]
xor eax, eax
dec ecx
cmp ecx, 0x1f
ja case.default.0x100c2595
jmp dword [ecx*4 + 0x100c28f4]
mov eax, dword [edi + 0x7c]
imul eax, dword [esi - 0x80]
mov ecx, dword [edi + 0x78]
imul ecx, dword [esi - 0x7c]
add eax, ecx
mov ecx, dword [edi + 0x74]
imul ecx, dword [esi - 0x78]
add eax, ecx
mov ecx, dword [edi + 0x70]
imul ecx, dword [esi - 0x74]
add eax, ecx
mov ecx, dword [edi + 0x6c]
imul ecx, dword [esi - 0x70]
add eax, ecx
mov ecx, dword [edi + 0x68]
imul ecx, dword [esi - 0x6c]
add eax, ecx
mov ecx, dword [edi + 0x64]
imul ecx, dword [esi - 0x68]
add eax, ecx
mov ecx, dword [edi + 0x60]
imul ecx, dword [esi - 0x64]
add eax, ecx
mov ecx, dword [edi + 0x5c]
imul ecx, dword [esi - 0x60]
add eax, ecx
mov ecx, dword [edi + 0x58]
imul ecx, dword [esi - 0x5c]
add eax, ecx
mov ecx, dword [edi + 0x54]
imul ecx, dword [esi - 0x58]
add eax, ecx
mov ecx, dword [edi + 0x50]
imul ecx, dword [esi - 0x54]
add eax, ecx
mov ecx, dword [edi + 0x4c]
imul ecx, dword [esi - 0x50]
add eax, ecx
mov ecx, dword [edi + 0x48]
imul ecx, dword [esi - 0x4c]
add eax, ecx
mov ecx, dword [edi + 0x44]
imul ecx, dword [esi - 0x48]
add eax, ecx
mov ecx, dword [edi + 0x40]
imul ecx, dword [esi - 0x44]
add eax, ecx
mov ecx, dword [edi + 0x3c]
imul ecx, dword [esi - 0x40]
add eax, ecx
mov ecx, dword [edi + 0x38]
imul ecx, dword [esi - 0x3c]
add eax, ecx
mov ecx, dword [edi + 0x34]
imul ecx, dword [esi - 0x38]
add eax, ecx
mov ecx, dword [edi + 0x30]
imul ecx, dword [esi - 0x34]
add eax, ecx
mov ecx, dword [edi + 0x2c]
imul ecx, dword [esi - 0x30]
add eax, ecx
mov ecx, dword [edi + 0x28]
imul ecx, dword [esi - 0x2c]
add eax, ecx
mov ecx, dword [edi + 0x24]
imul ecx, dword [esi - 0x28]
add eax, ecx
mov ecx, dword [edi + 0x20]
imul ecx, dword [esi - 0x24]
add eax, ecx
mov ecx, dword [edi + 0x1c]
imul ecx, dword [esi - 0x20]
add eax, ecx
mov ecx, dword [edi + 0x18]
imul ecx, dword [esi - 0x1c]
add eax, ecx
mov ecx, dword [edi + 0x14]
imul ecx, dword [esi - 0x18]
add eax, ecx
mov ecx, dword [edi + 0x10]
imul ecx, dword [esi - 0x14]
add eax, ecx
mov ecx, dword [edi + 0xc]
imul ecx, dword [esi - 0x10]
add eax, ecx
mov ecx, dword [edi + 8]
imul ecx, dword [esi - 0xc]
add eax, ecx
mov ecx, dword [edi + 4]
imul ecx, dword [esi - 8]
add eax, ecx
mov ecx, dword [esi - 4]
imul ecx, dword [edi]
add eax, ecx
mov ecx, dword [esp + 0x5c]
sar eax, cl
add eax, edx
mov ecx, dword [esp + 0x50]
mov dword [esi], eax
mov eax, dword [esp + 0x2c]
add esi, 4
inc eax
cmp eax, ecx
mov dword [esp + 0x2c], eax
jae 0x100c26e6
jmp 0x100c2139
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x34
ret
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x34
ret