Function at 0x6ec4fa10
Capabilities:
Check for software breakpoints
Inspect section memory permissions

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x4c
mov ebp, dword [esp + 0x60]
mov ebx, dword [ebp + 0x1c]
mov edi, dword [ebx]
mov dword [ebx + 0x68], 0
mov dword [ebx + 0x1c], 0
mov dword [ebx + 0x20], 0
test edi, edi
je 0x6ec4fc43
mov eax, dword [ebx + 0x2c]
cmp dword [ebp], eax
jae 0x6ec4fc36
lea esi, [ebp + 0x1c]
mov dword [esp + 0x38], 0
mov dword [esp + 0x34], 0
mov dword [esp + 0x30], 0
mov dword [esp + 0x2c], esi
mov eax, dword [edi + 4]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec45e50
mov dword [esp + 4], edi
mov dword [esp], ebp
mov dword [esp + 8], eax
mov ebx, eax
call fcn.6ec46e10
cmp dword [edi + 4], 0x183
jbe 0x6ec4fa97
call fcn.6ec66950
mov eax, dword [edi + 4]
jmp dword [eax*4 + 0x6ec75738]
mov edx, dword [ebp + 0x1c]
imul eax, dword [edi + 0x20], 0x5c
add eax, dword [edx + 0x6c]
mov dword [edx + 0x68], eax
mov esi, dword [ebp]
mov dword [esp + 0x34], esi
mov esi, dword [edx + 0x60]
mov dword [esp + 0x38], esi
and byte [edx + 0xc], 0xef
mov eax, dword [ebp + 0x1c]
mov eax, dword [eax + 0x68]
movzx edx, byte [eax + 0x44]
test dl, 3
je 0x6ec4fae4
and edx, 2
mov ecx, dword [eax + 0x40]
mov dword [esp + 0x30], edi
jne case.0x6ec4fa9a.1
neg ecx
mov dword [eax + 0xc], ecx
test byte [eax + 0x4c], 1
je 0x6ec4faee
and dword [eax + 0xc], 0xfffffff0
mov edx, dword [eax + 0x10]
mov ecx, 4
sub edx, dword [eax + 0xc]
add edx, 0xf
and edx, 0xfffffff0
add edx, 0xc
mov dword [eax + 0x3c], edx
mov edx, 4
mov eax, ebp
mov dword [esp], 0x10
call fcn.6ec440a0
mov edx, dword [ebp + 0x1c]
mov eax, dword [edx + 0x68]
test byte [eax + 0x38], 0x20
jne 0x6ec5b7ac
mov eax, dword [edx + 0x68]
test byte [eax + 0x38], 0x10
jne 0x6ec5b78c
mov eax, dword [edx + 0x68]
test byte [eax + 0x38], 8
jne 0x6ec5b76f
xor edx, edx
mov ecx, 4
mov eax, ebp
mov dword [esp], 5
call fcn.6ec43f30
mov eax, dword [ebp]
mov ecx, 4
mov edx, 4
mov byte [eax], 0x89
mov byte [eax + 1], 0xe5
add eax, 2
mov dword [ebp], eax
mov eax, dword [ebp + 0x1c]
mov eax, dword [eax + 0x68]
mov eax, dword [eax + 0x3c]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec440a0
mov eax, dword [ebp + 0x1c]
mov dword [esp + 0x30], edi
mov eax, dword [eax + 0x68]
test byte [eax + 0x4c], 1
je case.0x6ec4fa9a.1
mov dword [esp + 4], 0x20000000
mov dword [esp], ebp
call fcn.6ec4a980
mov dword [esp + 0x30], eax
mov esi, eax
mov eax, dword [ebp + 0x1c]
and esi, 0x7fff
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax + 0x68]
and edx, 0x7fff
mov ecx, dword [eax + 0xc]
mov eax, ebp
call fcn.6ec436d0
mov eax, dword [ebp + 0x1c]
mov ecx, 5
mov eax, dword [eax + 0x68]
mov edx, dword [eax + 0x48]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec43f30
mov eax, dword [esp + 0x30]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
mov dword [esp + 0x30], edi
mov dword [esp + 4], edi
mov dword [esp + 8], ebx
mov dword [esp], ebp
call fcn.6ec46ee0
mov dword [esp + 4], edi
mov dword [esp], ebp
call fcn.6ec46ac0
mov edi, dword [edi]
test edi, edi
je 0x6ec4fc40
mov eax, dword [ebp + 0x1c]
mov edx, dword [eax + 0x2c]
cmp dword [ebp], edx
jb 0x6ec4fa68
add esp, 0x4c
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
mov ebx, dword [ebp + 0x1c]
mov eax, dword [ebx + 0x60]
test eax, eax
jle 0x6ec4fc80
xor eax, eax
mov edi, dword [ebx + 0x5c]
jmp 0x6ec4fc6c
mov esi, dword [edx + 0x10]
mov esi, dword [esi + 0x10]
cmp dword [edx + 4], 0x5c
mov ecx, dword [ecx]
je 0x6ec4fc61
sub esi, ecx
mov dword [ecx - 4], esi
add eax, 1
cmp dword [ebx + 0x60], eax
jle 0x6ec4fc80
lea ecx, [edi + eax*8]
mov edx, dword [ecx + 4]
cmp dword [edx + 4], 0x5c
jne 0x6ec4fc51
mov esi, dword [edx + 0x18]
mov esi, dword [esi + 0x10]
jmp 0x6ec4fc57
mov eax, dword [ebp + 4]
add esp, 0x4c
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [edi + 0x10]
lea edx, [eax - 8]
cmp edx, 7
jbe 0x6ec5b9a0
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [ebp]
add edx, 1
or edx, 0xffffffd8
mov byte [eax], 0xdd
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec58478
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5bdaf
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4f1d0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x18]
ja 0x6ec58441
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and edx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec44480
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5b17b
mov esi, dword [eax*8 + 0x6ec6b220]
mov edx, 0x28
xor ecx, ecx
mov eax, dword [edi + 0x20]
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec441a0
mov eax, dword [ebp]
lea edx, [esi + 1]
or edx, 0xffffffd8
mov byte [eax], 0xdd
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec583bf
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5bd84
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4e860
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea eax, [edx - 0x10]
cmp eax, 6
ja 0x6ec4fe13
lea eax, [esi - 0x10]
cmp eax, 6
jbe 0x6ec5d1c8
and esi, 0x7fff
and edx, 0x7fff
mov eax, dword [esi*8 + 0x6ec6b220]
mov ecx, 2
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 1
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec594ef
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4df00
mov ecx, dword [esp + 0x20]
mov edx, 6
mov dword [esp + 4], esi
mov esi, dword [esp + 0x28]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42cf0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec58654
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5bcd9
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4ed10
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
jbe 0x6ec5b8b7
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and edx, 7
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [ebp]
and ecx, 7
shl ecx, 3
or ecx, 0xffffffc0
or edx, ecx
mov byte [eax], 0xf2
mov byte [eax + 1], 0xf
mov byte [eax + 2], 0x2c
mov byte [eax + 3], dl
add eax, 4
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec59cfe
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4df00
mov ecx, dword [esp + 0x20]
mov edx, 0xa
mov dword [esp + 4], esi
mov esi, dword [esp + 0x28]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42e00
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec58516
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5c518
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4e3b0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec500ba
mov edx, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
jbe 0x6ec5d43e
and eax, 0x7fff
mov ecx, 2
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 1
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec591b5
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4df00
mov edx, dword [esp + 0x28]
mov eax, ebp
mov dword [esp], esi
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [esp + 0x20]
and ecx, 0x7fff
call fcn.6ec43150
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec58758
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5bd2f
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4ef70
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x18]
mov ecx, dword [edx + 0x10]
ja 0x6ec58636
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4df00
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x18]
ja 0x6ec5b285
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5c10e
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and ecx, 0x7fff
and edx, 0x7fff
call fcn.6ec43940
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec585f5
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5c39a
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4e600
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec58598
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec502d6
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5dfc3
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec428a0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec50327
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5d595
mov edx, dword [edi + 0x10]
and esi, 0x7fff
and eax, 0x7fff
mov ecx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
and edx, 0x7fff
cmp ecx, eax
je 0x6ec5dac0
mov dword [esp + 8], ecx
mov ecx, 4
mov dword [esp + 4], eax
mov eax, ebp
mov dword [esp], edx
mov edx, 1
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec58a9b
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4df00
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 6
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec42cf0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec586d6
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5c3ef
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4eab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec50494
mov edx, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
jbe 0x6ec5d54f
and eax, 0x7fff
mov ecx, 0xb
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 1
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec59eab
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4df00
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec44b90
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec588fa
mov edx, dword [edi + 0x18]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
mov edx, dword [edi + 0x10]
mov dword [esp], eax
mov eax, ebp
and ecx, 0x7fff
call fcn.6ec444d0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec505f3
mov edx, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
jbe 0x6ec5d5dc
and eax, 0x7fff
mov ecx, 7
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 1
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5924d
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5c6c1
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4f0a0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec584b9
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec506b5
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5de8e
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42c30
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec58799
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
mov ecx, dword [edi + 0x18]
and edx, 0x7fff
call fcn.6ec442b0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5b0d7
mov edx, dword [edi + 0x18]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and ecx, 0x7fff
and edx, 0x7fff
call fcn.6ec44300
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec58400
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5c1f2
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4e730
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec507b0
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5d509
mov edx, dword [edi + 0x10]
and esi, 0x7fff
and eax, 0x7fff
mov ecx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
and edx, 0x7fff
cmp ecx, eax
je 0x6ec5dbaf
mov dword [esp + 8], ecx
mov ecx, 6
mov dword [esp + 4], eax
mov eax, ebp
mov dword [esp], edx
mov edx, 1
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec59383
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4df00
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 4
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec42e00
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec58695
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5c4c3
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4ebe0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5091d
mov edx, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
jbe 0x6ec5d4c3
and eax, 0x7fff
mov ecx, 0xa
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 1
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec59da6
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4df00
mov ecx, dword [esp + 0x20]
mov edx, 0xb
mov dword [esp + 4], esi
mov esi, dword [esp + 0x28]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42e00
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec58557
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5c543
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4e280
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec50a81
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5d485
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42550
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec5894b
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4df00
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 7
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec42cf0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec587da
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5bd04
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4ee40
jmp case.0x6ec4fa9a.1
mov esi, dword [edi + 0x10]
lea eax, [esi - 0x10]
cmp eax, 6
mov eax, dword [edi + 0x18]
jbe 0x6ec5b923
and esi, 0x7fff
and eax, 0x7fff
mov ecx, dword [esi*8 + 0x6ec6b220]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [ebp]
and ecx, 7
shl ecx, 3
and edx, 7
or ecx, 0xffffffc0
or edx, ecx
mov byte [eax], 0xf3
mov byte [eax + 1], 0xf
mov byte [eax + 2], 0x5a
mov byte [eax + 3], dl
add eax, 4
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov esi, dword [edi + 0x10]
lea eax, [esi - 0x10]
cmp eax, 6
mov eax, dword [edi + 0x18]
jbe 0x6ec5b975
and esi, 0x7fff
and eax, 0x7fff
mov ecx, dword [esi*8 + 0x6ec6b220]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [ebp]
and ecx, 7
shl ecx, 3
and edx, 7
or ecx, 0xffffffc0
or edx, ecx
mov byte [eax], 0xf2
mov byte [eax + 1], 0xf
mov byte [eax + 2], 0x2a
mov byte [eax + 3], dl
add eax, 4
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5881b
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5c271
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4e4e0
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea eax, [edx - 0x10]
cmp eax, 6
ja 0x6ec50cbe
lea eax, [esi - 0x10]
cmp eax, 6
jbe 0x6ec5d647
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [edi + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
and edx, 0x7fff
cmp eax, ecx
je 0x6ec5dbe6
mov dword [esp + 8], ecx
mov ecx, 6
mov dword [esp + 4], eax
mov eax, ebp
mov dword [esp], edx
mov edx, 1
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec589f3
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4df00
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 2
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec42cf0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec58717
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5c444
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4e980
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec50e2c
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5d6d3
and esi, 0x7fff
and eax, 0x7fff
mov ecx, dword [edi + 0x10]
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and ecx, 0x7fff
and edx, 0x7fff
mov ecx, dword [ecx*8 + 0x6ec6b220]
and eax, 0x7fff
cmp edx, eax
je 0x6ec5b7f2
and ecx, 0x7fff
mov dword [esp + 8], edx
mov edx, 1
mov dword [esp + 4], eax
mov eax, ebp
mov dword [esp], ecx
mov ecx, 5
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec5a622
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4df00
mov ecx, dword [esp + 0x20]
mov edx, 2
mov dword [esp + 4], esi
mov esi, dword [esp + 0x28]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42cf0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec588b9
mov eax, dword [eax*8 + 0x6ec6b220]
mov ecx, dword [edi + 0x10]
mov esi, eax
and esi, 0x7fff
je 0x6ec5d20d
mov eax, dword [ebp]
or esi, 0xffffffc8
mov edx, esi
mov byte [eax + 1], dl
mov edx, 0x2a
mov byte [eax], 0xd9
add eax, 2
mov dword [ebp], eax
mov eax, ebp
mov dword [esp + 4], 0x17
mov dword [esp], 0x17
call fcn.6ec441a0
mov eax, dword [ebp]
mov ecx, esi
mov byte [eax], 0xd9
mov byte [eax + 1], cl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec50fc4
mov edx, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
jbe 0x6ec5d68c
and eax, 0x7fff
mov ecx, 3
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 1
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec5928e
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4df00
mov edx, dword [esp + 0x28]
mov eax, ebp
mov dword [esp], esi
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [esp + 0x20]
and ecx, 0x7fff
call fcn.6ec43020
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec58362
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec510ec
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e415
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42c90
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec5b1dd
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4df00
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 3
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec42cf0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec59492
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec511f9
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e029
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42960
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec59435
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec51257
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e321
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42b10
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5885c
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec512b5
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e290
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec59326
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec51313
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e71e
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42a50
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec59158
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec51371
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e9c7
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec429f0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec590fb
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec513cf
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e37a
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42bd0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec59ca1
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5142d
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e054
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42b70
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec58305
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5148b
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5dff6
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec427f0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5abda
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec514e9
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5df90
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42790
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec595a1
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec51547
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5eb99
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42850
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec59e4e
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec515a5
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5de5b
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42900
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec59f5b
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
and esi, 0x7fff
je 0x6ec5d308
mov ecx, dword [ebp]
or esi, 0xffffffc8
mov dword [esp + 0x24], esi
mov byte [ecx], 0xd9
mov dword [esp + 0x20], ecx
movzx ecx, byte [esp + 0x24]
mov esi, dword [esp + 0x20]
mov byte [esi + 1], cl
mov ecx, esi
add ecx, 2
mov dword [ebp], ecx
xor ecx, ecx
mov dword [esp + 4], edx
mov edx, 0x2a
mov dword [esp], eax
mov eax, ebp
call fcn.6ec441a0
mov eax, dword [ebp]
movzx edx, byte [esp + 0x24]
mov byte [eax], 0xd9
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec58057
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov esi, edx
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
and esi, 0x7fff
je 0x6ec5d94d
mov edx, dword [ebp]
or esi, 0xffffffc8
mov ecx, esi
mov byte [edx + 1], cl
xor ecx, ecx
mov byte [edx], 0xd9
add edx, 2
mov dword [ebp], edx
mov edx, 0x2a
mov dword [esp], eax
mov eax, ebp
mov dword [esp + 4], 0x17
call fcn.6ec441a0
mov eax, dword [ebp]
mov edx, esi
mov byte [eax], 0xd9
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5170f
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5d710
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42460
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec59aa5
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4df00
mov ecx, dword [esp + 0x20]
mov edx, 3
mov dword [esp + 4], esi
mov esi, dword [esp + 0x28]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42cf0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec598f8
mov ecx, dword [eax + 0x10]
mov edx, 0xf
mov eax, dword [edi + 0x20]
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec43550
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5185f
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5cce5
and esi, 0x7fff
and eax, 0x7fff
mov ecx, dword [edi + 0x10]
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and ecx, 0x7fff
and edx, 0x7fff
mov ecx, dword [ecx*8 + 0x6ec6b220]
and eax, 0x7fff
cmp edx, eax
je 0x6ec5b815
and ecx, 0x7fff
mov dword [esp + 8], edx
xor edx, edx
mov dword [esp + 4], eax
mov eax, ebp
mov dword [esp], ecx
mov ecx, 5
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov ecx, dword [edi + 0x10]
mov edx, dword [edi + 0x20]
and eax, 0x7fff
and ecx, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov ecx, dword [ecx*8 + 0x6ec6b220]
and eax, 0x7fff
and ecx, 0x7fff
test edx, edx
jne 0x6ec5b6e1
mov dword [esp], eax
mov edx, 9
mov eax, ebp
call fcn.6ec4c4e0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5a1f5
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5c696
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4d3c0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, dword [edi + 0x10]
mov esi, dword [ebp]
mov ecx, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
mov byte [esi], 0xf
mov byte [esi + 1], 0xbf
add esi, 2
and eax, 0x7fff
mov dword [ebp], esi
and edx, 0x7fff
mov dword [esp], eax
mov eax, ebp
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x18]
mov eax, dword [edi + 0x20]
mov esi, dword [ebp]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
mov edx, dword [edi + 0x10]
mov eax, dword [eax*8 + 0x6ec6b220]
and ecx, 0x7fff
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
mov byte [esi], 0xf
mov byte [esi + 1], 0xbf
add esi, 2
mov dword [ebp], esi
and edx, 0x7fff
mov dword [esp + 4], ecx
xor ecx, ecx
mov dword [esp], eax
mov eax, ebp
mov dword [esp + 8], 0
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 0x10]
cmp eax, 6
ja 0x6ec5b872
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [eax - 0x10]
cmp ecx, 6
ja 0x6ec51a3b
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e227
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov eax, dword [esi*8 + 0x6ec6b220]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
and edx, 0x7fff
mov eax, ebp
call fcn.6ec4c800
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 0x10]
cmp eax, 6
mov eax, dword [edi + 0x18]
ja 0x6ec51a9b
lea ecx, [eax - 0x10]
cmp ecx, 6
jbe 0x6ec5cd22
mov ecx, dword [edi + 0x20]
and eax, 0x7fff
and edx, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov esi, dword [edx*8 + 0x6ec6b220]
mov ecx, dword [ecx + 0x10]
and eax, 0x7fff
mov dword [esp + 4], 0xc0000000
and esi, 0x7fff
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4cbb0
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41c10
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 0x10]
cmp eax, 6
ja 0x6ec5b87d
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [eax - 0x10]
cmp ecx, 6
ja 0x6ec51b60
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e5bd
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov eax, dword [esi*8 + 0x6ec6b220]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
and edx, 0x7fff
mov eax, ebp
call fcn.6ec41c10
jmp case.0x6ec4fa9a.1
mov edx, dword [ebp + 0x1c]
test byte [edx + 0xc], 0x10
je 0x6ec58b4d
mov esi, dword [esp + 0x30]
mov eax, dword [esi]
cmp eax, edi
je 0x6ec51bdb
lea esi, [esi]
mov ecx, dword [eax + 4]
cmp ecx, 0xcd
je 0x6ec51bd0
cmp ecx, 7
jne 0x6ec51bd5
and word [eax + 8], 0xfffd
mov eax, dword [eax]
cmp eax, edi
jne 0x6ec51bc0
mov esi, dword [esp + 0x34]
and word [eax + 8], 0xfffd
mov edi, dword [esp + 0x30]
mov dword [ebp], esi
mov esi, dword [esp + 0x38]
mov dword [edx + 0x60], esi
jmp 0x6ec4fabc
test byte [edi + 8], 1
mov ecx, dword [edi + 0x10]
je 0x6ec5a151
mov eax, dword [ebp]
mov esi, dword [ecx + 0x10]
lea edx, [eax + 1]
mov dword [esp + 0x20], edx
mov edx, 0xfffffffc
sub edx, dword [esp + 0x20]
mov byte [eax], 0xe8
mov dword [esp + 0x20], edx
add edx, esi
test byte [ecx + 8], 2
mov dword [eax + 1], edx
lea edx, [eax + 5]
mov dword [ebp], edx
jne case.0x6ec4fa9a.1
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
mov edx, dword [ebp]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov byte [edx], 0xff
and eax, 7
or eax, 0xffffffd0
mov byte [edx + 1], al
add edx, 2
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
test byte [edi + 8], 1
je 0x6ec5829f
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5dd41
mov ecx, dword [eax + 0x10]
mov esi, 0xfffffffc
mov eax, dword [ebp]
lea edx, [eax + 1]
sub esi, edx
mov edx, esi
add edx, ecx
mov byte [eax], 0xe9
mov dword [eax + 1], edx
add eax, 5
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
mov edx, dword [ebp]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov byte [edx], 0xff
and eax, 7
or eax, 0xffffffe0
mov byte [edx + 1], al
add edx, 2
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5b129
mov esi, dword [eax + 0x10]
mov edx, 0x28
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec434c0
mov eax, dword [ebp]
sub esi, eax
lea edx, [esi - 6]
mov byte [eax], 0xf
mov byte [eax + 1], 0x83
mov dword [eax + 2], edx
add eax, 6
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec59980
mov edx, dword [edi + 0x18]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41a60
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov ecx, dword [edi + 0x20]
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x14]
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x20000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x24], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x28], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x3c], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec436d0
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x20]
mov dword [esp + 8], 1
mov dword [esp], esi
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, dword [esp + 0x24]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec4b180
mov eax, dword [esp + 0x28]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 0x10]
cmp eax, 6
ja 0x6ec5b888
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [eax - 0x10]
cmp ecx, 6
ja 0x6ec51e5e
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e5f2
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov eax, dword [esi*8 + 0x6ec6b220]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
and edx, 0x7fff
mov eax, ebp
call fcn.6ec42670
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
lea edx, [eax - 8]
cmp edx, 7
jbe 0x6ec5b8e5
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [ebp]
add edx, 1
or edx, 0xffffffd8
mov byte [eax], 0xdd
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5a173
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5bf68
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4dc10
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, dword [edi + 0x10]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec43f30
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
mov esi, dword [ebp]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x18]
and edx, 0x7fff
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov byte [esi], 0x89
add esi, 1
mov dword [ebp], esi
mov dword [esp + 4], ecx
xor ecx, ecx
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
mov dword [esp + 8], 0
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec51fd6
mov edx, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
jbe 0x6ec5ced5
and eax, 0x7fff
mov ecx, 3
mov eax, dword [eax*8 + 0x6ec6b220]
xor edx, edx
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec59063
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4c9c0
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec43020
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec520ef
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5cf1c
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41d30
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
mov edx, 7
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec435b0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
mov edx, 7
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c080
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and edx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec44110
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
mov edx, 4
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c080
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x18]
mov eax, dword [edi + 0x20]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [edi + 0x10]
and ecx, 0x7fff
and edx, 0x7fff
mov esi, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and edx, 0x7fff
test eax, eax
mov dword [esp + 0x20], edx
jne 0x6ec57cf3
cmp ecx, edx
je case.0x6ec4fa9a.1
mov eax, dword [ebp]
shl ecx, 3
and esi, 7
or ecx, 0xffffffc0
or ecx, esi
mov byte [eax], 0x89
mov byte [eax + 1], cl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x18]
mov esi, ecx
and eax, 0x7fff
and esi, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x20], esi
mov edx, eax
mov dword [esp + 0x28], eax
mov eax, dword [edi + 0x10]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov esi, eax
and esi, 0x7fff
cmp dword [esp + 0x20], edx
mov dword [esp + 0x24], esi
je 0x6ec5cad2
cmp edx, dword [esp + 0x24]
je 0x6ec5dcc1
mov esi, dword [esp + 0x24]
cmp dword [esp + 0x20], esi
je 0x6ec5dda7
mov esi, dword [ebp]
shl edx, 3
and eax, 7
or edx, 0xffffffc0
or edx, eax
mov byte [esi + 1], dl
mov edx, ecx
and edx, 7
shl edx, 3
or edx, 0xffffffc0
or eax, edx
mov byte [esi], 0x89
mov byte [esi + 2], 0x31
mov byte [esi + 3], al
add esi, 4
mov dword [ebp], esi
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x18]
mov eax, dword [edi + 0x20]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [edi + 0x10]
and ecx, 0x7fff
and edx, 0x7fff
mov esi, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and edx, 0x7fff
test eax, eax
mov dword [esp + 0x20], edx
jne 0x6ec5aa68
cmp ecx, edx
je case.0x6ec4fa9a.1
mov eax, dword [ebp]
shl ecx, 3
and esi, 7
or ecx, 0xffffffc0
or ecx, esi
mov byte [eax], 0x89
mov byte [eax + 1], cl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5a4d1
mov eax, dword [eax*8 + 0x6ec6b220]
mov ecx, dword [edi + 0x10]
mov esi, eax
and esi, 0x7fff
je 0x6ec5cfea
mov eax, dword [ebp]
or esi, 0xffffffc8
mov edx, esi
mov byte [eax + 1], dl
mov edx, 0xa
mov byte [eax], 0xd9
add eax, 2
mov dword [ebp], eax
mov eax, ebp
mov dword [esp + 4], 0x17
mov dword [esp], 0x17
call fcn.6ec441a0
mov eax, dword [ebp]
mov ecx, esi
mov byte [eax], 0xd9
mov byte [eax + 1], cl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, eax
and edx, 0x7fff
cmp ecx, edx
je 0x6ec52487
mov edx, dword [ebp]
shl ecx, 3
mov esi, eax
or ecx, 0xffffffc0
and esi, 7
or ecx, esi
mov byte [edx], 0x89
mov byte [edx + 1], cl
add edx, 2
mov dword [ebp], edx
mov edx, dword [ebp]
and eax, 7
or eax, 0xffffffc8
mov byte [edx], 0xf
mov byte [edx + 1], al
add edx, 2
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and ecx, 7
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [ebp]
and edx, 7
lea esi, [edx*8]
or edx, 0xffffffc8
or esi, 0xffffffc0
or ecx, esi
mov byte [eax], 0xf
mov byte [eax + 1], 0xb7
mov byte [eax + 2], cl
mov byte [eax + 3], 0x66
mov byte [eax + 4], 0xc1
mov byte [eax + 5], dl
mov byte [eax + 6], 8
add eax, 7
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec57d34
mov esi, dword [eax + 0x10]
xor edx, edx
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec434c0
mov eax, dword [ebp]
sub esi, eax
lea edx, [esi - 6]
mov byte [eax], 0xf
mov byte [eax + 1], 0x83
mov dword [eax + 2], edx
add eax, 6
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec58dd4
mov edx, dword [edi + 0x18]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41920
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, eax
and edx, 0x7fff
cmp esi, edx
mov dword [esp + 0x20], eax
jne 0x6ec5ba02
mov edx, ecx
mov ecx, dword [esp + 0x20]
mov eax, dword [ebp]
and edx, 7
shl edx, 3
or edx, 0xffffffc0
and ecx, 7
or edx, ecx
mov byte [eax], 0x29
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 0x10]
cmp eax, 6
mov eax, dword [edi + 0x18]
ja 0x6ec5261e
lea ecx, [eax - 0x10]
cmp ecx, 6
jbe 0x6ec5cf59
mov ecx, dword [edi + 0x20]
and eax, 0x7fff
and edx, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov esi, dword [edx*8 + 0x6ec6b220]
mov ecx, dword [ecx + 0x10]
and eax, 0x7fff
mov dword [esp + 4], 0xc0000000
and esi, 0x7fff
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4e120
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4de20
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
test byte [edx + 8], 2
je 0x6ec5a59d
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
test esi, esi
jne 0x6ec5d245
mov dword [esp], eax
mov edx, 6
mov eax, ebp
call fcn.6ec41730
jmp case.0x6ec4fa9a.1
mov ecx, dword [edi + 0x10]
mov eax, dword [edi + 0x20]
test byte [ecx + 8], 2
je 0x6ec5af2c
and eax, 0x7fff
mov ecx, dword [ecx + 0x10]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x18]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
cmp edx, eax
je 0x6ec5c77f
mov dword [esp + 4], edx
mov edx, 6
mov dword [esp], eax
mov eax, ebp
call fcn.6ec416d0
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea eax, [edx - 0x10]
cmp eax, 6
ja 0x6ec52770
lea eax, [esi - 0x10]
cmp eax, 6
jbe 0x6ec5ce90
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [edi + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
and edx, 0x7fff
cmp eax, ecx
je 0x6ec5dbf7
mov dword [esp + 8], ecx
mov ecx, 6
mov dword [esp + 4], eax
mov eax, ebp
mov dword [esp], edx
xor edx, edx
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec59bfc
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4c9c0
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 2
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec42cf0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
mov edx, 2
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c670
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec59635
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5bc53
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4cf20
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5a236
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5292c
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e4e2
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41fd0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
mov ecx, dword [edi + 0x18]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [ebp]
and edx, 0x7fff
mov byte [eax], 0xf
mov byte [eax + 1], 0xb7
add eax, 2
mov dword [ebp], eax
mov eax, ebp
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
mov dword [esp], 0x17
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, dword [edi + 0x10]
mov ecx, dword [ebp]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
mov byte [ecx], 0xf
mov byte [ecx + 1], 0xb7
add ecx, 2
and eax, 0x7fff
mov dword [ebp], ecx
and edx, 0x7fff
xor ecx, ecx
mov dword [esp], eax
mov eax, ebp
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
mov ecx, dword [edi + 0x18]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [ebp]
and edx, 0x7fff
mov byte [eax], 0xf
mov byte [eax + 1], 0xbf
add eax, 2
mov dword [ebp], eax
mov eax, ebp
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
mov dword [esp], 0x17
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, dword [edi + 0x10]
mov ecx, dword [ebp]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
mov byte [ecx], 0xf
mov byte [ecx + 1], 0xbf
add ecx, 2
and eax, 0x7fff
mov dword [ebp], ecx
and edx, 0x7fff
xor ecx, ecx
mov dword [esp], eax
mov eax, ebp
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
mov ecx, dword [edi + 0x18]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [ebp]
and edx, 0x7fff
mov byte [eax], 0xf
mov byte [eax + 1], 0xb6
add eax, 2
mov dword [ebp], eax
mov eax, ebp
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
mov dword [esp], 0x17
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, dword [edi + 0x10]
mov ecx, dword [ebp]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
mov byte [ecx], 0xf
mov byte [ecx + 1], 0xb6
add ecx, 2
and eax, 0x7fff
mov dword [ebp], ecx
and edx, 0x7fff
xor ecx, ecx
mov dword [esp], eax
mov eax, ebp
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
mov ecx, dword [edi + 0x18]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [ebp]
and edx, 0x7fff
mov byte [eax], 0xf
mov byte [eax + 1], 0xbe
add eax, 2
mov dword [ebp], eax
mov eax, ebp
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
mov dword [esp], 0x17
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, dword [edi + 0x10]
mov ecx, dword [ebp]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
mov byte [ecx], 0xf
mov byte [ecx + 1], 0xbe
add ecx, 2
and eax, 0x7fff
mov dword [ebp], ecx
and edx, 0x7fff
xor ecx, ecx
mov dword [esp], eax
mov eax, ebp
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, dword [edi + 0x10]
mov esi, dword [ebp]
mov ecx, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
mov byte [esi], 0xf
mov byte [esi + 1], 0xbe
add esi, 2
and eax, 0x7fff
mov dword [ebp], esi
and edx, 0x7fff
mov dword [esp], eax
mov eax, ebp
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x18]
mov eax, dword [edi + 0x20]
mov esi, dword [ebp]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
mov edx, dword [edi + 0x10]
mov eax, dword [eax*8 + 0x6ec6b220]
and ecx, 0x7fff
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
mov byte [esi], 0xf
mov byte [esi + 1], 0xbe
add esi, 2
mov dword [ebp], esi
and edx, 0x7fff
mov dword [esp + 4], ecx
xor ecx, ecx
mov dword [esp], eax
mov eax, ebp
mov dword [esp + 8], 0
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
mov ecx, dword [edi + 0x18]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [ebp]
and edx, 0x7fff
mov byte [eax], 0x8b
add eax, 1
mov dword [ebp], eax
mov eax, ebp
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
mov dword [esp], 0x17
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, dword [edi + 0x10]
mov ecx, dword [ebp]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
mov byte [ecx], 0x8b
add ecx, 1
mov dword [ebp], ecx
xor ecx, ecx
and eax, 0x7fff
mov dword [esp], eax
and edx, 0x7fff
mov eax, ebp
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, dword [edi + 0x10]
mov esi, dword [ebp]
mov ecx, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
mov byte [esi], 0xf
mov byte [esi + 1], 0xb6
add esi, 2
and eax, 0x7fff
mov dword [ebp], esi
and edx, 0x7fff
mov dword [esp], eax
mov eax, ebp
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x18]
mov eax, dword [edi + 0x20]
mov esi, dword [ebp]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
mov edx, dword [edi + 0x10]
mov eax, dword [eax*8 + 0x6ec6b220]
and ecx, 0x7fff
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
mov byte [esi], 0xf
mov byte [esi + 1], 0xb6
add esi, 2
mov dword [ebp], esi
and edx, 0x7fff
mov dword [esp + 4], ecx
xor ecx, ecx
mov dword [esp], eax
mov eax, ebp
mov dword [esp + 8], 0
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov ecx, dword [edi + 0x10]
mov edx, dword [edi + 0x20]
and eax, 0x7fff
and ecx, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov ecx, dword [ecx*8 + 0x6ec6b220]
and eax, 0x7fff
and ecx, 0x7fff
test edx, edx
jne 0x6ec5b608
mov dword [esp], eax
mov edx, 5
mov eax, ebp
call fcn.6ec4c4e0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
mov edx, dword [edi + 0x10]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov eax, dword [edi + 0x18]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
cmp ecx, eax
je 0x6ec5d29c
mov dword [esp + 4], ecx
mov ecx, edx
mov edx, 5
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c340
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, dword [edi + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
mov esi, eax
and esi, 0x7fff
cmp esi, 3
mov dword [esp + 0x20], edx
ja 0x6ec5b4c4
mov ecx, dword [ebp]
and edx, 7
and eax, 7
shl edx, 3
or edx, 0xffffffc0
or edx, eax
mov byte [ecx], 0xf
mov byte [ecx + 1], 0xb6
mov byte [ecx + 2], dl
add ecx, 3
mov dword [ebp], ecx
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
mov edx, 0xf
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c670
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and edx, 7
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [ebp]
and ecx, 7
shl ecx, 3
or ecx, 0xffffffc0
or edx, ecx
mov byte [eax], 0xf
mov byte [eax + 1], 0xb7
mov byte [eax + 2], dl
add eax, 3
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and edx, 7
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [ebp]
and ecx, 7
shl ecx, 3
or ecx, 0xffffffc0
or edx, ecx
mov byte [eax], 0xf
mov byte [eax + 1], 0xbf
mov byte [eax + 2], dl
add eax, 3
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
test byte [edi + 8], 1
je 0x6ec5b893
mov eax, dword [edi + 0x18]
mov edx, dword [eax + 4]
test edx, edx
je 0x6ec53022
cmp edx, 7
jne 0x6ec5b48e
test byte [eax + 8], 2
je 0x6ec5b48e
mov ecx, dword [eax + 0x10]
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and edx, 0x7fff
call fcn.6ec436d0
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
mov eax, dword [edi + 0x18]
and edx, 0x7fff
and eax, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, ecx
and eax, 0x7fff
and edx, 0x7fff
cmp eax, edx
je case.0x6ec4fa9a.1
mov edx, dword [ebp]
shl eax, 3
and ecx, 7
or eax, 0xffffffc0
or eax, ecx
mov byte [edx], 0x89
mov byte [edx + 1], al
add edx, 2
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, dword [edi + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
mov esi, eax
and esi, 0x7fff
cmp esi, 3
mov dword [esp + 0x20], edx
ja 0x6ec5b566
mov ecx, dword [ebp]
and edx, 7
and eax, 7
shl edx, 3
or edx, 0xffffffc0
or edx, eax
mov byte [ecx], 0xf
mov byte [ecx + 1], 0xbe
mov byte [ecx + 2], dl
add ecx, 3
mov dword [ebp], ecx
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov ecx, dword [edi + 0x10]
mov edx, dword [edi + 0x20]
and eax, 0x7fff
and ecx, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov ecx, dword [ecx*8 + 0x6ec6b220]
and eax, 0x7fff
and ecx, 0x7fff
test edx, edx
jne 0x6ec5b54e
mov dword [esp], eax
mov edx, 5
mov eax, ebp
call fcn.6ec4c4e0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov ecx, dword [edi + 0x10]
mov edx, dword [edi + 0x20]
and eax, 0x7fff
and ecx, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov ecx, dword [ecx*8 + 0x6ec6b220]
and eax, 0x7fff
and ecx, 0x7fff
test edx, edx
jne 0x6ec5b5f0
mov dword [esp], eax
mov edx, 3
mov eax, ebp
call fcn.6ec4c4e0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
mov edx, dword [edi + 0x10]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov eax, dword [edi + 0x18]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
cmp ecx, eax
je 0x6ec5ccb6
mov dword [esp + 4], ecx
mov ecx, edx
mov edx, 7
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c340
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
mov edx, dword [edi + 0x10]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov eax, dword [edi + 0x18]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
cmp ecx, eax
je 0x6ec5ccc5
mov dword [esp + 4], ecx
mov ecx, edx
mov edx, 0xf
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c340
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
mov edx, dword [edi + 0x10]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov eax, dword [edi + 0x18]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
cmp ecx, eax
je 0x6ec5c6ec
mov dword [esp + 4], ecx
mov ecx, edx
mov edx, 3
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c340
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov ecx, dword [edi + 0x10]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [ebp]
and edx, 0x7fff
mov byte [eax], 0x66
mov byte [eax + 1], 0x89
add eax, 2
mov dword [ebp], eax
mov eax, ebp
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
mov dword [esp], 0x17
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5ac37
mov esi, dword [eax + 0x10]
mov edx, 0x28
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec434c0
mov eax, dword [ebp]
sub esi, eax
lea edx, [esi - 6]
mov byte [eax], 0xf
mov byte [eax + 1], 0x82
mov dword [eax + 2], edx
add eax, 6
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec59a0c
mov edx, dword [edi + 0x18]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec419c0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x14]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 8], 1
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and edx, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4b070
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec582c4
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5c1c7
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4d880
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec581a4
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec53454
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e087
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec422e0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec58163
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5c345
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4d750
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec58106
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec534f3
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e121
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42280
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5a490
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5c5ec
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4d620
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5a433
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec53592
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e556
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42220
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5825e
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5c2f0
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4d4f0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec58201
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec53631
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e4af
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec421c0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5a512
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5c0b8
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4dae0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec59771
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec536d0
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e942
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec423a0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec59730
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5c617
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4d9b0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec596d3
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5376f
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e6a2
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42340
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec580a9
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec537cd
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5eac8
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42400
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea eax, [edx - 0x10]
cmp eax, 6
ja 0x6ec5381e
lea eax, [esi - 0x10]
cmp eax, 6
jbe 0x6ec5d96b
and esi, 0x7fff
and edx, 0x7fff
mov eax, dword [esi*8 + 0x6ec6b220]
mov ecx, 7
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 1
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov esi, dword [edi + 0x10]
lea eax, [esi - 0x10]
cmp eax, 6
mov eax, dword [edi + 0x18]
ja 0x6ec53891
lea edx, [eax - 0x10]
cmp edx, 6
jbe 0x6ec5dd1b
and esi, 0x7fff
and eax, 0x7fff
mov ecx, dword [esi*8 + 0x6ec6b220]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [ebp]
and ecx, 7
shl ecx, 3
and edx, 7
or ecx, 0xffffffc0
or edx, ecx
mov byte [eax], 0xf2
mov byte [eax + 1], 0xf
mov byte [eax + 2], 0x51
mov byte [eax + 3], dl
add eax, 4
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 0x10]
cmp eax, 6
mov eax, dword [edi + 0x18]
ja 0x6ec538ee
lea ecx, [eax - 0x10]
cmp ecx, 6
jbe 0x6ec5d74e
and edx, 0x7fff
and eax, 0x7fff
mov esi, dword [edx*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
mov ecx, esi
mov dword [esp + 0x20], eax
and ecx, 0x7fff
and eax, 0x7fff
cmp eax, ecx
je 0x6ec5da03
mov eax, dword [ebp]
and esi, 7
lea edx, [esi*8]
or edx, 0xffffffc0
mov byte [esp + 0x24], dl
or edx, esi
mov byte [eax + 3], dl
mov edx, 0x73
mov byte [eax], 0x66
mov byte [eax + 1], 0xf
mov byte [eax + 2], 0x76
add eax, 4
mov dword [ebp], eax
mov eax, ebp
mov dword [esp + 4], 1
mov dword [esp], 2
call fcn.6ec43700
mov edx, dword [esp + 0x20]
mov eax, dword [ebp]
and edx, 7
or dl, byte [esp + 0x24]
mov byte [eax], 0x66
mov byte [eax + 1], 0xf
mov byte [eax + 2], 0x54
mov byte [eax + 3], dl
add eax, 4
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 0x10]
cmp eax, 6
mov eax, dword [edi + 0x18]
ja 0x6ec539a6
lea ecx, [eax - 0x10]
cmp ecx, 6
jbe 0x6ec5d774
and edx, 0x7fff
and eax, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 4], 0x20000000
mov dword [esp], ebp
mov dword [esp + 0x20], edx
and edx, 0x7fff
mov dword [esp + 0x28], edx
mov dword [esp + 0x24], eax
call fcn.6ec4a980
mov edx, eax
mov esi, eax
mov eax, dword [ebp]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov dword [eax + 1], 0x80000000
and ecx, 7
or ecx, 0xffffffb8
mov byte [eax], cl
lea ecx, [eax + 5]
mov dword [ebp], ecx
mov ecx, dword [esp + 0x24]
and ecx, 0x7fff
cmp ecx, dword [esp + 0x28]
je 0x6ec5dae2
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [esp + 0x20]
mov byte [eax + 5], 0x66
mov byte [eax + 6], 0xf
and ecx, 7
and edx, 7
shl edx, 3
or edx, 0xffffffc0
or ecx, edx
mov byte [eax + 8], cl
mov ecx, dword [esp + 0x28]
mov byte [eax + 7], 0x6e
add eax, 9
mov dword [ebp], eax
mov eax, ebp
mov byte [esp + 0x20], dl
mov edx, 0x73
mov dword [esp + 4], 0x20
mov dword [esp], 6
call fcn.6ec43700
mov edx, dword [esp + 0x24]
mov eax, dword [ebp]
and edx, 7
or dl, byte [esp + 0x20]
mov byte [eax], 0x66
mov byte [eax + 1], 0xf
mov byte [eax + 2], 0x57
mov byte [eax + 3], dl
add eax, 4
mov dword [ebp], eax
mov dword [esp + 4], esi
mov dword [esp], ebp
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 0x10]
cmp eax, 6
mov eax, dword [edi + 0x18]
ja 0x6ec53abc
lea ecx, [eax - 0x10]
cmp ecx, 6
jbe 0x6ec5d38e
mov ecx, dword [edi + 0x20]
and edx, 0x7fff
and eax, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
mov esi, dword [eax*8 + 0x6ec6b220]
mov ecx, dword [ecx + 0x10]
and edx, 0x7fff
mov dword [esp + 4], 0xc0000000
and esi, 0x7fff
mov dword [esp], ebp
mov dword [esp + 0x20], edx
mov dword [esp + 0x1c], ecx
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4e120
mov edx, dword [esp + 0x28]
mov eax, ebp
mov dword [esp], esi
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [esp + 0x20]
and ecx, 0x7fff
call fcn.6ec4dd40
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea eax, [edx - 0x10]
cmp eax, 6
ja 0x6ec53b72
lea eax, [esi - 0x10]
cmp eax, 6
jbe 0x6ec5d349
and esi, 0x7fff
and edx, 0x7fff
mov eax, dword [esi*8 + 0x6ec6b220]
mov ecx, 3
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 1
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec597ce
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4df00
mov ecx, dword [esp + 0x20]
mov edx, 7
mov dword [esp + 4], esi
mov esi, dword [esp + 0x28]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42cf0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 0x10]
cmp eax, 6
mov eax, dword [edi + 0x18]
ja 0x6ec53c94
lea ecx, [eax - 0x10]
cmp ecx, 6
jbe 0x6ec5d79a
mov ecx, dword [edi + 0x20]
and eax, 0x7fff
and edx, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov esi, dword [edx*8 + 0x6ec6b220]
mov ecx, dword [ecx + 0x10]
and eax, 0x7fff
mov dword [esp + 4], 0xc0000000
and esi, 0x7fff
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4e120
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42700
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 0x10]
cmp eax, 6
ja 0x6ec5b918
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [eax - 0x10]
cmp ecx, 6
ja 0x6ec53d59
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5eafb
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov eax, dword [esi*8 + 0x6ec6b220]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
and edx, 0x7fff
mov eax, ebp
call fcn.6ec4dd40
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 0x10]
cmp eax, 6
mov eax, dword [edi + 0x18]
ja 0x6ec53db9
lea ecx, [eax - 0x10]
cmp ecx, 6
jbe 0x6ec5d82b
mov ecx, dword [edi + 0x20]
and eax, 0x7fff
and edx, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov esi, dword [edx*8 + 0x6ec6b220]
mov ecx, dword [ecx + 0x10]
and eax, 0x7fff
mov dword [esp + 4], 0xc0000000
and esi, 0x7fff
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4e120
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42670
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 0x10]
cmp eax, 6
mov eax, dword [edi + 0x18]
ja 0x6ec53e6f
lea ecx, [eax - 0x10]
cmp ecx, 6
jbe 0x6ec5d8bc
mov ecx, dword [edi + 0x20]
and eax, 0x7fff
and edx, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov esi, dword [edx*8 + 0x6ec6b220]
mov ecx, dword [ecx + 0x10]
and eax, 0x7fff
mov dword [esp + 4], 0xc0000000
and esi, 0x7fff
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4e120
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4dd40
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 0x10]
cmp eax, 6
ja 0x6ec5b9f7
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [eax - 0x10]
cmp ecx, 6
ja 0x6ec53f34
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5eb64
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov eax, dword [esi*8 + 0x6ec6b220]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
and edx, 0x7fff
mov eax, ebp
call fcn.6ec4de20
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 0x10]
cmp eax, 6
ja 0x6ec5ba91
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [eax - 0x10]
cmp ecx, 6
ja 0x6ec53fa3
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e992
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov eax, dword [esi*8 + 0x6ec6b220]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
and edx, 0x7fff
mov eax, ebp
call fcn.6ec42700
jmp case.0x6ec4fa9a.1
mov esi, dword [edi + 0x10]
lea eax, [esi - 0x10]
cmp eax, 6
mov eax, dword [edi + 0x18]
jbe 0x6ec5ba34
and esi, 0x7fff
and eax, 0x7fff
mov ecx, dword [esi*8 + 0x6ec6b220]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [ebp]
and ecx, 7
shl ecx, 3
and edx, 7
or ecx, 0xffffffc0
or edx, ecx
mov byte [eax], 0xf2
mov byte [eax + 1], 0xf
mov byte [eax + 2], 0x5a
mov byte [eax + 3], dl
add eax, 4
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov esi, dword [edi + 0x10]
lea eax, [esi - 0x10]
cmp eax, 6
mov eax, dword [edi + 0x18]
jbe 0x6ec5bb84
and esi, 0x7fff
and eax, 0x7fff
mov ecx, dword [esi*8 + 0x6ec6b220]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [ebp]
and ecx, 7
shl ecx, 3
and edx, 7
or ecx, 0xffffffc0
or edx, ecx
mov byte [eax], 0xf3
mov byte [eax + 1], 0xf
mov byte [eax + 2], 0x2a
mov byte [eax + 3], dl
add eax, 4
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
jbe 0x6ec5ba9c
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and edx, 7
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [ebp]
and ecx, 7
shl ecx, 3
or ecx, 0xffffffc0
or edx, ecx
mov byte [eax], 0xf3
mov byte [eax + 1], 0xf
mov byte [eax + 2], 0x2c
mov byte [eax + 3], dl
add eax, 4
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
test byte [edx + 8], 2
je 0x6ec5901f
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
test esi, esi
jne 0x6ec5cc9e
mov dword [esp], eax
mov edx, 9
mov eax, ebp
call fcn.6ec41730
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 0x10]
cmp eax, 6
mov eax, dword [edi + 0x18]
ja 0x6ec54144
lea ecx, [eax - 0x10]
cmp ecx, 6
jbe 0x6ec5cc0b
and edx, 0x7fff
and eax, 0x7fff
mov esi, dword [edx*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
mov ecx, esi
mov dword [esp + 0x20], eax
and ecx, 0x7fff
and eax, 0x7fff
cmp eax, ecx
je 0x6ec5dc08
mov eax, dword [ebp]
and esi, 7
lea edx, [esi*8]
or edx, 0xffffffc0
mov byte [esp + 0x24], dl
or edx, esi
mov byte [eax + 3], dl
mov edx, 0x72
mov byte [eax], 0x66
mov byte [eax + 1], 0xf
mov byte [eax + 2], 0x76
add eax, 4
mov dword [ebp], eax
mov eax, ebp
mov dword [esp + 4], 1
mov dword [esp], 2
call fcn.6ec43700
mov edx, dword [esp + 0x20]
mov eax, dword [ebp]
and edx, 7
or dl, byte [esp + 0x24]
mov byte [eax], 0xf
mov byte [eax + 1], 0x54
mov byte [eax + 2], dl
add eax, 3
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 0x10]
cmp eax, 6
mov eax, dword [edi + 0x18]
ja 0x6ec541f8
lea ecx, [eax - 0x10]
cmp ecx, 6
jbe 0x6ec5cc31
and eax, 0x7fff
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 4], 0x20000000
mov dword [esp], ebp
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x24]
and ecx, 0x7fff
mov esi, eax
and esi, 0x7fff
mov edx, dword [esi*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, dword [ebp]
and edx, 7
or edx, 0xffffffb8
mov byte [eax], dl
lea edx, [eax + 5]
mov dword [eax + 1], 0x80000000
mov dword [ebp], edx
mov edx, dword [esp + 0x20]
and edx, 0x7fff
cmp ecx, edx
je 0x6ec5ebd7
mov ecx, dword [esp + 0x20]
mov edx, dword [esi*8 + 0x6ec6b220]
mov byte [eax + 5], 0x66
mov byte [eax + 6], 0xf
and ecx, 7
shl ecx, 3
and edx, 7
or ecx, 0xffffffc0
or edx, ecx
mov byte [eax + 8], dl
mov edx, dword [esp + 0x24]
mov byte [eax + 7], 0x6e
mov byte [eax + 9], 0xf
mov byte [eax + 0xa], 0x57
and edx, 7
or edx, ecx
mov byte [eax + 0xb], dl
add eax, 0xc
mov dword [ebp], eax
mov eax, dword [esp + 0x28]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov ecx, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
and eax, 0x7fff
test ecx, ecx
mov esi, dword [eax*8 + 0x6ec6b220]
je 0x6ec5b65e
mov eax, dword [esp + 0x20]
mov edx, esi
and edx, 0x7fff
and eax, 0x7fff
cmp ecx, 0xffffffff
je 0x6ec5dcf4
cmp eax, edx
je 0x6ec5e708
mov eax, ebp
and esi, 7
call fcn.6ec436d0
mov edx, dword [esp + 0x20]
mov eax, dword [ebp]
and edx, 7
shl edx, 3
or edx, 0xffffffc0
or edx, esi
mov byte [eax], 0x21
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec598b7
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5c011
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4d170
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec59876
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5be2e
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4d040
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5ad37
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec543ec
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e90f
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42020
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
mov edx, dword [edi + 0x10]
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x18]
mov dword [esp + 0x20], edx
and esi, 0x7fff
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
and ecx, 0x7fff
cmp esi, 3
jbe 0x6ec5b740
mov dword [esp + 4], 0x24000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, edx
and eax, 0x7fff
cmp esi, eax
je 0x6ec544ae
mov eax, dword [ebp]
shl esi, 3
and edx, 7
or esi, 0xffffffc0
or edx, esi
mov byte [eax], 0x89
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
mov eax, dword [ebp]
mov esi, dword [esp + 0x28]
mov byte [eax], 0x88
add eax, 1
mov dword [ebp], eax
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, ebp
mov dword [esp], ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
and edx, 0x7fff
call fcn.6ec43cc0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x18]
and esi, 0x7fff
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
cmp esi, 3
mov dword [esp + 0x20], eax
jbe 0x6ec5b711
mov dword [esp + 4], 0x24000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, edx
and eax, 0x7fff
cmp esi, eax
je 0x6ec5459a
mov eax, dword [ebp]
shl esi, 3
and edx, 7
or esi, 0xffffffc0
or edx, esi
mov byte [eax], 0x89
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
mov eax, dword [ebp]
mov esi, dword [esp + 0x28]
mov byte [eax], 0x88
add eax, 1
mov dword [ebp], eax
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, ebp
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 8], 0
and edx, 0x7fff
mov dword [esp], ecx
xor ecx, ecx
call fcn.6ec43cc0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov ecx, dword [edi + 0x10]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [ebp]
and edx, 0x7fff
mov byte [eax], 0x89
add eax, 1
mov dword [ebp], eax
mov eax, ebp
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
mov dword [esp], 0x17
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov ecx, dword [ebp]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov byte [ecx], 0x89
add ecx, 1
mov dword [ebp], ecx
xor ecx, ecx
mov dword [esp + 8], 0
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
mov dword [esp + 4], 0x17
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
mov esi, dword [ebp]
mov ecx, dword [edi + 0x10]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x18]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov byte [esi], 0x66
mov byte [esi + 1], 0x89
add esi, 2
mov dword [ebp], esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
mov esi, dword [ebp]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x18]
and edx, 0x7fff
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov byte [esi], 0x66
mov byte [esi + 1], 0x89
add esi, 2
mov dword [ebp], esi
and eax, 0x7fff
mov dword [esp + 4], ecx
xor ecx, ecx
mov dword [esp], eax
mov eax, ebp
mov dword [esp + 8], 0
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and edx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec43f70
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x18]
mov eax, dword [edi + 0x20]
mov esi, dword [ebp]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
mov edx, dword [edi + 0x10]
mov eax, dword [eax*8 + 0x6ec6b220]
and ecx, 0x7fff
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
mov byte [esi], 0x8b
add esi, 1
mov dword [ebp], esi
mov dword [esp + 4], ecx
xor ecx, ecx
mov dword [esp], eax
and edx, 0x7fff
mov eax, ebp
mov dword [esp + 8], 0
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, dword [edi + 0x10]
mov esi, dword [ebp]
mov ecx, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
mov byte [esi], 0xf
mov byte [esi + 1], 0xb7
add esi, 2
and eax, 0x7fff
mov dword [ebp], esi
and edx, 0x7fff
mov dword [esp], eax
mov eax, ebp
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x18]
mov eax, dword [edi + 0x20]
mov esi, dword [ebp]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
mov edx, dword [edi + 0x10]
mov eax, dword [eax*8 + 0x6ec6b220]
and ecx, 0x7fff
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
mov byte [esi], 0xf
mov byte [esi + 1], 0xb7
add esi, 2
mov dword [ebp], esi
and edx, 0x7fff
mov dword [esp + 4], ecx
xor ecx, ecx
mov dword [esp], eax
mov eax, ebp
mov dword [esp + 8], 0
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov ecx, dword [edi + 0x10]
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
and esi, 0x7fff
cmp esi, 3
jbe 0x6ec5b6b0
mov dword [esp + 4], 0x24000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x20], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x24], eax
mov eax, edx
and eax, 0x7fff
cmp esi, eax
je 0x6ec5492b
mov eax, dword [ebp]
shl esi, 3
and edx, 7
or esi, 0xffffffc0
or edx, esi
mov byte [eax], 0x89
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
mov eax, dword [ebp]
mov esi, dword [esp + 0x24]
mov byte [eax], 0x88
add eax, 1
mov dword [ebp], eax
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, ebp
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
mov dword [esp], 0x17
and edx, 0x7fff
call fcn.6ec43cc0
mov eax, dword [esp + 0x20]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and esi, 0x7fff
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
and ecx, 0x7fff
cmp esi, 3
jbe 0x6ec5b681
mov dword [esp + 4], 0x24000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x20], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x24], eax
mov eax, edx
and eax, 0x7fff
cmp esi, eax
je 0x6ec549ff
mov eax, dword [ebp]
shl esi, 3
and edx, 7
or esi, 0xffffffc0
or edx, esi
mov byte [eax], 0x89
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
mov eax, dword [ebp]
mov esi, dword [esp + 0x24]
mov byte [eax], 0x88
add eax, 1
mov dword [ebp], eax
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, ebp
mov dword [esp], ecx
xor ecx, ecx
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
and edx, 0x7fff
call fcn.6ec43cc0
mov eax, dword [esp + 0x20]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov ecx, dword [ebp]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov byte [ecx], 0x66
mov byte [ecx + 1], 0x89
add ecx, 2
mov dword [ebp], ecx
xor ecx, ecx
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
test byte [edx + 8], 2
je 0x6ec5b319
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
test esi, esi
jne 0x6ec5ca34
mov dword [esp], eax
mov edx, 2
mov eax, ebp
call fcn.6ec41730
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec57ec8
mov ecx, dword [eax + 0x10]
mov edx, 2
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec416d0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5a553
mov esi, dword [eax + 0x10]
mov eax, dword [edi + 0x18]
mov ecx, dword [edi + 0x20]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and edx, 0x7fff
call fcn.6ec43480
mov eax, dword [ebp]
sub esi, eax
lea edx, [esi - 6]
mov byte [eax], 0xf
mov byte [eax + 1], 0x84
mov dword [eax + 2], edx
add eax, 6
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x18]
mov ecx, esi
and eax, 0x7fff
and ecx, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], eax
mov ecx, eax
mov eax, dword [edi + 0x10]
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, edx
and eax, 0x7fff
cmp ecx, eax
je 0x6ec5d623
cmp dword [esp + 0x20], eax
je 0x6ec5b7cc
mov esi, dword [esp + 0x20]
xor edx, edx
mov dword [esp + 8], eax
mov eax, ebp
mov dword [esp + 4], 0
mov dword [esp], esi
call fcn.6ec43ff0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5a1b4
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
mov ecx, dword [edi + 0x18]
and edx, 0x7fff
call fcn.6ec44430
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5a38f
mov esi, dword [eax*8 + 0x6ec6b220]
mov edx, 8
xor ecx, ecx
mov dword [esp + 4], 0x17
mov eax, dword [edi + 0x18]
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec441a0
mov eax, dword [ebp]
lea edx, [esi + 1]
or edx, 0xffffffd8
mov byte [eax], 0xdd
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov ecx, dword [edi + 0x10]
test byte [ecx + 8], 2
je 0x6ec5ab90
mov eax, dword [edi + 0x20]
mov edx, dword [edi + 0x18]
mov ecx, dword [ecx + 0x10]
and edx, 0x7fff
test eax, eax
mov edx, dword [edx*8 + 0x6ec6b220]
jne 0x6ec5e50d
mov eax, dword [ebp]
mov esi, 0xfffffffc
lea edx, [eax + 1]
sub esi, edx
add ecx, esi
mov byte [eax], 0xe9
mov dword [eax + 1], ecx
add eax, 5
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec54cf8
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5c6fd
mov edx, dword [edi + 0x10]
and esi, 0x7fff
and eax, 0x7fff
mov ecx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
and edx, 0x7fff
cmp ecx, eax
je 0x6ec5dce3
mov dword [esp + 8], ecx
mov ecx, 6
mov dword [esp + 4], eax
mov eax, ebp
mov dword [esp], edx
xor edx, edx
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec59b4d
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4c9c0
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 4
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec42e00
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov ecx, dword [edi + 0x10]
mov edx, dword [edi + 0x20]
and eax, 0x7fff
and ecx, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov ecx, dword [ecx*8 + 0x6ec6b220]
and eax, 0x7fff
and ecx, 0x7fff
test edx, edx
jne 0x6ec5b646
mov dword [esp], eax
mov edx, 4
mov eax, ebp
call fcn.6ec4c4e0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5a5e1
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5c0e3
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4ccc0
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
test byte [edx + 8], 2
je 0x6ec5ab0b
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
test esi, esi
jne 0x6ec5d2ca
mov dword [esp], eax
mov edx, 0xe
mov eax, ebp
call fcn.6ec41730
jmp case.0x6ec4fa9a.1
mov ecx, dword [edi + 0x10]
mov eax, dword [edi + 0x20]
test byte [ecx + 8], 2
je 0x6ec5ace0
and eax, 0x7fff
mov ecx, dword [ecx + 0x10]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x18]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
cmp edx, eax
je 0x6ec5d25d
mov dword [esp + 4], edx
mov edx, 0xe
mov dword [esp], eax
mov eax, ebp
call fcn.6ec416d0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5a801
mov esi, dword [eax + 0x10]
mov edx, 0x28
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec434c0
mov eax, dword [ebp]
sub esi, eax
lea edx, [esi - 6]
mov byte [eax], 0xf
mov byte [eax + 1], 0x81
mov dword [eax + 2], edx
add eax, 6
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec59938
mov edx, dword [edi + 0x18]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41a10
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 8], 1
mov dword [esp + 4], 1
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and edx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4bb70
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec55030
mov edx, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
jbe 0x6ec5cb0d
and eax, 0x7fff
mov ecx, 0xa
mov eax, dword [eax*8 + 0x6ec6b220]
xor edx, edx
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec5a853
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4c9c0
mov ecx, dword [esp + 0x20]
mov edx, 0xb
mov dword [esp + 4], esi
mov esi, dword [esp + 0x28]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42e00
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec55150
mov edx, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
jbe 0x6ec5c831
and eax, 0x7fff
mov ecx, 0xb
mov eax, dword [eax*8 + 0x6ec6b220]
xor edx, edx
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
test byte [edx + 8], 2
je 0x6ec5b3f3
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
test esi, esi
jne 0x6ec5ca4c
mov dword [esp], eax
mov edx, 4
mov eax, ebp
call fcn.6ec41730
jmp case.0x6ec4fa9a.1
mov ecx, dword [edi + 0x10]
mov eax, dword [edi + 0x20]
test byte [ecx + 8], 2
je 0x6ec5a293
and eax, 0x7fff
mov ecx, dword [ecx + 0x10]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x18]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
cmp edx, eax
je 0x6ec5d00a
mov dword [esp + 4], edx
mov edx, 4
mov dword [esp], eax
mov eax, ebp
call fcn.6ec416d0
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea eax, [edx - 0x10]
cmp eax, 6
ja 0x6ec5525d
lea eax, [esi - 0x10]
cmp eax, 6
jbe 0x6ec5c7ec
and esi, 0x7fff
and edx, 0x7fff
mov eax, dword [esi*8 + 0x6ec6b220]
mov ecx, 3
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, dword [edx*8 + 0x6ec6b220]
xor edx, edx
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec59fbd
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4c9c0
mov ecx, dword [esp + 0x20]
mov edx, 7
mov dword [esp + 4], esi
mov esi, dword [esp + 0x28]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42cf0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov ecx, eax
mov dword [esp + 0x28], eax
mov eax, dword [edi + 0x18]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, eax
mov dword [esp + 0x24], eax
mov eax, dword [edi + 0x10]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov esi, eax
and esi, 0x7fff
cmp ecx, edx
mov dword [esp + 0x20], esi
je 0x6ec5b94e
cmp edx, dword [esp + 0x20]
je 0x6ec5dd81
cmp ecx, dword [esp + 0x20]
je 0x6ec5e19a
mov ecx, dword [ebp]
shl edx, 3
and eax, 7
or edx, 0xffffffc0
or edx, eax
mov byte [ecx + 1], dl
mov edx, dword [esp + 0x28]
mov byte [ecx], 0x89
mov byte [ecx + 2], 9
and edx, 7
shl edx, 3
or edx, 0xffffffc0
or eax, edx
mov byte [ecx + 3], al
add ecx, 4
mov dword [ebp], ecx
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5ab4f
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5bead
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4d2a0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec59676
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5546c
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e78f
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42160
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
test byte [edx + 8], 2
je 0x6ec5b35d
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
test esi, esi
jne 0x6ec5c9d4
mov dword [esp], eax
mov edx, 8
mov eax, ebp
call fcn.6ec41730
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec58c42
mov ecx, dword [eax + 0x10]
mov edx, 0xc
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec416d0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec58cdb
mov esi, dword [eax + 0x10]
xor edx, edx
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec434c0
mov eax, dword [ebp]
sub esi, eax
lea edx, [esi - 6]
mov byte [eax], 0xf
mov byte [eax + 1], 0x82
mov dword [eax + 2], edx
add eax, 6
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x18]
mov ecx, dword [esp + 0x20]
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
and ecx, 0x7fff
mov eax, esi
and eax, 0x7fff
mov dword [esp + 0x28], eax
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, eax
and edx, 0x7fff
cmp ecx, edx
je 0x6ec5c79f
cmp dword [esp + 0x28], edx
je 0x6ec55603
mov ecx, dword [esp + 0x28]
mov esi, eax
mov edx, dword [ebp]
and esi, 7
shl ecx, 3
or ecx, 0xffffffc0
or ecx, esi
mov byte [edx], 0x89
mov byte [edx + 1], cl
add edx, 2
mov dword [ebp], edx
mov ecx, dword [esp + 0x20]
and eax, 7
mov edx, dword [ebp]
and ecx, 7
shl ecx, 3
or ecx, 0xffffffc0
or ecx, eax
mov byte [edx], 0x11
mov byte [edx + 1], cl
add edx, 2
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec59a54
mov edx, dword [edi + 0x18]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and edx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec443e0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5aaa9
mov esi, dword [eax*8 + 0x6ec6b220]
mov edx, 8
xor ecx, ecx
mov eax, dword [edi + 0x20]
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec441a0
mov eax, dword [ebp]
lea edx, [esi + 1]
or edx, 0xffffffd8
mov byte [eax], 0xdd
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5b3a1
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov esi, edx
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
and esi, 0x7fff
je 0x6ec5ca64
mov edx, dword [ebp]
or esi, 0xffffffc8
mov ecx, esi
mov byte [edx + 1], cl
xor ecx, ecx
mov byte [edx], 0xd9
add edx, 2
mov dword [ebp], edx
mov edx, 0xa
mov dword [esp], eax
mov eax, ebp
mov dword [esp + 4], 0x17
call fcn.6ec441a0
mov eax, dword [ebp]
mov edx, esi
mov byte [eax], 0xd9
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5ad94
mov ecx, dword [eax + 0x10]
mov edx, 0xf
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec416d0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec557c5
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5c908
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41e20
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and edx, 0x7fff
call fcn.6ec41680
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and edx, 0x7fff
call fcn.6ec43650
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
mov edx, 5
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec435b0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
mov edx, 5
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c080
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov ecx, dword [edi + 0x10]
mov edx, dword [edi + 0x20]
and eax, 0x7fff
and ecx, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov ecx, dword [ecx*8 + 0x6ec6b220]
and eax, 0x7fff
and ecx, 0x7fff
test edx, edx
jne 0x6ec5b62e
mov dword [esp], eax
mov edx, 8
mov eax, ebp
call fcn.6ec4c4e0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
mov edx, dword [edi + 0x10]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov eax, dword [edi + 0x18]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
cmp ecx, eax
je 0x6ec5ccd5
mov dword [esp + 4], ecx
mov ecx, edx
mov edx, 0xc
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c340
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
mov edx, dword [edi + 0x10]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov eax, dword [edi + 0x18]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
cmp ecx, eax
je 0x6ec5ce41
mov dword [esp + 4], ecx
mov ecx, edx
mov edx, 2
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c340
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov ecx, dword [edi + 0x10]
mov edx, dword [edi + 0x20]
and eax, 0x7fff
and ecx, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov ecx, dword [ecx*8 + 0x6ec6b220]
and eax, 0x7fff
and ecx, 0x7fff
test edx, edx
jne 0x6ec5b6f9
mov dword [esp], eax
mov edx, 4
mov eax, ebp
call fcn.6ec4c4e0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
mov edx, 0xe
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c670
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
mov edx, dword [edi + 0x10]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov eax, dword [edi + 0x18]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
cmp ecx, eax
je 0x6ec5ce4f
mov dword [esp + 4], ecx
mov ecx, edx
mov edx, 0xd
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c340
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
mov edx, dword [edi + 0x10]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov eax, dword [edi + 0x18]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
cmp ecx, eax
je 0x6ec5ca04
mov dword [esp + 4], ecx
mov ecx, edx
mov edx, 4
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c340
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
mov edx, dword [edi + 0x10]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov eax, dword [edi + 0x18]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
cmp ecx, eax
je 0x6ec5c7db
mov dword [esp + 4], ecx
mov ecx, edx
mov edx, 6
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c340
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
mov edx, dword [edi + 0x10]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov eax, dword [edi + 0x18]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
cmp ecx, eax
je 0x6ec5ce7f
mov dword [esp + 4], ecx
mov ecx, edx
mov edx, 0xe
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c340
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 8], 0
mov dword [esp + 4], 1
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and edx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4bb70
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5a110
mov edx, dword [edi + 0x18]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5bf3d
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4cdf0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5b2bc
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec55ce2
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e167
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41f70
jmp case.0x6ec4fa9a.1
mov ecx, dword [edi + 0x10]
mov eax, dword [edi + 0x20]
test byte [ecx + 8], 2
je 0x6ec5b437
and eax, 0x7fff
mov ecx, dword [ecx + 0x10]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x18]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
cmp edx, eax
je 0x6ec5ca9a
mov dword [esp + 4], edx
mov edx, 0xd
mov dword [esp], eax
mov eax, ebp
call fcn.6ec416d0
jmp case.0x6ec4fa9a.1
mov ecx, dword [edi + 0x10]
mov eax, dword [edi + 0x20]
test byte [ecx + 8], 2
je 0x6ec5ac89
and eax, 0x7fff
mov ecx, dword [ecx + 0x10]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x18]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
cmp edx, eax
je 0x6ec5d2aa
mov dword [esp + 4], edx
mov edx, 3
mov dword [esp], eax
mov eax, ebp
call fcn.6ec416d0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5a3e1
mov esi, dword [eax + 0x10]
mov edx, 0x28
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec434c0
mov eax, dword [ebp]
sub esi, eax
lea edx, [esi - 6]
mov byte [eax], 0xf
mov byte [eax + 1], pe_nt_image_headers32
mov dword [eax + 2], edx
add eax, 6
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5a76f
mov edx, dword [edi + 0x18]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41970
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x18]
and esi, 0x7fff
and eax, 0x7fff
mov edx, esi
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec440a0
mov ecx, esi
mov edx, esi
mov eax, ebp
call fcn.6ec43650
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec5a8f8
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4c9c0
mov ecx, dword [esp + 0x20]
mov edx, 0xa
mov dword [esp + 4], esi
mov esi, dword [esp + 0x28]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42e00
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec5a99d
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4c9c0
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec44b90
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x18]
mov ecx, dword [edx + 0x10]
ja 0x6ec5aa4a
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4c9c0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x18]
ja 0x6ec595fe
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec5bed8
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and ecx, 0x7fff
and edx, 0x7fff
call fcn.6ec43940
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5a062
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec560a1
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e1f4
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42080
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and edx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4bb70
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4b6b0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov ecx, eax
mov dword [esp + 0x28], eax
mov eax, dword [edi + 0x18]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, eax
mov dword [esp + 0x24], eax
mov eax, dword [edi + 0x10]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov esi, eax
and esi, 0x7fff
cmp ecx, edx
mov dword [esp + 0x20], esi
je 0x6ec5b838
cmp edx, dword [esp + 0x20]
je 0x6ec5de02
cmp ecx, dword [esp + 0x20]
je 0x6ec5e829
mov ecx, dword [ebp]
shl edx, 3
and eax, 7
or edx, 0xffffffc0
or edx, eax
mov byte [ecx + 1], dl
mov edx, dword [esp + 0x28]
mov byte [ecx], 0x89
mov byte [ecx + 2], 0x21
and edx, 7
shl edx, 3
or edx, 0xffffffc0
or eax, edx
mov byte [ecx + 3], al
add ecx, 4
mov dword [ebp], ecx
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov ecx, dword [edi + 0x20]
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x14]
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x20000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x24], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x28], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x3c], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec436d0
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x20]
mov dword [esp + 8], 0
mov dword [esp], esi
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, dword [esp + 0x24]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec4b180
mov eax, dword [esp + 0x28]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 8], 0
mov dword [esp + 4], 1
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4b6b0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x14]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 8], 0
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4b180
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x28]
test eax, eax
je 0x6ec5ddcd
mov eax, dword [ebp]
and eax, 3
jne 0x6ec5b85f
or word [edi + 8], 2
mov eax, dword [ebp]
mov dword [edi + 0x10], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [ebp]
mov dword [edi + 0x10], eax
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 1]
and eax, dword [ebp]
je case.0x6ec4fa9a.1
sub edx, eax
mov eax, ebp
call fcn.6ec439a0
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 0x10]
cmp eax, 6
mov eax, dword [edi + 0x18]
ja 0x6ec5641a
lea ecx, [eax - 0x10]
cmp ecx, 6
jbe 0x6ec5cb53
mov ecx, dword [edi + 0x20]
and eax, 0x7fff
and edx, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov esi, dword [edx*8 + 0x6ec6b220]
mov ecx, dword [ecx + 0x10]
and eax, 0x7fff
mov dword [esp + 4], 0xc0000000
and esi, 0x7fff
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4cbb0
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41ca0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec5a2ea
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4c9c0
mov ecx, dword [esp + 0x20]
mov edx, 3
mov dword [esp + 4], esi
mov esi, dword [esp + 0x28]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42cf0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea eax, [edx - 0x10]
cmp eax, 6
ja 0x6ec5657f
lea eax, [esi - 0x10]
cmp eax, 6
jbe 0x6ec5d16b
and esi, 0x7fff
and edx, 0x7fff
mov eax, dword [esi*8 + 0x6ec6b220]
mov ecx, 7
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, dword [edx*8 + 0x6ec6b220]
xor edx, edx
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 0x10]
cmp eax, 6
mov eax, dword [edi + 0x18]
ja 0x6ec565ef
lea ecx, [eax - 0x10]
cmp ecx, 6
jbe 0x6ec5c877
mov ecx, dword [edi + 0x20]
and eax, 0x7fff
and edx, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov esi, dword [edx*8 + 0x6ec6b220]
mov ecx, dword [ecx + 0x10]
and eax, 0x7fff
mov dword [esp + 4], 0xc0000000
and esi, 0x7fff
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4cbb0
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c8e0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov esi, dword [edi + 0x10]
lea eax, [esi - 0x10]
cmp eax, 6
mov eax, dword [edi + 0x18]
ja 0x6ec566a5
lea edx, [eax - 0x10]
cmp edx, 6
jbe 0x6ec5dddc
and esi, 0x7fff
and eax, 0x7fff
mov ecx, dword [esi*8 + 0x6ec6b220]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [ebp]
and ecx, 7
shl ecx, 3
and edx, 7
or ecx, 0xffffffc0
or edx, ecx
mov byte [eax], 0xf3
mov byte [eax + 1], 0xf
mov byte [eax + 2], 0x51
mov byte [eax + 3], dl
add eax, 4
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 0x10]
cmp eax, 6
mov eax, dword [edi + 0x18]
ja 0x6ec56702
lea ecx, [eax - 0x10]
cmp ecx, 6
jbe 0x6ec5d049
mov ecx, dword [edi + 0x20]
and edx, 0x7fff
and eax, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
mov esi, dword [eax*8 + 0x6ec6b220]
mov ecx, dword [ecx + 0x10]
and edx, 0x7fff
mov dword [esp + 4], 0xc0000000
and esi, 0x7fff
mov dword [esp], ebp
mov dword [esp + 0x20], edx
mov dword [esp + 0x1c], ecx
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4cbb0
mov edx, dword [esp + 0x28]
mov eax, ebp
mov dword [esp], esi
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [esp + 0x20]
and ecx, 0x7fff
call fcn.6ec4c800
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 0x10]
cmp eax, 6
ja 0x6ec5bb79
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [eax - 0x10]
cmp ecx, 6
ja 0x6ec567c7
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e84f
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov eax, dword [esi*8 + 0x6ec6b220]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
and edx, 0x7fff
mov eax, ebp
call fcn.6ec4c8e0
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 0x10]
cmp eax, 6
ja 0x6ec5bb6e
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [eax - 0x10]
cmp ecx, 6
ja 0x6ec56836
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e8da
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov eax, dword [esi*8 + 0x6ec6b220]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
and edx, 0x7fff
mov eax, ebp
call fcn.6ec41ca0
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
lea eax, [edx - 0x10]
cmp eax, 6
mov eax, dword [edi + 0x18]
ja 0x6ec56896
lea ecx, [eax - 0x10]
cmp ecx, 6
jbe 0x6ec5d0da
mov ecx, dword [edi + 0x20]
and eax, 0x7fff
and edx, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov esi, dword [edx*8 + 0x6ec6b220]
mov ecx, dword [ecx + 0x10]
and eax, 0x7fff
mov dword [esp + 4], 0xc0000000
and esi, 0x7fff
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4cbb0
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c800
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea eax, [edx - 0x10]
cmp eax, 6
ja 0x6ec5694c
lea eax, [esi - 0x10]
cmp eax, 6
jbe 0x6ec5c945
and esi, 0x7fff
and edx, 0x7fff
mov eax, dword [esi*8 + 0x6ec6b220]
mov ecx, 2
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, dword [edx*8 + 0x6ec6b220]
xor edx, edx
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec5af83
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4c9c0
mov ecx, dword [esp + 0x20]
mov edx, 6
mov dword [esp + 4], esi
mov esi, dword [esp + 0x28]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42cf0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec5a6ca
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4c9c0
mov ecx, dword [esp + 0x20]
mov edx, 2
mov dword [esp + 4], esi
mov esi, dword [esp + 0x28]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42cf0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 8], 1
mov dword [esp + 4], 0
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and edx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4bb70
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5a0bf
mov edx, dword [edi + 0x18]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
mov edx, dword [edi + 0x10]
mov dword [esp], eax
mov eax, ebp
and ecx, 0x7fff
call fcn.6ec44350
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec58d72
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
and esi, 0x7fff
je 0x6ec5c98a
mov ecx, dword [ebp]
or esi, 0xffffffc8
mov dword [esp + 0x24], esi
mov byte [ecx], 0xd9
mov dword [esp + 0x20], ecx
movzx ecx, byte [esp + 0x24]
mov esi, dword [esp + 0x20]
mov byte [esi + 1], cl
mov ecx, esi
add ecx, 2
mov dword [ebp], ecx
xor ecx, ecx
mov dword [esp + 4], edx
mov edx, 0xa
mov dword [esp], eax
mov eax, ebp
call fcn.6ec441a0
mov eax, dword [ebp]
movzx edx, byte [esp + 0x24]
mov byte [eax], 0xd9
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov ecx, eax
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x18]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, eax
mov dword [esp + 0x28], eax
mov eax, dword [edi + 0x10]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov esi, eax
and esi, 0x7fff
cmp ecx, edx
mov dword [esp + 0x24], esi
je 0x6ec5d9b0
cmp ecx, dword [esp + 0x24]
je 0x6ec5d9d3
cmp edx, dword [esp + 0x24]
je 0x6ec56cb2
mov ecx, dword [ebp]
shl edx, 3
mov esi, eax
or edx, 0xffffffc0
and esi, 7
or edx, esi
mov byte [ecx], 0x89
mov byte [ecx + 1], dl
add ecx, 2
mov dword [ebp], ecx
mov ecx, dword [esp + 0x20]
and eax, 7
mov edx, dword [ebp]
and ecx, 7
shl ecx, 3
or ecx, 0xffffffc0
or ecx, eax
mov byte [edx], 0x29
mov byte [edx + 1], cl
add edx, 2
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
mov esi, dword [edi + 0x20]
mov eax, dword [edi + 0x18]
and edx, 0x7fff
mov dword [esp + 0x20], esi
mov esi, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov ecx, esi
and ecx, 0x7fff
and eax, 0x7fff
cmp eax, ecx
je 0x6ec56d29
mov edx, dword [ebp]
shl eax, 3
and esi, 7
or eax, 0xffffffc0
or eax, esi
mov byte [edx], 0x89
mov byte [edx + 1], al
add edx, 2
mov dword [ebp], edx
mov eax, dword [esp + 0x20]
mov edx, 0x10
mov dword [esp], eax
mov eax, ebp
call fcn.6ec434c0
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
test byte [edx + 8], 2
je 0x6ec58f8c
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
test esi, esi
jne 0x6ec5c9a4
mov dword [esp], eax
mov edx, 5
mov eax, ebp
call fcn.6ec41730
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec57e2f
mov ecx, dword [eax + 0x10]
mov edx, 5
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec416d0
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
test byte [edx + 8], 2
je 0x6ec599c8
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
test esi, esi
jne 0x6ec5c743
mov dword [esp], eax
mov edx, 5
mov eax, ebp
call fcn.6ec41730
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x18]
mov eax, dword [edi + 0x20]
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
lea esi, [eax + 1]
mov dword [esp + 0x24], esi
mov ecx, edx
mov dword [esp + 0x20], edx
mov edx, dword [edi + 0x10]
and ecx, 0x7fff
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
mov dword [esp + 0x28], edx
and edx, 0x7fff
cmp esi, 9
jbe switch.0x6ec58ec1
test eax, eax
jle 0x6ec56e6f
lea esi, [eax - 1]
test esi, eax
je 0x6ec5ec86
movsx edx, al
cmp eax, edx
mov edx, dword [ebp]
je 0x6ec5ec98
mov ecx, dword [esp + 0x28]
mov esi, dword [esp + 0x20]
mov byte [edx], 0x69
mov dword [edx + 2], eax
and ecx, 7
shl ecx, 3
and esi, 7
or ecx, 0xffffffc0
or ecx, esi
mov byte [edx + 1], cl
add edx, 6
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, edx
and eax, 0x7fff
mov dword [esp + 0x24], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov ecx, esi
and eax, 0x7fff
and ecx, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x20], ecx
mov ecx, eax
and ecx, 0x7fff
cmp dword [esp + 0x20], ecx
je 0x6ec5d2e2
cmp dword [esp + 0x24], ecx
je 0x6ec5dbc0
mov esi, dword [esp + 0x20]
and eax, 7
and edx, 7
mov ecx, dword [ebp]
mov dword [esp + 0x24], eax
shl esi, 3
or esi, 0xffffffc0
or esi, eax
mov eax, esi
mov byte [ecx + 1], al
mov eax, dword [esp + 0x24]
mov byte [ecx], 0x89
mov byte [ecx + 2], 0xf
mov byte [ecx + 3], 0xaf
shl eax, 3
or eax, 0xffffffc0
or eax, edx
mov byte [ecx + 4], al
add ecx, 5
mov dword [ebp], ecx
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec58e64
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec56f71
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e884
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec420e0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
xor ecx, ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and esi, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [ebp]
and edx, 0x7fff
mov byte [eax], 0x8b
add eax, 1
mov dword [ebp], eax
mov eax, ebp
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
mov dword [esp], esi
call fcn.6ec43cc0
mov ecx, esi
mov edx, esi
mov dword [esp], 4
mov eax, ebp
call fcn.6ec44030
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
mov ecx, 5
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [ebp + 0x1c]
and edx, 0x7fff
mov eax, dword [eax + 0x68]
mov eax, dword [eax + 8]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec44030
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov ecx, dword [edi + 0x10]
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, ecx
sub ecx, 0x10
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
and esi, 0x7fff
and edx, 0x7fff
cmp ecx, 6
jbe 0x6ec5b620
mov dword [esp + 0xc], edx
mov ecx, 0x10
mov edx, 0xf2
mov dword [esp + 8], 0x17
mov eax, ebp
mov dword [esp + 4], esi
mov dword [esp], 0
call fcn.6ec44560
mov dword [esp], 8
mov ecx, esi
mov edx, esi
mov eax, ebp
call fcn.6ec44030
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x18]
mov ecx, dword [esp + 0x20]
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
and ecx, 0x7fff
mov eax, dword [edi + 0x10]
mov edx, esi
and eax, 0x7fff
and edx, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], edx
mov edx, eax
and edx, 0x7fff
cmp ecx, edx
je 0x6ec5c75b
cmp dword [esp + 0x28], edx
je 0x6ec57137
mov ecx, dword [esp + 0x28]
mov esi, eax
mov edx, dword [ebp]
and esi, 7
shl ecx, 3
or ecx, 0xffffffc0
or ecx, esi
mov byte [edx], 0x89
mov byte [edx + 1], cl
add edx, 2
mov dword [ebp], edx
mov ecx, dword [esp + 0x20]
and eax, 7
mov edx, dword [ebp]
and ecx, 7
shl ecx, 3
or ecx, 0xffffffc0
or ecx, eax
mov byte [edx], 1
mov byte [edx + 1], cl
add edx, 2
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec57177
mov edx, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
jbe 0x6ec5cdb3
and eax, 0x7fff
mov ecx, 2
mov eax, dword [eax*8 + 0x6ec6b220]
xor edx, edx
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec5ade5
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4c9c0
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec43150
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec57290
mov edx, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
jbe 0x6ec5cdfa
and eax, 0x7fff
mov ecx, 7
mov eax, dword [eax*8 + 0x6ec6b220]
xor edx, edx
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x14]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 8], 0
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and edx, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4b070
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x14]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 8], 0
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4ad70
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 8], 1
mov dword [esp + 4], 1
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4b6b0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x14]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 8], 1
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4b180
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 8], 1
mov dword [esp + 4], 0
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4b6b0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, eax
and edx, 0x7fff
cmp esi, edx
mov dword [esp + 0x20], eax
jne 0x6ec5ba5f
mov edx, ecx
mov ecx, dword [esp + 0x20]
mov eax, dword [ebp]
and edx, 7
shl edx, 3
or edx, 0xffffffc0
and ecx, 7
or edx, ecx
mov byte [eax], 0x19
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x20]
mov eax, dword [edi + 0x18]
mov dword [esp + 0x20], edx
mov edx, dword [edi + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov esi, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
mov ecx, esi
and ecx, 0x7fff
cmp eax, ecx
je 0x6ec57597
mov edx, dword [ebp]
shl eax, 3
and esi, 7
or eax, 0xffffffc0
or eax, esi
mov byte [edx], 0x89
mov byte [edx + 1], al
add edx, 2
mov dword [ebp], edx
mov esi, dword [esp + 0x20]
mov edx, 0x28
mov eax, ebp
mov dword [esp], esi
call fcn.6ec434c0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec57d83
mov edx, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea ecx, [edx - 0x10]
cmp ecx, 6
ja 0x6ec575d6
lea ecx, [esi - 0x10]
cmp ecx, 6
jbe 0x6ec5e7c2
and edx, 0x7fff
and esi, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41f10
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec57de0
mov esi, dword [eax + 0x10]
xor edx, edx
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec434c0
mov eax, dword [ebp]
sub esi, eax
lea edx, [esi - 6]
mov byte [eax], 0xf
mov byte [eax + 1], 0x81
mov dword [eax + 2], edx
add eax, 6
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec58e1c
mov edx, dword [edi + 0x18]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec418d0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and edx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec440a0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec576fd
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5cc57
mov edx, dword [edi + 0x10]
and esi, 0x7fff
and eax, 0x7fff
mov ecx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
and edx, 0x7fff
cmp ecx, eax
je 0x6ec5dad1
mov dword [esp + 8], ecx
mov ecx, 4
mov dword [esp + 4], eax
mov eax, ebp
mov dword [esp], edx
xor edx, edx
call fcn.6ec41ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec5b032
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4c9c0
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 7
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec42cf0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec5ae7d
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4c9c0
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 6
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec42cf0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
mov edx, dword [edi + 0x20]
mov ecx, dword [edx + 0x10]
ja 0x6ec57f6a
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0x40000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4c9c0
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 3
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec42cf0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5a7b7
mov esi, dword [eax + 0x10]
mov eax, dword [edi + 0x18]
mov ecx, dword [edi + 0x20]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and edx, 0x7fff
call fcn.6ec43480
mov eax, dword [ebp]
sub esi, eax
lea edx, [esi - 6]
mov byte [eax], 0xf
mov byte [eax + 1], 0x85
mov dword [eax + 2], edx
add eax, 6
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x14]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 8], 1
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4ad70
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec58fd0
mov esi, dword [eax + 0x10]
xor edx, edx
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec434c0
mov eax, dword [ebp]
sub esi, eax
lea edx, [esi - 6]
mov byte [eax], 0xf
mov byte [eax + 1], pe_nt_image_headers32
mov dword [eax + 2], edx
add eax, 6
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec58c93
mov edx, dword [edi + 0x18]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41830
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec57e80
mov edx, dword [edi + 0x18]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41880
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec57f19
mov ecx, dword [eax + 0x10]
mov edx, 7
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec416d0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec5800f
mov edx, dword [edi + 0x18]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec417e0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
test byte [eax + 8], 2
je 0x6ec58d2a
mov edx, dword [edi + 0x18]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41790
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
mov esi, dword [edi + 0x20]
mov eax, dword [edi + 0x18]
and edx, 0x7fff
mov dword [esp + 0x20], esi
mov esi, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov ecx, esi
and ecx, 0x7fff
and eax, 0x7fff
cmp eax, ecx
je 0x6ec57c39
mov edx, dword [ebp]
shl eax, 3
and esi, 7
or eax, 0xffffffc0
or eax, esi
mov byte [edx], 0x89
mov byte [edx + 1], al
add edx, 2
mov dword [ebp], edx
mov eax, dword [esp + 0x20]
xor edx, edx
mov dword [esp], eax
mov eax, ebp
call fcn.6ec434c0
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x20]
mov eax, dword [edi + 0x18]
mov dword [esp + 0x20], edx
mov edx, dword [edi + 0x10]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov esi, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
mov ecx, esi
and ecx, 0x7fff
cmp eax, ecx
je 0x6ec57c9f
mov edx, dword [ebp]
shl eax, 3
and esi, 7
or eax, 0xffffffc0
or eax, esi
mov byte [edx], 0x89
mov byte [edx + 1], al
add edx, 2
mov dword [ebp], edx
mov esi, dword [esp + 0x20]
mov edx, 0x18
mov eax, ebp
mov dword [esp], esi
call fcn.6ec434c0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and edx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec44030
jmp case.0x6ec4fa9a.1
cmp eax, 0xffffffff
je 0x6ec5ec76
cmp ecx, dword [esp + 0x20]
je 0x6ec57d1c
mov edx, dword [ebp]
shl ecx, 3
and esi, 7
or ecx, 0xffffffc0
or ecx, esi
mov byte [edx], 0x89
mov byte [edx + 1], cl
add edx, 2
mov dword [ebp], edx
mov ecx, dword [esp + 0x20]
mov edx, 0x30
mov dword [esp], eax
mov eax, ebp
call fcn.6ec434c0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
xor edx, edx
mov esi, dword [ebp]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec434c0
mov eax, dword [ebp]
mov ecx, edi
sub esi, eax
lea edx, [esi - 6]
mov dword [eax + 2], edx
lea edx, [eax + 6]
mov byte [eax], 0xf
mov byte [eax + 1], 0x83
mov eax, dword [esp + 0x2c]
mov dword [ebp], edx
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec57d9d
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5e6d5
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec41f10
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
xor edx, edx
mov esi, dword [ebp]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec434c0
mov eax, dword [ebp]
mov ecx, edi
sub esi, eax
lea edx, [esi - 6]
mov dword [eax + 2], edx
lea edx, [eax + 6]
mov byte [eax], 0xf
mov byte [eax + 1], 0x81
mov eax, dword [esp + 0x2c]
mov dword [ebp], edx
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
mov edx, 5
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec416d0
mov edx, dword [ebp]
mov ecx, edi
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec41880
mov ecx, edi
mov edx, eax
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
mov edx, 2
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec416d0
mov edx, dword [ebp]
mov ecx, edi
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
mov edx, 7
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec416d0
mov edx, dword [ebp]
mov ecx, edi
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4cbb0
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [ecx*8 + 0x6ec6b220]
mov ecx, 3
mov dword [esp + 8], edx
xor edx, edx
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec417e0
mov ecx, edi
mov edx, eax
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, 0x11
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 0xf2
mov dword [esp + 8], 0x17
and eax, 0x7fff
mov dword [esp + 0xc], eax
mov eax, dword [edi + 0x10]
mov dword [esp], 0
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec44560
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec580c3
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5e0ed
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec42400
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec58120
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5e0ba
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec42280
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5c31b
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4d750
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec581be
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5e47c
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec422e0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5821b
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5ea94
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec421c0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5c19d
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4d4f0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [ebp]
mov esi, 0xfffffffc
mov ecx, dword [edi + 0x10]
lea edx, [eax + 1]
sub esi, edx
mov edx, esi
add edx, ecx
mov byte [eax], 0xe9
mov dword [eax + 1], edx
add eax, 5
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5c499
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4d880
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5831f
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5de28
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec427f0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5837c
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5e448
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec42c90
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5c21d
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4e860
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5c370
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4e730
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and edx, 0x7fff
and eax, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and edx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec445c0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5bdda
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4f1d0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec584d3
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5e627
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec42c30
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5c56e
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4e3b0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5c247
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4e280
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec585b2
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5def4
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec428a0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5c3c5
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4e600
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4e120
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5c4ee
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4ed10
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5c41a
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4ebe0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5c46f
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4eab0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5bd5a
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4e980
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5be04
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4ef70
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, 0x10
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 0xf2
mov dword [esp + 8], 0x17
mov dword [esp + 4], 0x17
and eax, 0x7fff
mov dword [esp + 0xc], eax
mov eax, dword [edi + 0x18]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec44560
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5c29c
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4ee40
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5bcaf
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4e4e0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec58876
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5df28
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec42ab0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, 0x11
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 0xf2
mov dword [esp + 8], 0x17
mov dword [esp + 4], 0x17
and eax, 0x7fff
mov dword [esp + 0xc], eax
mov eax, dword [edi + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec44560
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, 0x11
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 0xf2
mov dword [esp + 8], 0x17
and eax, 0x7fff
mov dword [esp + 0xc], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec44560
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4e120
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [ecx*8 + 0x6ec6b220]
mov ecx, 7
mov dword [esp + 8], edx
mov edx, 1
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4e120
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [ecx*8 + 0x6ec6b220]
mov ecx, 2
mov dword [esp + 8], edx
mov edx, 1
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4e120
mov edx, dword [esp + 0x28]
mov eax, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
cmp dword [esp + 0x20], eax
je 0x6ec5e65b
mov ecx, dword [esp + 0x20]
mov edx, 1
mov dword [esp + 4], eax
mov eax, ebp
mov dword [esp], esi
mov dword [esp + 8], ecx
mov ecx, 6
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x28]
test eax, eax
je 0x6ec58b60
mov eax, dword [ebp]
and eax, 3
jne 0x6ec5dd6e
or word [edi + 8], 2
mov eax, dword [ebp]
mov dword [edi + 0x10], eax
mov edx, dword [ebp + 0x1c]
mov eax, dword [edx + 0x68]
test byte [eax + 0x44], 2
jne 0x6ec58c36
mov eax, dword [ebp]
mov byte [eax], 0x89
mov byte [eax + 1], 0xec
mov edx, dword [ebp + 0x1c]
add eax, 2
mov dword [ebp], eax
mov eax, dword [edx + 0x68]
test byte [eax + 0x38], 0x20
je 0x6ec58bb2
mov edx, 7
mov ecx, 4
mov dword [esp], 0xc
mov eax, ebp
call fcn.6ec43f70
mov edx, dword [ebp + 0x1c]
mov eax, dword [edx + 0x68]
test byte [eax + 0x38], 0x10
je 0x6ec58bd6
mov edx, 6
mov ecx, 4
mov dword [esp], 8
mov eax, ebp
call fcn.6ec43f70
mov edx, dword [ebp + 0x1c]
mov eax, dword [edx + 0x68]
test byte [eax + 0x38], 8
je 0x6ec58bf7
mov dword [esp], 4
mov ecx, 4
mov edx, 3
mov eax, ebp
call fcn.6ec43f70
mov ecx, 4
mov edx, 5
mov eax, ebp
mov dword [esp], 0
call fcn.6ec43f70
mov edx, 4
mov eax, ebp
mov dword [esp], 0x10
mov ecx, 4
call fcn.6ec44030
mov eax, dword [ebp]
mov byte [eax], 0xc3
mov edx, dword [ebp + 0x1c]
add eax, 1
mov dword [ebp], eax
mov dword [edx + 0x68], 0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
mov edx, 0xc
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec416d0
mov edx, dword [ebp]
mov ecx, edi
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec41830
mov ecx, edi
mov edx, eax
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
xor edx, edx
mov esi, dword [ebp]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec434c0
mov eax, dword [ebp]
mov ecx, edi
sub esi, eax
lea edx, [esi - 6]
mov dword [eax + 2], edx
lea edx, [eax + 6]
mov byte [eax], 0xf
mov byte [eax + 1], 0x82
mov eax, dword [esp + 0x2c]
mov dword [ebp], edx
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec41790
mov ecx, edi
mov edx, eax
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, 0x11
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 0xf3
and eax, 0x7fff
mov dword [esp + 0xc], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, dword [edi + 0x10]
mov dword [esp], 0
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec44560
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec41920
mov ecx, edi
mov edx, eax
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec418d0
mov ecx, edi
mov edx, eax
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec58e7e
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5e8af
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec420e0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
jmp dword [esi*4 + 0x6ec75d48]
mov dword [esp + 8], edx
mov eax, ebp
xor edx, edx
mov dword [esp], ecx
mov ecx, 0x17
mov dword [esp + 4], 3
call fcn.6ec43ff0
jmp case.0x6ec4fa9a.1
mov dword [esp + 8], edx
mov eax, ebp
xor edx, edx
mov dword [esp], ecx
mov ecx, 0x17
mov dword [esp + 4], 2
call fcn.6ec43ff0
jmp case.0x6ec4fa9a.1
mov dword [esp + 8], edx
mov eax, ebp
xor edx, edx
mov dword [esp], ecx
mov ecx, 0x17
mov dword [esp + 4], 1
call fcn.6ec43ff0
jmp case.0x6ec4fa9a.1
cmp ecx, edx
je case.0x6ec4fa9a.1
mov edx, dword [esp + 0x28]
shl ecx, 3
mov eax, dword [ebp]
or ecx, 0xffffffc0
and edx, 7
or ecx, edx
mov byte [eax], 0x89
mov byte [eax + 1], cl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov ecx, dword [esp + 0x28]
mov eax, dword [ebp]
and ecx, 7
lea edx, [ecx*8]
or edx, 0xffffffc0
or edx, ecx
mov byte [eax], 0x31
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, ebp
call fcn.6ec43650
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, dword [edi + 0x20]
mov ecx, dword [ebp]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
test edx, edx
jne 0x6ec5d22d
mov dword [esp], eax
mov edx, 5
mov eax, ebp
call fcn.6ec41730
mov edx, dword [ebp]
mov ecx, edi
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
xor edx, edx
mov esi, dword [ebp]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec434c0
mov eax, dword [ebp]
mov ecx, edi
sub esi, eax
lea edx, [esi - 6]
mov dword [eax + 2], edx
lea edx, [eax + 6]
mov byte [eax], 0xf
mov byte [eax + 1], pe_nt_image_headers32
mov eax, dword [esp + 0x2c]
mov dword [ebp], edx
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, dword [edi + 0x20]
mov ecx, dword [ebp]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
test edx, edx
jne 0x6ec5d1b0
mov dword [esp], eax
mov edx, 9
mov eax, ebp
call fcn.6ec41730
mov edx, dword [ebp]
mov ecx, edi
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4cbb0
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41d30
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec59115
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5e3e1
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec42bd0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec59172
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5e3ad
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec429f0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4e120
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42550
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5bfe7
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4f0a0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4e120
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42460
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec59340
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5e25c
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec42a50
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4e120
mov edx, dword [esp + 0x28]
mov eax, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
cmp dword [esp + 0x20], eax
je 0x6ec5e354
mov ecx, dword [esp + 0x20]
mov edx, 1
mov dword [esp + 8], eax
mov eax, ebp
mov dword [esp], esi
mov dword [esp + 4], ecx
mov ecx, 4
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5944f
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5e2ee
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec42b10
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec594ac
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5e2c3
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec42960
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4e120
mov edx, dword [esp + 0x28]
mov eax, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
cmp dword [esp + 0x20], eax
je 0x6ec5ebc4
mov ecx, dword [esp + 0x20]
mov edx, 1
mov dword [esp + 8], eax
mov eax, ebp
mov dword [esp], esi
mov dword [esp + 4], ecx
mov ecx, 6
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec595bb
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5e751
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec42850
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
lea ecx, [edx - 8]
cmp ecx, 7
ja 0x6ec5bc7e
and eax, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and ecx, 0x7fff
and edx, 0x7fff
call fcn.6ec41be0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5be83
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4cf20
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec59690
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5e66e
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec42160
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec596ed
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5e589
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec42340
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5bfbd
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4d9b0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5978b
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5eb30
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec423a0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4e120
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 1
mov dword [esp + 4], ecx
mov ecx, 7
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, ebp
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5c03c
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4d040
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5c642
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4d170
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
mov edx, 0xf
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec43550
mov edx, dword [ebp]
mov ecx, edi
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec41a10
mov ecx, edi
mov edx, eax
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec41a60
mov ecx, edi
mov edx, eax
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, dword [edi + 0x20]
mov ecx, dword [ebp]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
test edx, edx
jne 0x6ec5caf5
mov dword [esp], eax
mov edx, 5
mov eax, ebp
call fcn.6ec41730
mov edx, dword [ebp]
mov ecx, edi
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec419c0
mov ecx, edi
mov edx, eax
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, 0x10
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 0xf3
mov dword [esp + 8], 0x17
and eax, 0x7fff
mov dword [esp + 0xc], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x20]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec44560
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4e120
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 1
mov dword [esp + 4], ecx
mov ecx, 3
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, ebp
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4cbb0
mov edx, dword [esp + 0x28]
mov eax, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
cmp dword [esp + 0x20], eax
je 0x6ec5e154
mov ecx, dword [esp + 0x20]
xor edx, edx
mov dword [esp + 8], eax
mov eax, ebp
mov dword [esp], esi
mov dword [esp + 4], ecx
mov ecx, 4
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4cbb0
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [ecx*8 + 0x6ec6b220]
mov ecx, 2
mov dword [esp + 8], edx
xor edx, edx
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec59cbb
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5ea2d
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec42b70
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4e120
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [ecx*8 + 0x6ec6b220]
mov ecx, 0xa
mov dword [esp + 8], edx
mov edx, 1
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4e120
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [ecx*8 + 0x6ec6b220]
mov ecx, 0xb
mov dword [esp + 8], edx
mov edx, 1
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec59e68
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5df5c
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec42900
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4e120
mov edx, dword [esp + 0x28]
mov eax, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
cmp esi, eax
je 0x6ec5d322
mov dword [esp + 8], eax
mov eax, dword [esp + 0x20]
mov ecx, 5
mov dword [esp + 4], esi
mov edx, 1
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, 0x11
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 0xf2
and eax, 0x7fff
mov dword [esp + 0xc], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, dword [edi + 0x10]
mov dword [esp], 0
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec44560
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4cbb0
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [edx*8 + 0x6ec6b220]
xor edx, edx
mov dword [esp + 4], ecx
mov ecx, 7
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, ebp
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5a07c
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5e7f5
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec42080
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, 0x11
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 0xf3
mov dword [esp + 8], 0x17
and eax, 0x7fff
mov dword [esp + 0xc], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec44560
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5c173
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4cdf0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [ebp]
mov esi, 0xfffffffc
lea edx, [eax + 1]
sub esi, edx
mov edx, esi
add edx, ecx
mov byte [eax], 0xe8
mov dword [eax + 1], edx
add eax, 5
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5bf93
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4dc10
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, 0x10
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 0xf3
mov dword [esp + 8], 0x17
mov dword [esp + 4], 0x17
and eax, 0x7fff
mov dword [esp + 0xc], eax
mov eax, dword [edi + 0x18]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec44560
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5c598
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4d3c0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5a250
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5e52b
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec41fd0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, dword [ebp]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x18]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
cmp edx, eax
je 0x6ec5ce60
mov dword [esp + 4], edx
mov edx, 4
mov dword [esp], eax
mov eax, ebp
call fcn.6ec416d0
mov edx, dword [ebp]
mov ecx, edi
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4cbb0
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [edx*8 + 0x6ec6b220]
xor edx, edx
mov dword [esp + 4], ecx
mov ecx, 3
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, ebp
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, 0x10
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 0xf3
mov dword [esp + 8], 0x17
and eax, 0x7fff
mov dword [esp + 0xc], eax
mov eax, dword [edi + 0x18]
mov dword [esp], 0
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec44560
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, 0x28
mov esi, dword [ebp]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec434c0
mov eax, dword [ebp]
mov ecx, edi
sub esi, eax
lea edx, [esi - 6]
mov dword [eax + 2], edx
lea edx, [eax + 6]
mov byte [eax], 0xf
mov byte [eax + 1], pe_nt_image_headers32
mov eax, dword [esp + 0x2c]
mov dword [ebp], edx
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5a44d
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5e1c0
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec42220
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5c5c2
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4d620
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, 0x11
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 0xf3
mov dword [esp + 8], 0x17
mov dword [esp + 4], 0x17
and eax, 0x7fff
mov dword [esp + 0xc], eax
mov eax, dword [edi + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec44560
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5be59
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4dae0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov ecx, dword [edi + 0x20]
mov esi, dword [ebp]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and edx, 0x7fff
call fcn.6ec43480
mov eax, dword [ebp]
mov ecx, edi
sub esi, eax
lea edx, [esi - 6]
mov dword [eax + 2], edx
lea edx, [eax + 6]
mov byte [eax], 0xf
mov byte [eax + 1], 0x84
mov eax, dword [esp + 0x2c]
mov dword [ebp], edx
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, dword [edi + 0x20]
mov ecx, dword [ebp]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
test edx, edx
jne 0x6ec5c9bc
mov dword [esp], eax
mov edx, 6
mov eax, ebp
call fcn.6ec41730
mov edx, dword [ebp]
mov ecx, edi
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5c2c6
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4ccc0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4e120
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 1
mov dword [esp + 4], ecx
mov ecx, 2
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, ebp
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4cbb0
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [edx*8 + 0x6ec6b220]
xor edx, edx
mov dword [esp + 4], ecx
mov ecx, 2
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, ebp
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec41970
mov ecx, edi
mov edx, eax
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov ecx, dword [edi + 0x20]
mov esi, dword [ebp]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and edx, 0x7fff
call fcn.6ec43480
mov eax, dword [ebp]
mov ecx, edi
sub esi, eax
lea edx, [esi - 6]
mov dword [eax + 2], edx
lea edx, [eax + 6]
mov byte [eax], 0xf
mov byte [eax + 1], 0x85
mov eax, dword [esp + 0x2c]
mov dword [ebp], edx
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, 0x28
mov esi, dword [ebp]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec434c0
mov eax, dword [ebp]
mov ecx, edi
sub esi, eax
lea edx, [esi - 6]
mov dword [eax + 2], edx
lea edx, [eax + 6]
mov byte [eax], 0xf
mov byte [eax + 1], 0x81
mov eax, dword [esp + 0x2c]
mov dword [ebp], edx
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4cbb0
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [ecx*8 + 0x6ec6b220]
mov ecx, 0xb
mov dword [esp + 8], edx
xor edx, edx
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4cbb0
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [ecx*8 + 0x6ec6b220]
mov ecx, 0xa
mov dword [esp + 8], edx
xor edx, edx
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and esi, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4cbb0
mov edx, dword [esp + 0x28]
mov eax, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
cmp esi, eax
je 0x6ec5cbe4
mov dword [esp + 8], eax
mov eax, dword [esp + 0x20]
mov ecx, 5
mov dword [esp + 4], esi
xor edx, edx
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4cbb0
jmp case.0x6ec4fa9a.1
cmp eax, 0xffffffff
je 0x6ec5ec61
cmp ecx, dword [esp + 0x20]
je 0x6ec5aa91
mov edx, dword [ebp]
shl ecx, 3
and esi, 7
or ecx, 0xffffffc0
or ecx, esi
mov byte [edx], 0x89
mov byte [edx + 1], cl
add edx, 2
mov dword [ebp], edx
mov ecx, dword [esp + 0x20]
mov edx, 8
mov dword [esp], eax
mov eax, ebp
call fcn.6ec434c0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, 0x10
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 0xf3
and eax, 0x7fff
mov dword [esp + 0xc], eax
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, dword [edi + 0x18]
mov dword [esp], 0
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec44560
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, dword [edi + 0x20]
mov ecx, dword [ebp]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
test edx, edx
jne 0x6ec5c7c3
mov dword [esp], eax
mov edx, 0xe
mov eax, ebp
call fcn.6ec41730
mov edx, dword [ebp]
mov ecx, edi
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5c66c
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4d2a0
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x20]
mov eax, dword [edi + 0x18]
mov ecx, dword [ebp]
and eax, 0x7fff
test edx, edx
mov eax, dword [eax*8 + 0x6ec6b220]
jne 0x6ec5e975
lea eax, [ecx + 1]
mov edx, 0xfffffffc
sub edx, eax
mov eax, edx
add eax, ecx
mov byte [ecx], 0xe9
mov dword [ecx + 1], eax
add ecx, 5
mov dword [ebp], ecx
mov edx, dword [ebp]
mov ecx, edi
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5abf4
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5dec1
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec42790
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, 0x28
mov esi, dword [ebp]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec434c0
mov eax, dword [ebp]
mov ecx, edi
sub esi, eax
lea edx, [esi - 6]
mov dword [eax + 2], edx
lea edx, [eax + 6]
mov byte [eax], 0xf
mov byte [eax + 1], 0x82
mov eax, dword [esp + 0x2c]
mov dword [ebp], edx
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, dword [ebp]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x18]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
cmp edx, eax
je 0x6ec5d27d
mov dword [esp + 4], edx
mov edx, 3
mov dword [esp], eax
mov eax, ebp
call fcn.6ec416d0
mov edx, dword [ebp]
mov ecx, edi
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, dword [ebp]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x18]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
cmp edx, eax
je 0x6ec5ca15
mov dword [esp + 4], edx
mov edx, 0xe
mov dword [esp], eax
mov eax, ebp
call fcn.6ec416d0
mov edx, dword [ebp]
mov ecx, edi
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5ad51
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5ea60
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec42020
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x20]
mov edx, 0xf
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec416d0
mov edx, dword [ebp]
mov ecx, edi
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4cbb0
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec41e20
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4cbb0
mov edx, dword [esp + 0x28]
mov eax, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
cmp dword [esp + 0x20], eax
je 0x6ec5e77c
mov ecx, dword [esp + 0x20]
xor edx, edx
mov dword [esp + 4], eax
mov eax, ebp
mov dword [esp], esi
mov dword [esp + 8], ecx
mov ecx, 6
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, dword [ebp]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x18]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
cmp edx, eax
je 0x6ec5d02a
mov dword [esp + 4], edx
mov edx, 6
mov dword [esp], eax
mov eax, ebp
call fcn.6ec416d0
mov edx, dword [ebp]
mov ecx, edi
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4cbb0
mov edx, dword [esp + 0x28]
mov eax, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
cmp dword [esp + 0x20], eax
je 0x6ec5e367
mov ecx, dword [esp + 0x20]
xor edx, edx
mov dword [esp + 8], eax
mov eax, ebp
mov dword [esp], esi
mov dword [esp + 4], ecx
mov ecx, 6
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4cbb0
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [ecx*8 + 0x6ec6b220]
mov ecx, 7
mov dword [esp + 8], edx
xor edx, edx
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, 0x10
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 0xf2
mov dword [esp + 8], 0x17
and eax, 0x7fff
mov dword [esp + 0xc], eax
mov eax, dword [edi + 0x18]
mov dword [esp], 0
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec44560
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, 0x28
mov esi, dword [ebp]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec434c0
mov eax, dword [ebp]
mov ecx, edi
sub esi, eax
lea edx, [esi - 6]
mov dword [eax + 2], edx
lea edx, [eax + 6]
mov byte [eax], 0xf
mov byte [eax + 1], 0x83
mov eax, dword [esp + 0x2c]
mov dword [ebp], edx
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, 0x10
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 0xf2
and eax, 0x7fff
mov dword [esp + 0xc], eax
mov eax, dword [edi + 0x20]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 8], eax
mov eax, dword [edi + 0x18]
mov dword [esp], 0
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec44560
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
and esi, 0x7fff
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4e120
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
mov dword [esp], esi
mov eax, dword [ecx*8 + 0x6ec6b220]
mov ecx, 3
mov dword [esp + 8], edx
mov edx, 1
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec41ab0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
lea ecx, [edx - 8]
cmp ecx, 7
ja 0x6ec5c066
and eax, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and ecx, 0x7fff
and edx, 0x7fff
call fcn.6ec42640
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov esi, dword [edi + 0x20]
lea edx, [eax - 0x10]
cmp edx, 6
ja 0x6ec5b2d6
lea edx, [esi - 0x10]
cmp edx, 6
jbe 0x6ec5e9fa
and eax, 0x7fff
and esi, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec41f70
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, edi
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, dword [edi + 0x20]
mov ecx, dword [ebp]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
test edx, edx
jne 0x6ec5c9ec
mov dword [esp], eax
mov edx, 2
mov eax, ebp
call fcn.6ec41730
mov edx, dword [ebp]
mov ecx, edi
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, dword [edi + 0x20]
mov ecx, dword [ebp]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
test edx, edx
jne 0x6ec5ca82
mov dword [esp], eax
mov edx, 8
mov eax, ebp
call fcn.6ec41730
mov edx, dword [ebp]
mov ecx, edi
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, 0x11
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 0xf3
mov dword [esp + 8], 0x17
and eax, 0x7fff
mov dword [esp + 0xc], eax
mov eax, dword [edi + 0x10]
mov dword [esp], 0
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ec44560
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x18]
mov edx, dword [edi + 0x20]
mov ecx, dword [ebp]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
test edx, edx
jne 0x6ec5caba
mov dword [esp], eax
mov edx, 4
mov eax, ebp
call fcn.6ec41730
mov edx, dword [ebp]
mov ecx, edi
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, dword [ebp]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x18]
and edx, 0x7fff
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
and eax, 0x7fff
cmp edx, eax
je 0x6ec5d41f
mov dword [esp + 4], edx
mov edx, 0xd
mov dword [esp], eax
mov eax, ebp
call fcn.6ec416d0
mov edx, dword [ebp]
mov ecx, edi
mov eax, dword [esp + 0x2c]
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
mov edx, dword [ebp]
mov ecx, dword [edi + 0x18]
and eax, 0x7fff
mov eax, dword [eax*8 + 0x6ec6b220]
mov dword [edx + 1], ecx
mov ecx, edi
and eax, 7
or eax, 0xffffffb8
mov byte [edx], al
mov eax, dword [esp + 0x2c]
add edx, 5
mov dword [ebp], edx
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], 0x24000000
mov dword [esp], ebp
call fcn.6ec4a980
mov edx, eax
and edx, 0x7fff
mov dword [esp + 0x24], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov ecx, eax
and ecx, 0x7fff
cmp esi, ecx
je 0x6ec5b514
mov ecx, dword [ebp]
shl esi, 3
and eax, 7
or esi, 0xffffffc0
or eax, esi
mov byte [ecx], 0x89
mov byte [ecx + 1], al
mov eax, dword [edx*8 + 0x6ec6b220]
add ecx, 2
mov dword [ebp], ecx
mov edx, dword [esp + 0x20]
and eax, 7
mov ecx, dword [ebp]
and edx, 7
shl edx, 3
or edx, 0xffffffc0
or eax, edx
mov byte [ecx + 2], al
mov eax, dword [esp + 0x24]
mov byte [ecx], 0xf
mov byte [ecx + 1], 0xb6
add ecx, 3
mov dword [ebp], ecx
mov dword [esp + 4], eax
mov dword [esp], ebp
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], edx
mov edx, 7
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c670
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], 0x24000000
mov dword [esp], ebp
call fcn.6ec4a980
mov edx, eax
and edx, 0x7fff
mov dword [esp + 0x24], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov ecx, eax
and ecx, 0x7fff
cmp esi, ecx
je 0x6ec5b5b6
mov ecx, dword [ebp]
shl esi, 3
and eax, 7
or esi, 0xffffffc0
or eax, esi
mov byte [ecx], 0x89
mov byte [ecx + 1], al
mov eax, dword [edx*8 + 0x6ec6b220]
add ecx, 2
mov dword [ebp], ecx
mov edx, dword [esp + 0x20]
and eax, 7
mov ecx, dword [ebp]
and edx, 7
shl edx, 3
or edx, 0xffffffc0
or eax, edx
mov byte [ecx + 2], al
mov eax, dword [esp + 0x24]
mov byte [ecx], 0xf
mov byte [ecx + 1], 0xbe
add ecx, 3
mov dword [ebp], ecx
mov dword [esp + 4], eax
mov dword [esp], ebp
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], edx
mov edx, 3
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c670
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], edx
mov edx, 5
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c670
jmp case.0x6ec4fa9a.1
mov ecx, esi
mov eax, ebp
call fcn.6ec44300
jmp 0x6ec570a3
mov dword [esp + 4], edx
mov edx, 0xc
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c670
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], edx
mov edx, 6
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c670
jmp case.0x6ec4fa9a.1
mov eax, dword [ebp]
and esi, 7
lea edx, [esi*8]
or edx, 0xffffffc0
or edx, esi
mov byte [eax], 0x31
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [ebp]
mov edx, esi
mov byte [eax], 0x88
add eax, 1
mov dword [ebp], eax
mov eax, ebp
mov dword [esp], ecx
xor ecx, ecx
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov eax, dword [ebp]
mov edx, esi
mov byte [eax], 0x88
add eax, 1
mov dword [ebp], eax
mov eax, ebp
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
mov dword [esp], 0x17
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], edx
mov edx, 0xd
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c670
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], edx
mov edx, 4
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4c670
jmp case.0x6ec4fa9a.1
mov eax, dword [ebp]
mov edx, dword [esp + 0x20]
mov byte [eax], 0x88
add eax, 1
mov dword [ebp], eax
mov eax, ebp
mov dword [esp + 4], ecx
xor ecx, ecx
mov dword [esp], edx
mov edx, esi
mov dword [esp + 8], 0
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov eax, dword [ebp]
mov byte [eax], 0x88
add eax, 1
mov dword [ebp], eax
mov eax, ebp
mov dword [esp], ecx
mov ecx, edx
mov edx, esi
mov dword [esp + 8], 0
mov dword [esp + 4], 0x17
call fcn.6ec43cc0
jmp case.0x6ec4fa9a.1
mov dword [esp], 3
mov ecx, 4
mov edx, 4
mov eax, ebp
call fcn.6ec43f30
jmp 0x6ec4fb42
mov edx, 8
mov ecx, 4
mov dword [esp], 6
mov eax, ebp
call fcn.6ec43f30
mov edx, dword [ebp + 0x1c]
jmp 0x6ec4fb35
mov edx, 0xc
mov ecx, 4
mov dword [esp], 7
mov eax, ebp
call fcn.6ec43f30
mov edx, dword [ebp + 0x1c]
jmp 0x6ec4fb28
mov ecx, dword [esp + 0x24]
and edx, 7
mov eax, dword [ebp]
and ecx, 7
shl ecx, 3
or ecx, 0xffffffc0
or ecx, edx
mov byte [eax], 1
mov byte [eax + 1], cl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [ebp]
and ecx, 7
lea edx, [ecx*8]
or edx, 0xffffffc0
or edx, ecx
mov byte [eax], 0x31
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [ebp]
and ecx, 7
lea edx, [ecx*8]
or edx, 0xffffffc0
or edx, ecx
mov byte [eax], 0x31
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
cmp ecx, esi
je case.0x6ec4fa9a.1
mov edx, dword [ebp]
shl ecx, 3
and eax, 7
or ecx, 0xffffffc0
or ecx, eax
mov byte [edx], 0x89
mov byte [edx + 1], cl
add edx, 2
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
mov edx, 4
sub edx, eax
mov eax, ebp
call fcn.6ec439a0
jmp 0x6ec563c8
mov esi, dword [edi + 0x20]
mov eax, dword [edi + 0x18]
jmp 0x6ec51a3b
mov esi, dword [edi + 0x20]
mov eax, dword [edi + 0x18]
jmp 0x6ec51b60
mov esi, dword [edi + 0x20]
mov eax, dword [edi + 0x18]
jmp 0x6ec51e5e
mov eax, dword [edi + 0x10]
mov ecx, dword [edi + 0x18]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and edx, 0x7fff
call fcn.6ec436d0
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and edx, 0x7fff
call fcn.6ec441f0
jmp case.0x6ec4fa9a.1
mov eax, dword [ebp]
xor ecx, ecx
mov byte [eax], 0xdd
mov byte [eax + 1], 0xd9
add eax, 2
mov dword [ebp], eax
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and edx, 0x7fff
call fcn.6ec44bd0
jmp case.0x6ec4fa9a.1
mov esi, dword [edi + 0x20]
mov eax, dword [edi + 0x18]
jmp 0x6ec53d59
and eax, 0x7fff
mov edx, dword [esi*8 + 0x6ec6b220]
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and edx, 0x7fff
and ecx, 0x7fff
call fcn.6ec43940
jmp case.0x6ec4fa9a.1
cmp ecx, esi
je case.0x6ec4fa9a.1
mov edx, dword [ebp]
shl ecx, 3
and eax, 7
or ecx, 0xffffffc0
or ecx, eax
mov byte [edx], 0x89
mov byte [edx + 1], cl
add edx, 2
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov edx, dword [esi*8 + 0x6ec6b220]
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and edx, 0x7fff
and ecx, 0x7fff
call fcn.6ec44250
jmp case.0x6ec4fa9a.1
mov eax, dword [ebp]
mov ecx, 5
mov edx, 0xfffffff4
mov byte [eax], 0xdd
mov byte [eax + 1], 0xd9
add eax, 2
mov dword [ebp], eax
mov eax, dword [edi + 0x10]
mov dword [esp], 0
and eax, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
call fcn.6ec444d0
mov ecx, 5
mov eax, ebp
mov dword [esp], 0xfffffff4
and esi, 0x7fff
mov edx, esi
call fcn.6ec445c0
jmp case.0x6ec4fa9a.1
mov esi, dword [edi + 0x20]
mov eax, dword [edi + 0x18]
jmp 0x6ec53f34
mov eax, ecx
and eax, 0x7fff
cmp eax, edx
je 0x6ec5baca
mov edx, dword [esp + 0x20]
shl esi, 3
mov eax, dword [ebp]
or esi, 0xffffffc0
and edx, 7
or edx, esi
mov byte [eax], 0x89
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
jmp 0x6ec525dc
and eax, 0x7fff
mov edx, dword [esi*8 + 0x6ec6b220]
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and edx, 0x7fff
and ecx, 0x7fff
call fcn.6ec43940
jmp case.0x6ec4fa9a.1
mov eax, ecx
and eax, 0x7fff
cmp eax, edx
je 0x6ec5bbaf
mov edx, dword [esp + 0x20]
shl esi, 3
mov eax, dword [ebp]
or esi, 0xffffffc0
and edx, 7
or edx, esi
mov byte [eax], 0x89
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
jmp 0x6ec5751e
mov esi, dword [edi + 0x20]
mov eax, dword [edi + 0x18]
jmp 0x6ec53fa3
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and edx, 0x7fff
call fcn.6ec441f0
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], 0x20000000
mov dword [esp], ebp
mov dword [esp + 0x1c], edx
call fcn.6ec4a980
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ecx
and eax, 0x7fff
cmp edx, eax
je 0x6ec5bb1b
mov eax, dword [ebp]
shl edx, 3
and ecx, 7
or edx, 0xffffffc0
or edx, ecx
mov byte [eax], 0x89
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
movzx ecx, byte [esp + 0x20]
shl esi, 3
or esi, 0xffffffc0
mov eax, dword [ebp]
and ecx, 7
mov edx, ecx
or edx, esi
mov esi, dword [esp + 0x28]
mov byte [eax], 0x89
mov byte [eax + 1], dl
mov edx, dword [esi*8 + 0x6ec6b220]
mov byte [eax + 2], 0x29
and edx, 7
shl edx, 3
or edx, 0xffffffc0
or edx, ecx
mov byte [eax + 3], dl
add eax, 4
mov dword [ebp], eax
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov esi, dword [edi + 0x20]
mov eax, dword [edi + 0x18]
jmp 0x6ec56836
mov esi, dword [edi + 0x20]
mov eax, dword [edi + 0x18]
jmp 0x6ec567c7
and eax, 0x7fff
mov edx, dword [esi*8 + 0x6ec6b220]
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and edx, 0x7fff
and ecx, 0x7fff
call fcn.6ec44250
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], 0x20000000
mov dword [esp], ebp
mov dword [esp + 0x1c], edx
call fcn.6ec4a980
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ecx
and eax, 0x7fff
cmp edx, eax
je 0x6ec5bc00
mov eax, dword [ebp]
shl edx, 3
and ecx, 7
or edx, 0xffffffc0
or edx, ecx
mov byte [eax], 0x89
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
movzx ecx, byte [esp + 0x20]
shl esi, 3
or esi, 0xffffffc0
mov eax, dword [ebp]
and ecx, 7
mov edx, ecx
or edx, esi
mov esi, dword [esp + 0x28]
mov byte [eax], 0x89
mov byte [eax + 1], dl
mov edx, dword [esi*8 + 0x6ec6b220]
mov byte [eax + 2], 0x19
and edx, 7
shl edx, 3
or edx, 0xffffffc0
or edx, ecx
mov byte [eax + 3], dl
add eax, 4
mov dword [ebp], eax
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4cfb0
jmp case.0x6ec4fa9a.1
and edx, 0x7fff
and eax, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
and ecx, 0x7fff
and edx, 0x7fff
call fcn.6ec44bd0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4e570
jmp 0x6ec5884a
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4edb0
jmp case.0x6ec4fa9a.1
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4eee0
jmp case.0x6ec4fa9a.1
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4f010
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4ea20
jmp 0x6ec58746
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4e8f0
jmp case.0x6ec4fa9a.1
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4f270
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4f270
jmp 0x6ec584a7
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4f010
jmp 0x6ec58787
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4d0e0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4db80
jmp 0x6ec5a541
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4cfb0
jmp 0x6ec59664
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4d330
jmp case.0x6ec4fa9a.1
and edx, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
mov ecx, 0x11
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 0xf3
mov dword [esp + 8], 0x17
mov dword [esp + 4], 5
and esi, 0x7fff
and eax, 0x7fff
mov dword [esp + 0xc], eax
mov eax, ebp
mov dword [esp], 0xfffffff4
call fcn.6ec44560
mov ecx, 5
mov edx, esi
mov dword [esp], 0xfffffff4
mov eax, ebp
call fcn.6ec443e0
jmp case.0x6ec4fa9a.1
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4ce90
jmp case.0x6ec4fa9a.1
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4dcb0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4dcb0
jmp 0x6ec5a1a2
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4da50
jmp 0x6ec5975f
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4f140
jmp 0x6ec5927c
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4d210
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4d0e0
jmp 0x6ec598a5
and eax, 0x7fff
and edx, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
mov ecx, 5
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 0xfffffff4
and esi, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec444d0
mov ecx, 5
mov edx, esi
mov dword [esp], 0xfffffff4
mov eax, ebp
call fcn.6ec445c0
jmp case.0x6ec4fa9a.1
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4db80
jmp case.0x6ec4fa9a.1
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4cd60
jmp case.0x6ec4fa9a.1
and edx, 0x7fff
mov esi, dword [eax*8 + 0x6ec6b220]
mov ecx, 0x11
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 0xf2
mov dword [esp + 8], 0x17
mov dword [esp + 4], 5
and esi, 0x7fff
and eax, 0x7fff
mov dword [esp + 0xc], eax
mov eax, ebp
mov dword [esp], 0xfffffff4
call fcn.6ec44560
mov ecx, 5
mov edx, esi
mov dword [esp], 0xfffffff4
mov eax, ebp
call fcn.6ec44480
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4ce90
jmp 0x6ec5a13f
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4d590
jmp 0x6ec5828d
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4d920
jmp case.0x6ec4fa9a.1
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4e7d0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4e8f0
jmp 0x6ec583ee
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4e320
jmp 0x6ec58586
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4e570
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4eee0
jmp 0x6ec58809
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4cd60
jmp 0x6ec5a610
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4d590
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4d7f0
jmp 0x6ec58192
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4d7f0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4e7d0
jmp 0x6ec5842f
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4e6a0
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4e6a0
jmp 0x6ec58624
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4eb50
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4ec80
jmp 0x6ec586c4
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4ea20
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4eb50
jmp 0x6ec58705
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4d920
jmp 0x6ec582f3
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4ec80
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4edb0
jmp 0x6ec58683
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4e450
jmp case.0x6ec4fa9a.1
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4e320
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4e450
jmp 0x6ec58545
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4d460
jmp 0x6ec5a224
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4d6c0
jmp 0x6ec5a4bf
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4d6c0
jmp case.0x6ec4fa9a.1
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4da50
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4d210
jmp 0x6ec598e6
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec4d330
jmp 0x6ec5ab7e
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4d460
jmp case.0x6ec4fa9a.1
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [edi + 0x20]
and ecx, 0x7fff
mov eax, dword [eax + 0x10]
mov dword [esp], eax
mov eax, ebp
call fcn.6ec4f140
jmp case.0x6ec4fa9a.1
mov ecx, 1
mov eax, ebp
call fcn.6ec436b0
jmp case.0x6ec4fa9a.1
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, dword [edi + 0x10]
and eax, 0x7fff
and edx, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, 6
and eax, 0x7fff
mov dword [esp], eax
and ecx, 0x7fff
mov eax, ebp
call fcn.6ec42cf0
jmp case.0x6ec4fa9a.1
mov dword [esp], eax
mov edx, 7
mov eax, ebp
mov dword [esp + 4], esi
call fcn.6ec43550
jmp case.0x6ec4fa9a.1
mov ecx, esi
mov edx, dword [ebp]
and eax, 7
and ecx, 7
shl ecx, 3
or ecx, 0xffffffc0
or ecx, eax
mov byte [edx], 1
mov byte [edx + 1], cl
add edx, 2
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
mov eax, dword [ebp]
mov esi, 0xfffffffc
lea edx, [eax + 1]
sub esi, edx
add ecx, esi
mov byte [eax], 0xe9
mov dword [eax + 1], ecx
add eax, 5
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov ecx, esi
mov edx, dword [ebp]
and eax, 7
and ecx, 7
shl ecx, 3
or ecx, 0xffffffc0
or ecx, eax
mov byte [edx], 0x11
mov byte [edx + 1], cl
add edx, 2
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], edx
mov edx, 0xe
mov dword [esp], eax
mov eax, ebp
call fcn.6ec43550
jmp 0x6ec5ab3c
mov ecx, 1
mov eax, ebp
call fcn.6ec436b0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 3
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42cf0
jmp case.0x6ec4fa9a.1
mov eax, dword [eax*8 + 0x6ec6b220]
mov ecx, dword [edi + 0x10]
and eax, 0x7fff
and ecx, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 0xb
mov ecx, dword [ecx*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
and ecx, 0x7fff
mov eax, ebp
call fcn.6ec42e00
jmp case.0x6ec4fa9a.1
mov ecx, dword [edi + 0x20]
mov eax, dword [eax*8 + 0x6ec6b220]
mov esi, dword [edx*8 + 0x6ec6b220]
mov ecx, dword [ecx + 0x10]
and eax, 0x7fff
mov dword [esp + 4], 0x40000000
and esi, 0x7fff
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4c9c0
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec44a20
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec43150
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 2
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42cf0
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], edx
xor ecx, ecx
mov edx, 0xa
mov dword [esp], eax
mov eax, ebp
call fcn.6ec441a0
jmp case.0x6ec4fa9a.1
mov dword [esp], eax
mov edx, 5
mov eax, ebp
mov dword [esp + 4], esi
call fcn.6ec43550
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], edx
mov edx, 6
mov dword [esp], eax
mov eax, ebp
call fcn.6ec43550
jmp 0x6ec5a5ce
mov dword [esp], eax
mov edx, 0xc
mov eax, ebp
mov dword [esp + 4], esi
call fcn.6ec43550
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], edx
mov edx, 2
mov dword [esp], eax
mov eax, ebp
call fcn.6ec43550
jmp 0x6ec5b34a
mov ecx, 1
mov eax, ebp
call fcn.6ec436b0
jmp case.0x6ec4fa9a.1
lea eax, [ecx + 1]
mov edx, 0xfffffffc
sub edx, eax
mov eax, edx
add eax, ecx
mov byte [ecx], 0xe9
mov dword [ecx + 1], eax
add ecx, 5
mov dword [ebp], ecx
jmp 0x6ec5ad24
mov dword [esp], eax
mov edx, 2
mov eax, ebp
mov dword [esp + 4], esi
call fcn.6ec43550
jmp case.0x6ec4fa9a.1
mov dword [esp], eax
mov edx, 4
mov eax, ebp
mov dword [esp + 4], esi
call fcn.6ec43550
jmp case.0x6ec4fa9a.1
mov dword [esp], eax
xor ecx, ecx
mov edx, 0xa
mov dword [esp + 4], 0x17
mov eax, ebp
call fcn.6ec441a0
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], edx
mov edx, 0xc
mov dword [esp], eax
mov eax, ebp
call fcn.6ec43550
jmp 0x6ec5b38e
mov eax, dword [ebp]
mov esi, 0xfffffffc
lea edx, [eax + 1]
sub esi, edx
add ecx, esi
mov byte [eax], 0xe9
mov dword [eax + 1], ecx
add eax, 5
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], edx
mov edx, 4
mov dword [esp], eax
mov eax, ebp
call fcn.6ec43550
jmp 0x6ec5b424
mov edx, dword [ebp]
and eax, 7
lea ecx, [eax*8]
or ecx, 0xffffffc0
or eax, ecx
mov byte [edx], 0x31
mov byte [edx + 1], al
add edx, 2
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], edx
mov edx, 7
mov dword [esp], eax
mov eax, ebp
call fcn.6ec43550
jmp 0x6ec599f9
mov eax, dword [eax*8 + 0x6ec6b220]
mov ecx, dword [edi + 0x10]
and eax, 0x7fff
and ecx, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 0xa
mov ecx, dword [ecx*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
and ecx, 0x7fff
mov eax, ebp
call fcn.6ec42e00
jmp case.0x6ec4fa9a.1
mov ecx, dword [edi + 0x20]
mov eax, dword [eax*8 + 0x6ec6b220]
mov esi, dword [edx*8 + 0x6ec6b220]
mov ecx, dword [ecx + 0x10]
and eax, 0x7fff
mov dword [esp + 4], 0x40000000
and esi, 0x7fff
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4c9c0
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec448c0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov ecx, dword [esp + 0x20]
mov eax, dword [ebp]
and ecx, 7
lea edx, [ecx*8]
or edx, 0xffffffc0
or edx, ecx
mov byte [eax], 0x31
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
jmp 0x6ec5aa35
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and edx, 0x7fff
call fcn.6ec437f0
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and edx, 0x7fff
call fcn.6ec43860
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
mov edx, dword [esi*8 + 0x6ec6b220]
mov dword [esp], eax
mov eax, ebp
and ecx, 0x7fff
and edx, 0x7fff
mov dword [esp + 4], edx
mov edx, 4
call fcn.6ec42e00
jmp case.0x6ec4fa9a.1
mov dword [esp], eax
mov edx, 0xd
mov eax, ebp
mov dword [esp + 4], esi
call fcn.6ec43550
jmp case.0x6ec4fa9a.1
xor ecx, ecx
mov eax, ebp
call fcn.6ec436d0
nop
jmp case.0x6ec4fa9a.1
xor ecx, ecx
mov eax, ebp
call fcn.6ec436d0
nop
jmp case.0x6ec4fa9a.1
xor ecx, ecx
mov eax, ebp
call fcn.6ec436d0
nop
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec44b90
jmp case.0x6ec4fa9a.1
mov ecx, dword [edi + 0x20]
mov eax, dword [eax*8 + 0x6ec6b220]
mov esi, dword [edx*8 + 0x6ec6b220]
mov ecx, dword [ecx + 0x10]
and eax, 0x7fff
mov dword [esp + 4], 0x40000000
and esi, 0x7fff
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4c9c0
mov ecx, dword [esp + 0x28]
mov edx, esi
mov eax, dword [ecx*8 + 0x6ec6b220]
mov ecx, dword [esp + 0x20]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec445f0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov ecx, dword [edi + 0x10]
mov edx, dword [edx*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and ecx, 0x7fff
mov ecx, dword [ecx*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 2
mov dword [esp], eax
mov eax, ebp
and ecx, 0x7fff
call fcn.6ec42cf0
jmp case.0x6ec4fa9a.1
mov ecx, dword [edi + 0x10]
mov edx, dword [edx*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and ecx, 0x7fff
mov ecx, dword [ecx*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 7
mov dword [esp], eax
mov eax, ebp
and ecx, 0x7fff
call fcn.6ec42cf0
jmp case.0x6ec4fa9a.1
xor ecx, ecx
mov eax, ebp
call fcn.6ec436d0
jmp case.0x6ec4fa9a.1
mov ecx, 1
mov eax, ebp
call fcn.6ec436b0
jmp case.0x6ec4fa9a.1
lea eax, [ecx + 1]
mov edx, 0xfffffffc
sub edx, eax
mov eax, edx
add eax, ecx
mov byte [ecx], 0xe9
mov dword [ecx + 1], eax
add ecx, 5
mov dword [ebp], ecx
jmp 0x6ec5a2d7
mov ecx, 1
mov eax, ebp
call fcn.6ec436b0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 6
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42cf0
jmp case.0x6ec4fa9a.1
mov ecx, dword [edi + 0x10]
mov edx, dword [edx*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and ecx, 0x7fff
mov ecx, dword [ecx*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 3
mov dword [esp], eax
mov eax, ebp
and ecx, 0x7fff
call fcn.6ec42cf0
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec43020
jmp case.0x6ec4fa9a.1
mov ecx, dword [edi + 0x20]
mov eax, dword [eax*8 + 0x6ec6b220]
mov esi, dword [edx*8 + 0x6ec6b220]
mov ecx, dword [ecx + 0x10]
and eax, 0x7fff
mov dword [esp + 4], 0x40000000
and esi, 0x7fff
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4df00
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec44a20
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], 0x17
mov edx, 0xa
mov eax, ebp
mov dword [esp], 0x17
call fcn.6ec441a0
jmp case.0x6ec4fa9a.1
mov eax, dword [ebp]
mov esi, 0xfffffffc
lea edx, [eax + 1]
sub esi, edx
add ecx, esi
mov byte [eax], 0xe9
mov dword [eax + 1], ecx
add eax, 5
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
lea eax, [ecx + 1]
mov edx, 0xfffffffc
sub edx, eax
mov eax, edx
add eax, ecx
mov byte [ecx], 0xe9
mov dword [ecx + 1], eax
add ecx, 5
mov dword [ebp], ecx
jmp 0x6ec5af70
mov ecx, dword [edi + 0x20]
mov edx, dword [edx*8 + 0x6ec6b220]
mov esi, dword [eax*8 + 0x6ec6b220]
mov ecx, dword [ecx + 0x10]
and edx, 0x7fff
mov dword [esp + 4], 0x40000000
and esi, 0x7fff
mov dword [esp], ebp
mov dword [esp + 0x20], edx
mov dword [esp + 0x1c], ecx
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4c9c0
mov edx, dword [esp + 0x28]
mov eax, ebp
mov dword [esp], esi
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [esp + 0x20]
and ecx, 0x7fff
call fcn.6ec44750
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov ecx, dword [edi + 0x20]
mov eax, dword [eax*8 + 0x6ec6b220]
mov esi, dword [edx*8 + 0x6ec6b220]
mov ecx, dword [ecx + 0x10]
and eax, 0x7fff
mov dword [esp + 4], 0x40000000
and esi, 0x7fff
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4c9c0
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec44750
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 7
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42cf0
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], edx
mov edx, 0xd
mov dword [esp], eax
mov eax, ebp
call fcn.6ec43550
jmp 0x6ec59050
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 2
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42cf0
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], 0x17
mov edx, 0x2a
mov eax, ebp
mov dword [esp], 0x17
call fcn.6ec441a0
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], edx
mov edx, 5
mov dword [esp], eax
mov eax, ebp
call fcn.6ec43550
jmp 0x6ec58fbd
mov dword [esp], eax
mov edx, 6
mov eax, ebp
mov dword [esp + 4], esi
call fcn.6ec43550
jmp case.0x6ec4fa9a.1
mov eax, dword [ebp]
mov esi, 0xfffffffc
lea edx, [eax + 1]
sub esi, edx
add ecx, esi
mov byte [eax], 0xe9
mov dword [eax + 1], ecx
add eax, 5
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
lea eax, [ecx + 1]
mov edx, 0xfffffffc
sub edx, eax
mov eax, edx
add eax, ecx
mov byte [ecx], 0xe9
mov dword [ecx + 1], eax
add ecx, 5
mov dword [ebp], ecx
jmp 0x6ec5accd
xor ecx, ecx
mov eax, ebp
call fcn.6ec436d0
jmp case.0x6ec4fa9a.1
mov eax, dword [ebp]
mov esi, 0xfffffffc
lea edx, [eax + 1]
sub esi, edx
add ecx, esi
mov byte [eax], 0xe9
mov dword [eax + 1], ecx
add eax, 5
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov dword [esp], eax
mov edx, 0xe
mov eax, ebp
mov dword [esp + 4], esi
call fcn.6ec43550
jmp case.0x6ec4fa9a.1
mov ecx, dword [ebp]
and eax, 7
and edx, 7
shl eax, 3
or eax, 0xffffffc0
or eax, edx
mov byte [ecx], 0xf
mov byte [ecx + 1], 0xaf
mov byte [ecx + 2], al
add ecx, 3
mov dword [ebp], ecx
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], edx
xor ecx, ecx
mov edx, 0x2a
mov dword [esp], eax
mov eax, ebp
call fcn.6ec441a0
jmp case.0x6ec4fa9a.1
mov ecx, dword [esp + 0x20]
mov eax, dword [ebp]
and ecx, 7
lea edx, [ecx*8]
or edx, 0xffffffc0
or edx, ecx
mov byte [eax], 0x31
mov byte [eax + 1], dl
add eax, 2
mov dword [ebp], eax
jmp 0x6ec59f46
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 3
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42cf0
jmp case.0x6ec4fa9a.1
mov ecx, dword [edi + 0x20]
mov edx, dword [edx*8 + 0x6ec6b220]
mov esi, dword [eax*8 + 0x6ec6b220]
mov ecx, dword [ecx + 0x10]
and edx, 0x7fff
mov dword [esp + 4], 0x40000000
and esi, 0x7fff
mov dword [esp], ebp
mov dword [esp + 0x20], edx
mov dword [esp + 0x1c], ecx
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4df00
mov edx, dword [esp + 0x28]
mov eax, ebp
mov dword [esp], esi
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [esp + 0x20]
and ecx, 0x7fff
call fcn.6ec44750
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
lea eax, [ecx + 1]
mov edx, 0xfffffffc
sub edx, eax
mov eax, edx
add eax, ecx
mov byte [ecx], 0xe9
mov dword [ecx + 1], eax
add ecx, 5
mov dword [ebp], ecx
jmp 0x6ec5b47b
mov ecx, dword [edi + 0x10]
mov edx, dword [edx*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and ecx, 0x7fff
mov ecx, dword [ecx*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 2
mov dword [esp], eax
mov eax, ebp
and ecx, 0x7fff
call fcn.6ec42cf0
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
mov eax, dword [eax*8 + 0x6ec6b220]
mov ecx, dword [esi*8 + 0x6ec6b220]
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
and ecx, 0x7fff
mov eax, ebp
and edx, 0x7fff
call fcn.6ec43150
jmp case.0x6ec4fa9a.1
mov eax, dword [eax*8 + 0x6ec6b220]
mov ecx, dword [edi + 0x10]
and eax, 0x7fff
and ecx, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 0xa
mov ecx, dword [ecx*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
and ecx, 0x7fff
mov eax, ebp
call fcn.6ec42e00
jmp case.0x6ec4fa9a.1
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, dword [edi + 0x10]
and eax, 0x7fff
and edx, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, 6
and eax, 0x7fff
mov dword [esp], eax
and ecx, 0x7fff
mov eax, ebp
call fcn.6ec42cf0
jmp case.0x6ec4fa9a.1
mov eax, dword [eax*8 + 0x6ec6b220]
mov ecx, dword [edi + 0x10]
and eax, 0x7fff
and ecx, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 0xb
mov ecx, dword [ecx*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
and ecx, 0x7fff
mov eax, ebp
call fcn.6ec42e00
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
mov ecx, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
mov edx, dword [esi*8 + 0x6ec6b220]
mov dword [esp], eax
mov eax, ebp
and ecx, 0x7fff
and edx, 0x7fff
mov dword [esp + 4], edx
mov edx, 4
call fcn.6ec42e00
jmp case.0x6ec4fa9a.1
mov ecx, dword [edi + 0x10]
mov edx, dword [edx*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and ecx, 0x7fff
mov ecx, dword [ecx*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 7
mov dword [esp], eax
mov eax, ebp
and ecx, 0x7fff
call fcn.6ec42cf0
jmp case.0x6ec4fa9a.1
mov ecx, esi
mov eax, dword [ebp]
and edx, 7
and ecx, 7
shl ecx, 3
or ecx, 0xffffffc0
or ecx, edx
mov byte [eax], 1
mov byte [eax + 1], cl
add eax, 2
mov dword [ebp], eax
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 6
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42cf0
jmp case.0x6ec4fa9a.1
mov ecx, dword [edi + 0x10]
mov edx, dword [edx*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and ecx, 0x7fff
mov ecx, dword [ecx*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 3
mov dword [esp], eax
mov eax, ebp
and ecx, 0x7fff
call fcn.6ec42cf0
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edi + 0x10]
and ecx, 0x7fff
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec44b90
jmp case.0x6ec4fa9a.1
mov edx, dword [edi + 0x10]
mov eax, dword [eax*8 + 0x6ec6b220]
mov ecx, dword [esi*8 + 0x6ec6b220]
and edx, 0x7fff
mov edx, dword [edx*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
and ecx, 0x7fff
mov eax, ebp
and edx, 0x7fff
call fcn.6ec43020
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and edx, 0x7fff
call fcn.6ec437f0
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and edx, 0x7fff
call fcn.6ec43860
jmp case.0x6ec4fa9a.1
mov ecx, dword [edi + 0x20]
mov eax, dword [eax*8 + 0x6ec6b220]
mov esi, dword [edx*8 + 0x6ec6b220]
mov ecx, dword [ecx + 0x10]
and eax, 0x7fff
mov dword [esp + 4], 0x40000000
and esi, 0x7fff
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4df00
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec448c0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov ecx, dword [edi + 0x20]
mov eax, dword [eax*8 + 0x6ec6b220]
mov esi, dword [edx*8 + 0x6ec6b220]
mov ecx, dword [ecx + 0x10]
and eax, 0x7fff
mov dword [esp + 4], 0x40000000
and esi, 0x7fff
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4df00
mov ecx, dword [esp + 0x28]
mov edx, esi
mov eax, dword [ecx*8 + 0x6ec6b220]
mov ecx, dword [esp + 0x20]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec445f0
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov ecx, dword [edi + 0x20]
mov eax, dword [eax*8 + 0x6ec6b220]
mov esi, dword [edx*8 + 0x6ec6b220]
mov ecx, dword [ecx + 0x10]
and eax, 0x7fff
mov dword [esp + 4], 0x40000000
and esi, 0x7fff
mov dword [esp], ebp
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], eax
call fcn.6ec4a980
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
mov eax, ebp
and edx, 0x7fff
call fcn.6ec4df00
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, esi
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec44750
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov dword [esp], eax
xor ecx, ecx
mov edx, 0x2a
mov dword [esp + 4], 0x17
mov eax, ebp
call fcn.6ec441a0
jmp case.0x6ec4fa9a.1
mov eax, dword [edi + 0x10]
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 7
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42cf0
jmp case.0x6ec4fa9a.1
mov edx, dword [ebp]
and eax, 7
lea ecx, [eax*8]
or ecx, 0xffffffc0
or eax, ecx
mov byte [edx], 0x31
mov byte [edx + 1], al
add edx, 2
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
mov ecx, dword [esp + 0x28]
and eax, 7
mov edx, dword [ebp]
and ecx, 7
shl ecx, 3
or ecx, 0xffffffc0
or ecx, eax
or eax, 0xffffffd8
mov byte [edx], 0x29
mov byte [edx + 1], cl
mov byte [edx + 2], 0xf7
mov byte [edx + 3], al
add edx, 4
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
call fcn.6ec4a980
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x20], eax
mov eax, dword [ebp]
and edx, 7
lea ecx, [edx*8]
or ecx, 0xffffffc0
or edx, ecx
mov byte [eax + 3], dl
mov edx, dword [esp + 0x20]
mov byte [eax], 0x66
mov byte [eax + 1], 0xf
mov byte [eax + 2], 0x76
add eax, 4
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, 0x73
mov dword [ebp], eax
mov eax, ebp
mov dword [esp + 4], 1
mov dword [esp], 2
and ecx, 0x7fff
call fcn.6ec43700
mov ecx, dword [esp + 0x20]
mov eax, dword [ebp]
mov edx, dword [ecx*8 + 0x6ec6b220]
mov ecx, esi
and ecx, 7
shl ecx, 3
or ecx, 0xffffffc0
and edx, 7
or edx, ecx
mov byte [eax + 3], dl
mov byte [eax], 0x66
mov byte [eax + 1], 0xf
mov byte [eax + 2], 0x54
add eax, 4
mov dword [ebp], eax
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov ecx, 1
mov eax, ebp
call fcn.6ec436b0
jmp case.0x6ec4fa9a.1
mov ecx, 1
mov eax, ebp
call fcn.6ec436b0
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
mov dword [esp + 0x1c], edx
call fcn.6ec4a980
mov edx, dword [esp + 0x1c]
mov edx, dword [edx*8 + 0x6ec6b220]
mov dword [esp + 0x28], eax
and eax, 0x7fff
mov ecx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x24], eax
mov eax, dword [ebp]
and edx, 7
and ecx, 7
shl ecx, 3
or ecx, 0xffffffc0
or edx, ecx
mov byte [eax + 3], dl
mov edx, dword [esp + 0x24]
mov byte [eax], 0x66
mov byte [eax + 1], 0xf
mov byte [eax + 2], 0x6e
add eax, 4
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, 0x73
mov dword [ebp], eax
mov eax, ebp
mov dword [esp + 4], 0x20
mov dword [esp], 6
and ecx, 0x7fff
call fcn.6ec43700
mov ecx, dword [esp + 0x24]
mov eax, dword [ebp]
mov edx, dword [ecx*8 + 0x6ec6b220]
mov ecx, dword [esp + 0x20]
mov byte [eax], 0x66
mov byte [eax + 1], 0xf
and edx, 7
and ecx, 7
shl ecx, 3
or ecx, 0xffffffc0
or edx, ecx
mov byte [eax + 3], dl
mov byte [eax + 2], 0x57
add eax, 4
mov dword [ebp], eax
mov eax, dword [esp + 0x28]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp 0x6ec53a91
mov ecx, 1
mov eax, ebp
call fcn.6ec436b0
jmp case.0x6ec4fa9a.1
mov edx, dword [ebp]
and eax, 7
and esi, 7
shl eax, 3
or eax, 0xffffffc0
or eax, esi
mov byte [edx], 0xf
mov byte [edx + 1], 0xaf
mov byte [edx + 2], al
add edx, 3
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
mov ecx, 1
mov eax, ebp
call fcn.6ec436b0
jmp case.0x6ec4fa9a.1
mov ecx, 1
mov eax, ebp
call fcn.6ec436b0
jmp case.0x6ec4fa9a.1
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
call fcn.6ec4a980
mov dword [esp + 0x24], eax
and eax, 0x7fff
mov edx, dword [eax*8 + 0x6ec6b220]
mov dword [esp + 0x20], eax
mov eax, dword [ebp]
and edx, 7
lea ecx, [edx*8]
or ecx, 0xffffffc0
or edx, ecx
mov byte [eax + 3], dl
mov edx, dword [esp + 0x20]
mov byte [eax], 0x66
mov byte [eax + 1], 0xf
mov byte [eax + 2], 0x76
add eax, 4
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, 0x72
mov dword [ebp], eax
mov eax, ebp
mov dword [esp + 4], 1
mov dword [esp], 2
and ecx, 0x7fff
call fcn.6ec43700
mov ecx, dword [esp + 0x20]
mov eax, dword [ebp]
mov edx, dword [ecx*8 + 0x6ec6b220]
mov ecx, esi
and ecx, 7
shl ecx, 3
or ecx, 0xffffffc0
and edx, 7
or edx, ecx
mov byte [eax + 2], dl
mov byte [eax], 0xf
mov byte [eax + 1], 0x54
add eax, 3
mov dword [ebp], eax
mov eax, dword [esp + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ec4a810
jmp case.0x6ec4fa9a.1
mov edx, dword [ebp]
and ecx, 7
and eax, 7
shl ecx, 3
or ecx, 0xffffffc0
or ecx, eax
mov byte [edx], 0x31
mov byte [edx + 1], cl
add edx, 2
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
mov ecx, 1
mov eax, ebp
call fcn.6ec436b0
jmp case.0x6ec4fa9a.1
cmp eax, edx
je case.0x6ec4fa9a.1
mov edx, dword [ebp]
shl eax, 3
and esi, 7
or eax, 0xffffffc0
or eax, esi
mov byte [edx], 0x89
mov byte [edx + 1], al
add edx, 2
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
mov edx, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and edx, 0x7fff
call fcn.6ec438d0
jmp case.0x6ec4fa9a.1
mov eax, dword [ebp]
mov ecx, 0xfffffffc
lea edx, [eax + 1]
sub ecx, edx
mov edx, ecx
mov ecx, edi
add edx, eax
mov dword [eax + 1], edx
lea edx, [eax + 5]
mov byte [eax], 0xe9
mov eax, dword [esp + 0x2c]
mov dword [ebp], edx
call fcn.6ec43ab0
jmp case.0x6ec4fa9a.1
mov edx, 4
sub edx, eax
mov eax, ebp
call fcn.6ec439a0
jmp 0x6ec58b60
mov ecx, dword [esp + 0x28]
and eax, 7
mov edx, dword [ebp]
and ecx, 7
shl ecx, 3
or ecx, 0xffffffc0
or ecx, eax
mov byte [edx], 9
mov byte [edx + 1], cl
add edx, 2
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
mov ecx, dword [esp + 0x28]
and eax, 7
mov edx, dword [ebp]
and ecx, 7
shl ecx, 3
or ecx, 0xffffffc0
or ecx, eax
mov byte [edx], 0x31
mov byte [edx + 1], cl
add edx, 2
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
test byte [edi + 8], 8
je 0x6ec563c8
jmp 0x6ec563bc
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, ebp
mov edx, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and edx, 0x7fff
call fcn.6ec438d0
jmp case.0x6ec4fa9a.1
mov ecx, dword [esp + 0x28]
and eax, 7
mov edx, dword [ebp]
and ecx, 7
shl ecx, 3
or ecx, 0xffffffc0
or ecx, eax
mov byte [edx], 0x21
mov byte [edx + 1], cl
add edx, 2
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 3
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f30
jmp 0x6ec58350
mov ecx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 7
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f30
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 0xb
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f90
jmp case.0x6ec4fa9a.1
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 7
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f30
jmp 0x6ec5ac25
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 3
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f30
jmp 0x6ec585e3
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 4
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f90
jmp 0x6ec588a7
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 7
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f30
jmp 0x6ec59e99
mov ecx, dword [eax + 0x10]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 7
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f30
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 3
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f30
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax + 0x10]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 3
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f30
jmp case.0x6ec4fa9a.1
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec432f0
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax + 0x10]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 2
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f30
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax + 0x10]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 2
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f30
jmp case.0x6ec4fa9a.1
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 6
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f30
jmp 0x6ec58151
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 0xa
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f90
jmp 0x6ec580f4
mov ecx, dword [eax + 0x10]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 6
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f30
jmp case.0x6ec4fa9a.1
mov ecx, 1
mov edx, esi
mov eax, ebp
call fcn.6ec436b0
jmp 0x6ec59be7
mov ecx, dword [eax + 0x10]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 3
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f30
jmp case.0x6ec4fa9a.1
mov ecx, dword [esp + 0x24]
and eax, 7
mov edx, dword [ebp]
and ecx, 7
shl ecx, 3
or ecx, 0xffffffc0
or ecx, eax
mov byte [edx], 9
mov byte [edx + 1], cl
add edx, 2
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 4
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f90
jmp 0x6ec5a47e
mov ecx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 7
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f30
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
and edx, 0x7fff
mov eax, ebp
call fcn.6ec44750
jmp case.0x6ec4fa9a.1
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 6
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f30
jmp 0x6ec59371
mov ecx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 4
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f90
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec432f0
jmp 0x6ec594dd
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 6
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f30
jmp 0x6ec59480
mov ecx, dword [eax + 0x10]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 6
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f30
jmp case.0x6ec4fa9a.1
mov ecx, 1
mov edx, esi
mov eax, ebp
call fcn.6ec436b0
jmp 0x6ec59420
mov ecx, 1
mov edx, esi
mov eax, ebp
call fcn.6ec436b0
jmp 0x6ec5b01d
mov ecx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 5
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f90
jmp case.0x6ec4fa9a.1
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 2
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f30
jmp 0x6ec591a3
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 5
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f90
jmp 0x6ec59146
mov ecx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 0xa
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f90
jmp case.0x6ec4fa9a.1
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 0xa
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f90
jmp 0x6ec583ad
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 2
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f30
jmp 0x6ec581ef
mov ecx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 6
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f30
jmp case.0x6ec4fa9a.1
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec43280
jmp case.0x6ec4fa9a.1
and edx, 0x7fff
mov dword [esp + 4], eax
mov eax, ebp
mov dword [esp], edx
mov edx, 3
call fcn.6ec43550
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec43280
jmp 0x6ec5a281
mov ecx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 4
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f90
jmp case.0x6ec4fa9a.1
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 5
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f90
jmp 0x6ec5971e
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
and edx, 0x7fff
mov eax, ebp
call fcn.6ec445f0
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
and edx, 0x7fff
mov eax, ebp
call fcn.6ec445f0
jmp case.0x6ec4fa9a.1
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 0xb
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f90
jmp 0x6ec58504
mov ecx, 1
mov edx, esi
mov eax, ebp
call fcn.6ec436b0
jmp 0x6ec58b38
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 2
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f30
jmp 0x6ec596c1
mov ecx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 5
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f90
jmp case.0x6ec4fa9a.1
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 7
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f30
jmp 0x6ec57dce
mov dword [esp], ecx
mov edx, 0x20
mov ecx, eax
mov eax, ebp
call fcn.6ec434c0
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 6
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f30
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec43280
jmp 0x6ec595ec
mov ecx, 1
mov edx, esi
mov eax, ebp
call fcn.6ec436b0
jmp 0x6ec5af17
mov ecx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 2
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f30
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax + 0x10]
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 7
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f30
jmp case.0x6ec4fa9a.1
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 7
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f30
jmp 0x6ec5a0ad
mov ecx, dword [esp + 0x24]
and eax, 7
mov edx, dword [ebp]
and ecx, 7
shl ecx, 3
or ecx, 0xffffffc0
or ecx, eax
mov byte [edx], 0x21
mov byte [edx + 1], cl
add edx, 2
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
and edx, 0x7fff
mov eax, ebp
call fcn.6ec44a20
jmp case.0x6ec4fa9a.1
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec432f0
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov edx, dword [ebp]
mov eax, ebp
call fcn.6ec432f0
jmp 0x6ec58eaf
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
and edx, 0x7fff
mov eax, ebp
call fcn.6ec448c0
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 3
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f30
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 0xb
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f90
jmp case.0x6ec4fa9a.1
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 3
mov dword [esp], eax
mov eax, ebp
call fcn.6ec43550
jmp 0x6ec5abc7
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
and edx, 0x7fff
mov eax, ebp
call fcn.6ec448c0
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 2
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f30
jmp case.0x6ec4fa9a.1
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 3
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f30
jmp 0x6ec5b307
mov eax, dword [eax*8 + 0x6ec6b220]
mov edx, 2
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f30
jmp 0x6ec59cec
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 3
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f30
jmp 0x6ec5ad82
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 6
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f30
jmp 0x6ec5824c
mov ecx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and eax, 0x7fff
mov dword [esp + 4], eax
mov eax, dword [edx*8 + 0x6ec6b220]
mov edx, 0xa
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec42f90
jmp case.0x6ec4fa9a.1
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
and edx, 0x7fff
mov eax, ebp
call fcn.6ec44750
jmp case.0x6ec4fa9a.1
mov edx, dword [esi*8 + 0x6ec6b220]
mov eax, dword [eax*8 + 0x6ec6b220]
and edx, 0x7fff
and eax, 0x7fff
mov dword [esp + 4], edx
mov edx, 0xb
mov dword [esp], eax
mov ecx, dword [ebp]
mov eax, ebp
call fcn.6ec42f90
jmp 0x6ec597bc
mov ecx, dword [eax*8 + 0x6ec6b220]
mov eax, dword [esi*8 + 0x6ec6b220]
mov edx, dword [edx*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
and edx, 0x7fff
mov eax, ebp
call fcn.6ec44a20
jmp case.0x6ec4fa9a.1
mov ecx, dword [edx*8 + 0x6ec6b220]
mov edx, dword [eax + 0x10]
mov eax, dword [esi*8 + 0x6ec6b220]
and ecx, 0x7fff
and eax, 0x7fff
mov dword [esp], eax
mov eax, ebp
call fcn.6ec43280
jmp case.0x6ec4fa9a.1
mov ecx, 1
mov edx, esi
mov eax, ebp
call fcn.6ec436b0
jmp 0x6ec5958c
mov dword [esp + 4], 0xc0000000
mov dword [esp], ebp
call fcn.6ec4a980
mov esi, dword [esi*8 + 0x6ec6b220]
and esi, 7
mov edx, eax
mov ecx, eax
mov eax, dword [ebp]
and edx, 0x7fff
mov dword [esp + 0x24], edx
mov edx, dword [edx*8 + 0x6ec6b220]
mov byte [eax], 0x66
mov byte [eax + 1], 0xf
and edx, 7
shl edx, 3
or edx, 0xffffffc0
or edx, esi
mov byte [eax + 3], dl
mov edx, dword [esp + 0x24]
mov byte [eax + 2], 0x6e
mov esi, dword [edx*8 + 0x6ec6b220]
mov edx, dword [esp + 0x20]
mov byte [eax + 4], 0xf
mov byte [eax + 5], 0x57
and esi, 7
and edx, 7
shl edx, 3
or edx, 0xffffffc0
or edx, esi
mov byte [eax + 6], dl
add eax, 7
mov dword [ebp], eax
mov dword [esp + 4], ecx
mov dword [esp], ebp
call fcn.6ec4a810
jmp 0x6ec542b2
mov edx, dword [esp + 0x20]
mov ecx, 0xffffffff
mov eax, ebp
call fcn.6ec436b0
jmp case.0x6ec4fa9a.1
mov edx, dword [esp + 0x20]
mov eax, ebp
call fcn.6ec41680
jmp case.0x6ec4fa9a.1
bsf eax, eax
mov dword [esp], eax
mov eax, ebp
call fcn.6ec44110
jmp case.0x6ec4fa9a.1
mov ecx, dword [esp + 0x28]
mov esi, dword [esp + 0x20]
mov byte [edx], 0x6b
mov byte [edx + 2], al
and ecx, 7
shl ecx, 3
and esi, 7
or ecx, 0xffffffc0
or ecx, esi
mov byte [edx + 1], cl
add edx, 3
mov dword [ebp], edx
jmp case.0x6ec4fa9a.1