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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x228
mov eax, dword [0x5b0008]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
push ebx
mov ebx, dword [ecx + 0x10]
mov dword [ebp - 0x214], eax
mov eax, dword [ecx + 8]
push esi
mov esi, edx
mov dword [ebp - 0x20c], eax
mov eax, dword [ecx + 4]
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x21c], esi
mov dword [ebp - 0x224], ecx
mov dword [ebp - 0x210], edx
mov dword [ebp - 0x208], ebx
mov dword [ebp - 0x228], eax
push edi
lea edi, [ebp - 0x204]
cmp eax, 0x200
jb 0x491500
mov edi, dword [ecx]
movsx esi, word [esi]
sub esi, dword [ebp + 8]
mov eax, esi
sar eax, 0x1f
add esi, eax
xor eax, esi
movzx ecx, byte [eax + 0x57c690]
mov dword [ebp - 0x218], ecx
mov eax, dword [edx + ecx*4]
mov edx, 1
mov dword [ebp - 0x220], edx
shl edx, cl
dec edx
shl eax, cl
and edx, esi
mov esi, 2
or eax, edx
mov edx, dword [ebp - 0x210]
movsx ecx, byte [edx + ecx + 0x400]
mov edx, dword [ebp - 0x218]
add edx, ecx
sub ebx, edx
jns 0x491616
mov ecx, ebx
mov edx, eax
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x208]
shl dword [ebp - 0x20c], cl
or edx, dword [ebp - 0x20c]
mov dword [ebp - 0x208], edx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x4915f6
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, esi
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, dword [ebp - 0x208]
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, esi
sub ecx, edx
add edi, ecx
mov ecx, dword [ebp - 0x208]
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, esi
sub ecx, edx
add edi, ecx
mov ecx, dword [ebp - 0x208]
cmp cl, 0xff
sbb edx, edx
mov byte [edi], cl
neg edx
mov ecx, esi
mov byte [edi + 1], 0
sub ecx, edx
add edi, ecx
add ebx, 0x20
jmp 0x491622
shr ecx, 0x18
mov byte [edi], cl
mov ecx, edx
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x491622
mov ecx, edx
mov edx, dword [ebp - 0x20c]
shl edx, cl
or eax, edx
mov ecx, dword [ebp - 0x21c]
mov esi, dword [ebp - 0x214]
movsx edx, word [ecx + 2]
test edx, edx
jne 0x491640
mov edx, 0x10
jmp 0x491774
mov ecx, edx
mov dword [ebp - 0x208], ebx
sar ecx, 0x1f
add edx, ecx
xor ecx, edx
mov dword [ebp - 0x210], edx
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
mov edx, dword [esi + ecx*4]
shl edx, cl
mov dword [ebp - 0x214], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
movsx ecx, byte [esi + ecx + 0x400]
dec edx
and edx, dword [ebp - 0x210]
or dword [ebp - 0x214], edx
mov edx, dword [ebp - 0x218]
add edx, ecx
sub ebx, edx
jns 0x491762
mov edx, dword [ebp - 0x214]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x208]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x49173c
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x214]
add ebx, 0x20
jmp 0x49176c
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x214]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x49176c
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x21c]
xor edx, edx
movsx ecx, word [ecx + 0x10]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x49178a
add edx, 0x10
jmp 0x4918c6
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
mov dword [ebp - 0x218], ebx
movzx ecx, byte [ecx + 0x57c690]
add edx, ecx
mov dword [ebp - 0x210], ecx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x210]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x4918ba
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x218]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x491894
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x4918c4
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x4918c4
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x20]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x4918e2
add edx, 0x10
jmp 0x491a1e
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
mov dword [ebp - 0x218], ebx
movzx ecx, byte [ecx + 0x57c690]
add edx, ecx
mov dword [ebp - 0x210], ecx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x210]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x491a12
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x218]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x4919ec
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x491a1c
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x491a1c
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x12]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x491a3a
add edx, 0x10
jmp 0x491b76
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
mov dword [ebp - 0x218], ebx
movzx ecx, byte [ecx + 0x57c690]
add edx, ecx
mov dword [ebp - 0x210], ecx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x210]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x491b6a
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x218]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x491b44
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x491b74
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x491b74
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 4]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x491b92
add edx, 0x10
jmp 0x491cce
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
mov dword [ebp - 0x218], ebx
movzx ecx, byte [ecx + 0x57c690]
add edx, ecx
mov dword [ebp - 0x210], ecx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x210]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x491cc2
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x218]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x491c9c
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x491ccc
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x491ccc
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 6]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x491cea
add edx, 0x10
jmp 0x491f37
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jb 0x491e17
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x20c], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x491dfa
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x491dd4
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x491dfe
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x491dfe
shl eax, cl
or eax, edx
sub dword [ebp - 0x20c], 1
jne 0x491d30
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x491f2b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x491f05
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x491f35
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x491f35
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x14]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x491f53
add edx, 0x10
jmp 0x4921a7
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x210], ecx
cmp edx, 0x100
jb 0x492087
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x218], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x49206a
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x492044
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49206e
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49206e
shl eax, cl
or eax, edx
sub dword [ebp - 0x218], 1
jne 0x491fa0
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x210]
add edx, ecx
mov dword [ebp - 0x218], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x210]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x49219b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x218]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x492175
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x4921a5
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x4921a5
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x22]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x4921c3
add edx, 0x10
jmp 0x492417
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jb 0x4922f7
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x4922da
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x4922b4
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x4922de
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x4922de
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x492210
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x49240b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x4923e5
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x492415
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x492415
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x30]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x492433
add edx, 0x10
jmp 0x492687
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jb 0x492567
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x49254a
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x492524
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49254e
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49254e
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x492480
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x49267b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x492655
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x492685
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x492685
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x40]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x4926a3
add edx, 0x10
jmp 0x4928f7
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jb 0x4927d7
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x4927ba
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x492794
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x4927be
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x4927be
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x4926f0
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x4928eb
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x4928c5
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x4928f5
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x4928f5
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x32]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x492913
add edx, 0x10
jmp 0x492b67
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jb 0x492a47
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x492a2a
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x492a04
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x492a2e
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x492a2e
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x492960
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x492b5b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x492b35
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x492b65
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x492b65
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x24]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x492b83
add edx, 0x10
jmp 0x492dd7
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jb 0x492cb7
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x492c9a
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x492c74
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x492c9e
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x492c9e
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x492bd0
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x492dcb
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x492da5
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x492dd5
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x492dd5
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x16]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x492df3
add edx, 0x10
jmp 0x493047
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jb 0x492f27
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x492f0a
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x492ee4
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x492f0e
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x492f0e
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x492e40
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x49303b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x493015
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x493045
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x493045
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 8]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x493063
add edx, 0x10
jmp 0x4932b7
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jb 0x493197
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x49317a
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x493154
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49317e
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49317e
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x4930b0
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x4932ab
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x493285
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x4932b5
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x4932b5
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0xa]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x4932d3
add edx, 0x10
jmp 0x493527
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jb 0x493407
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x4933ea
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x4933c4
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x4933ee
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x4933ee
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x493320
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x49351b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x4934f5
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x493525
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x493525
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x18]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x493543
add edx, 0x10
jmp 0x493797
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jb 0x493677
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x49365a
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x493634
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49365e
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49365e
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x493590
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x49378b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x493765
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x493795
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x493795
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x26]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x4937b3
add edx, 0x10
jmp 0x493a07
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jb 0x4938e7
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x4938ca
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x4938a4
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x4938ce
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x4938ce
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x493800
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x4939fb
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x4939d5
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x493a05
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x493a05
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x34]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x493a23
add edx, 0x10
jmp 0x493c77
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jb 0x493b57
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x493b3a
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x493b14
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x493b3e
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x493b3e
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x493a70
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x493c6b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x493c45
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x493c75
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x493c75
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x42]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x493c93
add edx, 0x10
jmp 0x493ee7
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jb 0x493dc7
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x493daa
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x493d84
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x493dae
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x493dae
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x493ce0
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x493edb
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x493eb5
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x493ee5
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x493ee5
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x50]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x493f03
add edx, 0x10
jmp 0x494157
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jb 0x494037
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x49401a
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x493ff4
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49401e
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49401e
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x493f50
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x49414b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x494125
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x494155
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x494155
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x60]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x494173
add edx, 0x10
jmp 0x4943c7
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jb 0x4942a7
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x49428a
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x494264
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49428e
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49428e
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x4941c0
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x4943bb
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x494395
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x4943c5
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x4943c5
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x52]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x4943e3
add edx, 0x10
jmp 0x494637
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jb 0x494517
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x4944fa
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x4944d4
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x4944fe
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x4944fe
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x494430
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x49462b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x494605
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x494635
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x494635
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x44]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x494653
add edx, 0x10
jmp 0x4948a7
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jb 0x494787
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x49476a
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x494744
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49476e
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49476e
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x4946a0
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x49489b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x494875
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x4948a5
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x4948a5
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x36]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x4948c3
add edx, 0x10
jmp 0x494b17
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jb 0x4949f7
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x4949da
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x4949b4
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x4949de
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x4949de
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x494910
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x494b0b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x494ae5
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x494b15
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x494b15
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x28]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x494b33
add edx, 0x10
jmp 0x494d87
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jb 0x494c67
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x494c4a
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x494c24
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x494c4e
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x494c4e
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x494b80
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x494d7b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x494d55
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x494d85
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x494d85
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x1a]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x494da3
add edx, 0x10
jmp 0x494ff7
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jb 0x494ed7
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x494eba
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x494e94
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x494ebe
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x494ebe
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x494df0
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x494feb
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x494fc5
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x494ff5
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x494ff5
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0xc]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x495013
add edx, 0x10
jmp 0x495267
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jb 0x495147
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x49512a
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x495104
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49512e
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49512e
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x495060
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x49525b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x495235
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x495265
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x495265
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0xe]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x495283
add edx, 0x10
jmp 0x4954d7
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jb 0x4953b7
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x49539a
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x495374
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49539e
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49539e
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x4952d0
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x4954cb
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x4954a5
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x4954d5
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x4954d5
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x1c]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x4954f3
add edx, 0x10
jmp 0x495747
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jl 0x495627
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x49560a
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x4955e4
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49560e
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49560e
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x495540
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x49573b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x495715
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x495745
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x495745
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x2a]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x495763
add edx, 0x10
jmp 0x4959b7
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jl 0x495897
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x49587a
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x495854
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49587e
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49587e
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x4957b0
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x4959ab
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x495985
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x4959b5
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x4959b5
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x38]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x4959d3
add edx, 0x10
jmp 0x495c27
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jl 0x495b07
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x495aea
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x495ac4
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x495aee
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x495aee
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x495a20
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x495c1b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x495bf5
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x495c25
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x495c25
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x46]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x495c43
add edx, 0x10
jmp 0x495e97
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jl 0x495d77
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x495d5a
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x495d34
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x495d5e
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x495d5e
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x495c90
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x495e8b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x495e65
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x495e95
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x495e95
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x54]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x495eb3
add edx, 0x10
jmp 0x496107
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jl 0x495fe7
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x495fca
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x495fa4
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x495fce
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x495fce
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x495f00
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x4960fb
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x4960d5
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x496105
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x496105
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x62]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x496123
add edx, 0x10
jmp 0x496377
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jl 0x496257
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x49623a
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x496214
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49623e
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49623e
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x496170
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x49636b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x496345
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x496375
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x496375
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x70]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x496393
add edx, 0x10
jmp 0x4965e7
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jl 0x4964c7
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x4964aa
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x496484
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x4964ae
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x4964ae
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x4963e0
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x4965db
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x4965b5
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x4965e5
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x4965e5
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x72]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x496603
add edx, 0x10
jmp 0x496857
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jl 0x496737
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x49671a
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x4966f4
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49671e
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49671e
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x496650
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x49684b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x496825
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x496855
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x496855
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x64]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x496873
add edx, 0x10
jmp 0x496ac7
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jl 0x4969a7
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x49698a
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x496964
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49698e
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x49698e
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x4968c0
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x496abb
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x496a95
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x496ac5
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x496ac5
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x56]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x496ae3
add edx, 0x10
jmp 0x496d37
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jl 0x496c17
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x496bfa
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x496bd4
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x496bfe
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x496bfe
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x496b30
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x496d2b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x496d05
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x496d35
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x496d35
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x48]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x496d53
add edx, 0x10
jmp 0x496fa7
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jl 0x496e87
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x496e6a
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x496e44
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x496e6e
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x496e6e
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x496da0
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x496f9b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x496f75
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x496fa5
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x496fa5
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x3a]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x496fc3
add edx, 0x10
jmp 0x497217
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jl 0x4970f7
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x4970da
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x4970b4
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x4970de
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x4970de
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x497010
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x49720b
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x4971e5
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x497215
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x497215
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x2c]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x497233
add edx, 0x10
jmp 0x49748d
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jl 0x49736a
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x49734d
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x497324
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x497351
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x497351
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x497280
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x497481
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x497458
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x49748b
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x49748b
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x1e]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x4974ad
add edx, 0x10
jmp 0x4976fd
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jl 0x4975da
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x4975bd
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x497594
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x4975c1
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x4975c1
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x4974f0
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x4976f1
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x4976c8
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x4976fb
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x4976fb
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x2e]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x49771d
add edx, 0x10
jmp 0x49796d
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jl 0x49784a
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x49782d
add ecx, ebx
shl eax, cl
mov ecx, ebx
neg ecx
shr edx, cl
or eax, edx
lea ecx, [eax + 0x1010101]
not ecx
and ecx, eax
test ecx, 0x80808080
mov ecx, eax
je 0x497804
shr ecx, 0x18
mov byte [edi], cl
cmp cl, 0xff
mov byte [edi + 1], 0
mov ecx, 2
sbb edx, edx
neg edx
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 0x10
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
mov ecx, eax
shr ecx, 8
cmp cl, 0xff
mov byte [edi], cl
sbb edx, edx
neg edx
mov byte [edi + 1], 0
mov ecx, 2
sub ecx, edx
add edi, ecx
cmp al, 0xff
sbb ecx, ecx
neg ecx
mov byte [edi], al
mov eax, 2
sub eax, ecx
mov byte [edi + 1], 0
add edi, eax
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x497831
shr ecx, 0x18
mov byte [edi], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 2], cl
mov byte [edi + 3], al
add edi, 4
mov eax, dword [esi + 0x3c0]
add ebx, 0x20
jmp 0x497831
shl eax, cl
or eax, edx
sub dword [ebp - 0x210], 1
jne 0x497760
mov edx, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x218]
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x497961
mov edx, dword [ebp - 0x20c]
mov ecx, ebx
neg ecx
sar edx, cl
mov ecx, dword [ebp - 0x210]
shl eax, cl
or edx, eax
mov dword [ebp - 0x208], edx
lea eax, [edx + 0x1010101]
not eax
and eax, edx
test eax, 0x80808080
mov eax, edx
je 0x497938
shr eax, 0x18
mov edx, 2
mov byte [edi], al
cmp al, 0xff
mov byte [edi + 1], 0
mov eax, edx
sbb ecx, ecx
neg ecx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 0x10
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
shr eax, 8
cmp al, 0xff
mov byte [edi], al
sbb ecx, ecx
neg ecx
mov byte [edi + 1], 0
mov eax, edx
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x208]
cmp al, 0xff
sbb ecx, ecx
mov byte [edi], al
neg ecx
mov eax, edx
mov byte [edi + 1], 0
sub eax, ecx
add edi, eax
mov eax, dword [ebp - 0x20c]
add ebx, 0x20
jmp 0x49796b
shr eax, 0x18
mov byte [edi], al
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov eax, edx
shr eax, 8
mov byte [edi + 2], al
mov eax, dword [ebp - 0x20c]
mov byte [edi + 3], dl
add edi, 4
add ebx, 0x20
jmp 0x49796b
mov ecx, edx
shl eax, cl
or eax, dword [ebp - 0x20c]
xor edx, edx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x3c]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x49798d
add edx, 0x10
jmp 0x497bdd
sar ecx, 0x1f
add dword [ebp - 0x208], ecx
xor ecx, dword [ebp - 0x208]
movzx ecx, byte [ecx + 0x57c690]
mov dword [ebp - 0x218], ecx
cmp edx, 0x100
jl 0x497aba
mov ecx, edx
shr ecx, 8
mov dword [ebp - 0x210], ecx
neg ecx
shl ecx, 8
add edx, ecx
mov dword [ebp - 0x214], edx
nop dword [eax]
movsx ecx, byte [esi + 0x4f0]
sub ebx, ecx
mov edx, dword [esi + 0x3c0]
jns 0x497a9d
add edx, ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], edx
mov edx, dword [esi + edx*4]
shl edx, cl
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x220]
shl edx, cl
mov ecx, dword [ebp - 0x214]
dec edx
and edx, dword [ebp - 0x208]
or dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x218]
movsx ecx, byte [esi + ecx + 0x400]
add edx, ecx
sub ebx, edx
jns 0x497bd1
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x4a]
mov dword [ebp - 0x208], ecx
test ecx, ecx
jne 0x497bfd