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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffd54
push ebx
push esi
push edi
mov eax, dword [ebp + 0x18]
mov edx, dword [eax + 0x3c0]
mov dword [ebp - 0x1c], edx
xor edx, edx
mov ecx, dword [ebp + 0x18]
movsx eax, byte [ecx + 0x4f0]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x2c], edx
mov ecx, dword [ebp + 8]
mov eax, dword [ebp + 8]
mov edx, dword [ecx + 8]
mov ecx, dword [ebp + 8]
mov eax, dword [eax + 0xc]
mov ebx, dword [ecx + 4]
cmp ebx, 0x100
jae 0x4fff47
mov dword [ebp - 0x2c], 1
lea ebx, [ebp - 0x2ac]
jmp 0x4fff4c
mov ecx, dword [ebp + 8]
mov ebx, dword [ecx]
mov ecx, dword [ebp + 0xc]
mov esi, dword [ebp + 0x10]
movsx ecx, word [ecx]
sub ecx, esi
mov dword [ebp - 8], ecx
mov dword [ebp - 4], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
mov ecx, dword [ebp + 0x14]
mov esi, dword [ebp - 0x10]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x14]
mov esi, dword [ebp - 0x10]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x4ffff4
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x2d], cl
mov cl, byte [ebp - 0x2d]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x2d]
cmp cl, 0xff
jne 0x4fffd4
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x2e], cl
mov cl, byte [ebp - 0x2e]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x2e]
cmp cl, 0xff
jne 0x4ffff4
mov byte [ebx], 0
inc ebx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x500054
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x2f], cl
mov cl, byte [ebp - 0x2f]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x2f]
cmp cl, 0xff
jne 0x500034
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x30], cl
mov cl, byte [ebp - 0x30]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x30]
cmp cl, 0xff
jne 0x500054
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 2]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x50006a
inc esi
jmp 0x5001d3
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x5000f7
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x5000ef
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x31], cl
mov cl, byte [ebp - 0x31]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x31]
cmp cl, 0xff
jne 0x5000cf
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x32], cl
mov cl, byte [ebp - 0x32]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x32]
cmp cl, 0xff
jne 0x5000ef
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x50009d
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x50017f
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x33], cl
mov cl, byte [ebp - 0x33]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x33]
cmp cl, 0xff
jne 0x50015f
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x34], cl
mov cl, byte [ebp - 0x34]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x34]
cmp cl, 0xff
jne 0x50017f
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x5001d1
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x35], cl
mov cl, byte [ebp - 0x35]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x35]
cmp cl, 0xff
jne 0x5001b1
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x36], cl
mov cl, byte [ebp - 0x36]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x36]
cmp cl, 0xff
jne 0x5001d1
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x10]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x5001e7
inc esi
jmp 0x500350
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x500274
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x50026c
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x37], cl
mov cl, byte [ebp - 0x37]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x37]
cmp cl, 0xff
jne 0x50024c
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x38], cl
mov cl, byte [ebp - 0x38]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x38]
cmp cl, 0xff
jne 0x50026c
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x50021a
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x5002fc
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x39], cl
mov cl, byte [ebp - 0x39]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x39]
cmp cl, 0xff
jne 0x5002dc
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x3a], cl
mov cl, byte [ebp - 0x3a]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x3a]
cmp cl, 0xff
jne 0x5002fc
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x50034e
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x3b], cl
mov cl, byte [ebp - 0x3b]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x3b]
cmp cl, 0xff
jne 0x50032e
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x3c], cl
mov cl, byte [ebp - 0x3c]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x3c]
cmp cl, 0xff
jne 0x50034e
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x20]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x500364
inc esi
jmp 0x5004cd
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x5003f1
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x5003e9
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x3d], cl
mov cl, byte [ebp - 0x3d]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x3d]
cmp cl, 0xff
jne 0x5003c9
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x3e], cl
mov cl, byte [ebp - 0x3e]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x3e]
cmp cl, 0xff
jne 0x5003e9
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x500397
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x500479
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x3f], cl
mov cl, byte [ebp - 0x3f]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x3f]
cmp cl, 0xff
jne 0x500459
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x40], cl
mov cl, byte [ebp - 0x40]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x40]
cmp cl, 0xff
jne 0x500479
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x5004cb
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x41], cl
mov cl, byte [ebp - 0x41]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x41]
cmp cl, 0xff
jne 0x5004ab
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x42], cl
mov cl, byte [ebp - 0x42]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x42]
cmp cl, 0xff
jne 0x5004cb
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x12]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x5004e1
inc esi
jmp 0x50064a
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x50056e
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x500566
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x43], cl
mov cl, byte [ebp - 0x43]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x43]
cmp cl, 0xff
jne 0x500546
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x44], cl
mov cl, byte [ebp - 0x44]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x44]
cmp cl, 0xff
jne 0x500566
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x500514
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x5005f6
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x45], cl
mov cl, byte [ebp - 0x45]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x45]
cmp cl, 0xff
jne 0x5005d6
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x46], cl
mov cl, byte [ebp - 0x46]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x46]
cmp cl, 0xff
jne 0x5005f6
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x500648
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x47], cl
mov cl, byte [ebp - 0x47]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x47]
cmp cl, 0xff
jne 0x500628
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x48], cl
mov cl, byte [ebp - 0x48]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x48]
cmp cl, 0xff
jne 0x500648
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 4]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x50065e
inc esi
jmp 0x5007c7
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x5006eb
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x5006e3
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x49], cl
mov cl, byte [ebp - 0x49]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x49]
cmp cl, 0xff
jne 0x5006c3
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x4a], cl
mov cl, byte [ebp - 0x4a]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x4a]
cmp cl, 0xff
jne 0x5006e3
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x500691
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x500773
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x4b], cl
mov cl, byte [ebp - 0x4b]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x4b]
cmp cl, 0xff
jne 0x500753
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x4c], cl
mov cl, byte [ebp - 0x4c]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x4c]
cmp cl, 0xff
jne 0x500773
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x5007c5
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x4d], cl
mov cl, byte [ebp - 0x4d]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x4d]
cmp cl, 0xff
jne 0x5007a5
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x4e], cl
mov cl, byte [ebp - 0x4e]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x4e]
cmp cl, 0xff
jne 0x5007c5
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 6]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x5007db
inc esi
jmp 0x500944
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x500868
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x500860
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x4f], cl
mov cl, byte [ebp - 0x4f]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x4f]
cmp cl, 0xff
jne 0x500840
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x50], cl
mov cl, byte [ebp - 0x50]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x50]
cmp cl, 0xff
jne 0x500860
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x50080e
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x5008f0
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x51], cl
mov cl, byte [ebp - 0x51]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x51]
cmp cl, 0xff
jne 0x5008d0
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x52], cl
mov cl, byte [ebp - 0x52]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x52]
cmp cl, 0xff
jne 0x5008f0
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x500942
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x53], cl
mov cl, byte [ebp - 0x53]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x53]
cmp cl, 0xff
jne 0x500922
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x54], cl
mov cl, byte [ebp - 0x54]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x54]
cmp cl, 0xff
jne 0x500942
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x14]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x500958
inc esi
jmp 0x500ac1
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x5009e5
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x5009dd
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x55], cl
mov cl, byte [ebp - 0x55]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x55]
cmp cl, 0xff
jne 0x5009bd
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x56], cl
mov cl, byte [ebp - 0x56]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x56]
cmp cl, 0xff
jne 0x5009dd
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x50098b
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x500a6d
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x57], cl
mov cl, byte [ebp - 0x57]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x57]
cmp cl, 0xff
jne 0x500a4d
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x58], cl
mov cl, byte [ebp - 0x58]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x58]
cmp cl, 0xff
jne 0x500a6d
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x500abf
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x59], cl
mov cl, byte [ebp - 0x59]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x59]
cmp cl, 0xff
jne 0x500a9f
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x5a], cl
mov cl, byte [ebp - 0x5a]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x5a]
cmp cl, 0xff
jne 0x500abf
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x22]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x500ad5
inc esi
jmp 0x500c3e
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x500b62
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x500b5a
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x5b], cl
mov cl, byte [ebp - 0x5b]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x5b]
cmp cl, 0xff
jne 0x500b3a
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x5c], cl
mov cl, byte [ebp - 0x5c]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x5c]
cmp cl, 0xff
jne 0x500b5a
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x500b08
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x500bea
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x5d], cl
mov cl, byte [ebp - 0x5d]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x5d]
cmp cl, 0xff
jne 0x500bca
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x5e], cl
mov cl, byte [ebp - 0x5e]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x5e]
cmp cl, 0xff
jne 0x500bea
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x500c3c
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x5f], cl
mov cl, byte [ebp - 0x5f]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x5f]
cmp cl, 0xff
jne 0x500c1c
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x60], cl
mov cl, byte [ebp - 0x60]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x60]
cmp cl, 0xff
jne 0x500c3c
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x30]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x500c52
inc esi
jmp 0x500dbb
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x500cdf
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x500cd7
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x61], cl
mov cl, byte [ebp - 0x61]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x61]
cmp cl, 0xff
jne 0x500cb7
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x62], cl
mov cl, byte [ebp - 0x62]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x62]
cmp cl, 0xff
jne 0x500cd7
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x500c85
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x500d67
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x63], cl
mov cl, byte [ebp - 0x63]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x63]
cmp cl, 0xff
jne 0x500d47
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x64], cl
mov cl, byte [ebp - 0x64]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x64]
cmp cl, 0xff
jne 0x500d67
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x500db9
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x65], cl
mov cl, byte [ebp - 0x65]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x65]
cmp cl, 0xff
jne 0x500d99
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x66], cl
mov cl, byte [ebp - 0x66]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x66]
cmp cl, 0xff
jne 0x500db9
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x40]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x500dcf
inc esi
jmp 0x500f38
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x500e5c
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x500e54
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x67], cl
mov cl, byte [ebp - 0x67]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x67]
cmp cl, 0xff
jne 0x500e34
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x68], cl
mov cl, byte [ebp - 0x68]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x68]
cmp cl, 0xff
jne 0x500e54
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x500e02
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x500ee4
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x69], cl
mov cl, byte [ebp - 0x69]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x69]
cmp cl, 0xff
jne 0x500ec4
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x6a], cl
mov cl, byte [ebp - 0x6a]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x6a]
cmp cl, 0xff
jne 0x500ee4
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x500f36
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x6b], cl
mov cl, byte [ebp - 0x6b]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x6b]
cmp cl, 0xff
jne 0x500f16
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x6c], cl
mov cl, byte [ebp - 0x6c]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x6c]
cmp cl, 0xff
jne 0x500f36
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x32]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x500f4c
inc esi
jmp 0x5010b5
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x500fd9
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x500fd1
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x6d], cl
mov cl, byte [ebp - 0x6d]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x6d]
cmp cl, 0xff
jne 0x500fb1
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x6e], cl
mov cl, byte [ebp - 0x6e]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x6e]
cmp cl, 0xff
jne 0x500fd1
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x500f7f
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x501061
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x6f], cl
mov cl, byte [ebp - 0x6f]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x6f]
cmp cl, 0xff
jne 0x501041
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x70], cl
mov cl, byte [ebp - 0x70]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x70]
cmp cl, 0xff
jne 0x501061
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x5010b3
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x71], cl
mov cl, byte [ebp - 0x71]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x71]
cmp cl, 0xff
jne 0x501093
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x72], cl
mov cl, byte [ebp - 0x72]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x72]
cmp cl, 0xff
jne 0x5010b3
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x24]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x5010c9
inc esi
jmp 0x501232
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x501156
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x50114e
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x73], cl
mov cl, byte [ebp - 0x73]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x73]
cmp cl, 0xff
jne 0x50112e
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x74], cl
mov cl, byte [ebp - 0x74]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x74]
cmp cl, 0xff
jne 0x50114e
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x5010fc
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x5011de
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x75], cl
mov cl, byte [ebp - 0x75]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x75]
cmp cl, 0xff
jne 0x5011be
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x76], cl
mov cl, byte [ebp - 0x76]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x76]
cmp cl, 0xff
jne 0x5011de
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x501230
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x77], cl
mov cl, byte [ebp - 0x77]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x77]
cmp cl, 0xff
jne 0x501210
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x78], cl
mov cl, byte [ebp - 0x78]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x78]
cmp cl, 0xff
jne 0x501230
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x16]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x501246
inc esi
jmp 0x5013af
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x5012d3
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x5012cb
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x79], cl
mov cl, byte [ebp - 0x79]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x79]
cmp cl, 0xff
jne 0x5012ab
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x7a], cl
mov cl, byte [ebp - 0x7a]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x7a]
cmp cl, 0xff
jne 0x5012cb
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x501279
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x50135b
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x7b], cl
mov cl, byte [ebp - 0x7b]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x7b]
cmp cl, 0xff
jne 0x50133b
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x7c], cl
mov cl, byte [ebp - 0x7c]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x7c]
cmp cl, 0xff
jne 0x50135b
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x5013ad
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x7d], cl
mov cl, byte [ebp - 0x7d]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x7d]
cmp cl, 0xff
jne 0x50138d
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x7e], cl
mov cl, byte [ebp - 0x7e]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x7e]
cmp cl, 0xff
jne 0x5013ad
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 8]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x5013c3
inc esi
jmp 0x501550
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x501450
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x501448
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x7f], cl
mov cl, byte [ebp - 0x7f]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x7f]
cmp cl, 0xff
jne 0x501428
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x80], cl
mov cl, byte [ebp - 0x80]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x80]
cmp cl, 0xff
jne 0x501448
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x5013f6
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x5014ea
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x81], cl
mov cl, byte [ebp - 0x81]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x81]
cmp cl, 0xff
jne 0x5014c1
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x82], cl
mov cl, byte [ebp - 0x82]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x82]
cmp cl, 0xff
jne 0x5014ea
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x50154e
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x83], cl
mov cl, byte [ebp - 0x83]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x83]
cmp cl, 0xff
jne 0x501525
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x84], cl
mov cl, byte [ebp - 0x84]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x84]
cmp cl, 0xff
jne 0x50154e
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0xa]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x501564
inc esi
jmp 0x501703
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x501603
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x5015fb
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x85], cl
mov cl, byte [ebp - 0x85]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x85]
cmp cl, 0xff
jne 0x5015d2
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x86], cl
mov cl, byte [ebp - 0x86]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x86]
cmp cl, 0xff
jne 0x5015fb
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x501597
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x50169d
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x87], cl
mov cl, byte [ebp - 0x87]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x87]
cmp cl, 0xff
jne 0x501674
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x88], cl
mov cl, byte [ebp - 0x88]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x88]
cmp cl, 0xff
jne 0x50169d
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x501701
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x89], cl
mov cl, byte [ebp - 0x89]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x89]
cmp cl, 0xff
jne 0x5016d8
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x8a], cl
mov cl, byte [ebp - 0x8a]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x8a]
cmp cl, 0xff
jne 0x501701
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x18]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x501717
inc esi
jmp 0x5018b6
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x5017b6
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x5017ae
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x8b], cl
mov cl, byte [ebp - 0x8b]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x8b]
cmp cl, 0xff
jne 0x501785
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x8c], cl
mov cl, byte [ebp - 0x8c]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x8c]
cmp cl, 0xff
jne 0x5017ae
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x50174a
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x501850
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x8d], cl
mov cl, byte [ebp - 0x8d]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x8d]
cmp cl, 0xff
jne 0x501827
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x8e], cl
mov cl, byte [ebp - 0x8e]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x8e]
cmp cl, 0xff
jne 0x501850
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x5018b4
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x8f], cl
mov cl, byte [ebp - 0x8f]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x8f]
cmp cl, 0xff
jne 0x50188b
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x90], cl
mov cl, byte [ebp - 0x90]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x90]
cmp cl, 0xff
jne 0x5018b4
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x26]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x5018ca
inc esi
jmp 0x501a69
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x501969
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x501961
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x91], cl
mov cl, byte [ebp - 0x91]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x91]
cmp cl, 0xff
jne 0x501938
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x92], cl
mov cl, byte [ebp - 0x92]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x92]
cmp cl, 0xff
jne 0x501961
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x5018fd
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x501a03
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x93], cl
mov cl, byte [ebp - 0x93]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x93]
cmp cl, 0xff
jne 0x5019da
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x94], cl
mov cl, byte [ebp - 0x94]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x94]
cmp cl, 0xff
jne 0x501a03
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x501a67
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x95], cl
mov cl, byte [ebp - 0x95]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x95]
cmp cl, 0xff
jne 0x501a3e
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x96], cl
mov cl, byte [ebp - 0x96]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x96]
cmp cl, 0xff
jne 0x501a67
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x34]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x501a7d
inc esi
jmp 0x501c1c
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x501b1c
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x501b14
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x97], cl
mov cl, byte [ebp - 0x97]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x97]
cmp cl, 0xff
jne 0x501aeb
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x98], cl
mov cl, byte [ebp - 0x98]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x98]
cmp cl, 0xff
jne 0x501b14
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x501ab0
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x501bb6
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x99], cl
mov cl, byte [ebp - 0x99]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x99]
cmp cl, 0xff
jne 0x501b8d
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x9a], cl
mov cl, byte [ebp - 0x9a]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x9a]
cmp cl, 0xff
jne 0x501bb6
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x501c1a
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x9b], cl
mov cl, byte [ebp - 0x9b]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x9b]
cmp cl, 0xff
jne 0x501bf1
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x9c], cl
mov cl, byte [ebp - 0x9c]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x9c]
cmp cl, 0xff
jne 0x501c1a
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x42]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x501c30
inc esi
jmp 0x501dcf
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x501ccf
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x501cc7
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x9d], cl
mov cl, byte [ebp - 0x9d]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x9d]
cmp cl, 0xff
jne 0x501c9e
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0x9e], cl
mov cl, byte [ebp - 0x9e]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x9e]
cmp cl, 0xff
jne 0x501cc7
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x501c63
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x501d69
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0x9f], cl
mov cl, byte [ebp - 0x9f]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0x9f]
cmp cl, 0xff
jne 0x501d40
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xa0], cl
mov cl, byte [ebp - 0xa0]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xa0]
cmp cl, 0xff
jne 0x501d69
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x501dcd
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xa1], cl
mov cl, byte [ebp - 0xa1]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xa1]
cmp cl, 0xff
jne 0x501da4
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xa2], cl
mov cl, byte [ebp - 0xa2]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xa2]
cmp cl, 0xff
jne 0x501dcd
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x50]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x501de3
inc esi
jmp 0x501f82
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x501e82
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x501e7a
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xa3], cl
mov cl, byte [ebp - 0xa3]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xa3]
cmp cl, 0xff
jne 0x501e51
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xa4], cl
mov cl, byte [ebp - 0xa4]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xa4]
cmp cl, 0xff
jne 0x501e7a
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x501e16
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x501f1c
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xa5], cl
mov cl, byte [ebp - 0xa5]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xa5]
cmp cl, 0xff
jne 0x501ef3
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xa6], cl
mov cl, byte [ebp - 0xa6]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xa6]
cmp cl, 0xff
jne 0x501f1c
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x501f80
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xa7], cl
mov cl, byte [ebp - 0xa7]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xa7]
cmp cl, 0xff
jne 0x501f57
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xa8], cl
mov cl, byte [ebp - 0xa8]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xa8]
cmp cl, 0xff
jne 0x501f80
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x60]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x501f96
inc esi
jmp 0x502135
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x502035
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x50202d
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xa9], cl
mov cl, byte [ebp - 0xa9]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xa9]
cmp cl, 0xff
jne 0x502004
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xaa], cl
mov cl, byte [ebp - 0xaa]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xaa]
cmp cl, 0xff
jne 0x50202d
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x501fc9
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x5020cf
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xab], cl
mov cl, byte [ebp - 0xab]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xab]
cmp cl, 0xff
jne 0x5020a6
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xac], cl
mov cl, byte [ebp - 0xac]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xac]
cmp cl, 0xff
jne 0x5020cf
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x502133
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xad], cl
mov cl, byte [ebp - 0xad]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xad]
cmp cl, 0xff
jne 0x50210a
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xae], cl
mov cl, byte [ebp - 0xae]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xae]
cmp cl, 0xff
jne 0x502133
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x52]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x502149
inc esi
jmp 0x5022e8
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x5021e8
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x5021e0
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xaf], cl
mov cl, byte [ebp - 0xaf]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xaf]
cmp cl, 0xff
jne 0x5021b7
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xb0], cl
mov cl, byte [ebp - 0xb0]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xb0]
cmp cl, 0xff
jne 0x5021e0
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x50217c
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x502282
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xb1], cl
mov cl, byte [ebp - 0xb1]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xb1]
cmp cl, 0xff
jne 0x502259
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xb2], cl
mov cl, byte [ebp - 0xb2]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xb2]
cmp cl, 0xff
jne 0x502282
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x5022e6
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xb3], cl
mov cl, byte [ebp - 0xb3]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xb3]
cmp cl, 0xff
jne 0x5022bd
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xb4], cl
mov cl, byte [ebp - 0xb4]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xb4]
cmp cl, 0xff
jne 0x5022e6
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x44]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x5022fc
inc esi
jmp 0x50249b
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x50239b
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x502393
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xb5], cl
mov cl, byte [ebp - 0xb5]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xb5]
cmp cl, 0xff
jne 0x50236a
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xb6], cl
mov cl, byte [ebp - 0xb6]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xb6]
cmp cl, 0xff
jne 0x502393
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x50232f
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x502435
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xb7], cl
mov cl, byte [ebp - 0xb7]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xb7]
cmp cl, 0xff
jne 0x50240c
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xb8], cl
mov cl, byte [ebp - 0xb8]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xb8]
cmp cl, 0xff
jne 0x502435
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x502499
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xb9], cl
mov cl, byte [ebp - 0xb9]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xb9]
cmp cl, 0xff
jne 0x502470
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xba], cl
mov cl, byte [ebp - 0xba]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xba]
cmp cl, 0xff
jne 0x502499
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x36]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x5024af
inc esi
jmp 0x50264e
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x50254e
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x502546
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xbb], cl
mov cl, byte [ebp - 0xbb]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xbb]
cmp cl, 0xff
jne 0x50251d
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xbc], cl
mov cl, byte [ebp - 0xbc]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xbc]
cmp cl, 0xff
jne 0x502546
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x5024e2
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x5025e8
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xbd], cl
mov cl, byte [ebp - 0xbd]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xbd]
cmp cl, 0xff
jne 0x5025bf
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xbe], cl
mov cl, byte [ebp - 0xbe]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xbe]
cmp cl, 0xff
jne 0x5025e8
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x50264c
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xbf], cl
mov cl, byte [ebp - 0xbf]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xbf]
cmp cl, 0xff
jne 0x502623
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xc0], cl
mov cl, byte [ebp - 0xc0]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xc0]
cmp cl, 0xff
jne 0x50264c
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x28]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x502662
inc esi
jmp 0x502801
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x502701
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x5026f9
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xc1], cl
mov cl, byte [ebp - 0xc1]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xc1]
cmp cl, 0xff
jne 0x5026d0
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xc2], cl
mov cl, byte [ebp - 0xc2]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xc2]
cmp cl, 0xff
jne 0x5026f9
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x502695
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x50279b
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xc3], cl
mov cl, byte [ebp - 0xc3]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xc3]
cmp cl, 0xff
jne 0x502772
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xc4], cl
mov cl, byte [ebp - 0xc4]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xc4]
cmp cl, 0xff
jne 0x50279b
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x5027ff
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xc5], cl
mov cl, byte [ebp - 0xc5]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xc5]
cmp cl, 0xff
jne 0x5027d6
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xc6], cl
mov cl, byte [ebp - 0xc6]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xc6]
cmp cl, 0xff
jne 0x5027ff
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x1a]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x502815
inc esi
jmp 0x5029b4
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x5028b4
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x5028ac
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xc7], cl
mov cl, byte [ebp - 0xc7]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xc7]
cmp cl, 0xff
jne 0x502883
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xc8], cl
mov cl, byte [ebp - 0xc8]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xc8]
cmp cl, 0xff
jne 0x5028ac
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x502848
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x50294e
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xc9], cl
mov cl, byte [ebp - 0xc9]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xc9]
cmp cl, 0xff
jne 0x502925
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xca], cl
mov cl, byte [ebp - 0xca]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xca]
cmp cl, 0xff
jne 0x50294e
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x5029b2
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xcb], cl
mov cl, byte [ebp - 0xcb]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xcb]
cmp cl, 0xff
jne 0x502989
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xcc], cl
mov cl, byte [ebp - 0xcc]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xcc]
cmp cl, 0xff
jne 0x5029b2
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0xc]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x5029c8
inc esi
jmp 0x502b67
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x502a67
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x502a5f
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xcd], cl
mov cl, byte [ebp - 0xcd]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xcd]
cmp cl, 0xff
jne 0x502a36
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xce], cl
mov cl, byte [ebp - 0xce]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xce]
cmp cl, 0xff
jne 0x502a5f
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x5029fb
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x502b01
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xcf], cl
mov cl, byte [ebp - 0xcf]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xcf]
cmp cl, 0xff
jne 0x502ad8
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xd0], cl
mov cl, byte [ebp - 0xd0]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xd0]
cmp cl, 0xff
jne 0x502b01
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x502b65
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xd1], cl
mov cl, byte [ebp - 0xd1]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xd1]
cmp cl, 0xff
jne 0x502b3c
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xd2], cl
mov cl, byte [ebp - 0xd2]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xd2]
cmp cl, 0xff
jne 0x502b65
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0xe]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x502b7b
inc esi
jmp 0x502d1a
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x502c1a
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x502c12
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xd3], cl
mov cl, byte [ebp - 0xd3]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xd3]
cmp cl, 0xff
jne 0x502be9
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xd4], cl
mov cl, byte [ebp - 0xd4]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xd4]
cmp cl, 0xff
jne 0x502c12
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x502bae
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x502cb4
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xd5], cl
mov cl, byte [ebp - 0xd5]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xd5]
cmp cl, 0xff
jne 0x502c8b
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xd6], cl
mov cl, byte [ebp - 0xd6]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xd6]
cmp cl, 0xff
jne 0x502cb4
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x502d18
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xd7], cl
mov cl, byte [ebp - 0xd7]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xd7]
cmp cl, 0xff
jne 0x502cef
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xd8], cl
mov cl, byte [ebp - 0xd8]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xd8]
cmp cl, 0xff
jne 0x502d18
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x1c]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x502d2e
inc esi
jmp 0x502ecd
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x502dcd
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x502dc5
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xd9], cl
mov cl, byte [ebp - 0xd9]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xd9]
cmp cl, 0xff
jne 0x502d9c
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xda], cl
mov cl, byte [ebp - 0xda]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xda]
cmp cl, 0xff
jne 0x502dc5
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x502d61
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x502e67
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xdb], cl
mov cl, byte [ebp - 0xdb]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xdb]
cmp cl, 0xff
jne 0x502e3e
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xdc], cl
mov cl, byte [ebp - 0xdc]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xdc]
cmp cl, 0xff
jne 0x502e67
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x502ecb
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xdd], cl
mov cl, byte [ebp - 0xdd]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xdd]
cmp cl, 0xff
jne 0x502ea2
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xde], cl
mov cl, byte [ebp - 0xde]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xde]
cmp cl, 0xff
jne 0x502ecb
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x2a]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x502ee1
inc esi
jmp 0x503080
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x502f80
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x502f78
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xdf], cl
mov cl, byte [ebp - 0xdf]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xdf]
cmp cl, 0xff
jne 0x502f4f
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xe0], cl
mov cl, byte [ebp - 0xe0]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xe0]
cmp cl, 0xff
jne 0x502f78
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x502f14
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x50301a
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xe1], cl
mov cl, byte [ebp - 0xe1]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xe1]
cmp cl, 0xff
jne 0x502ff1
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xe2], cl
mov cl, byte [ebp - 0xe2]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xe2]
cmp cl, 0xff
jne 0x50301a
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x50307e
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xe3], cl
mov cl, byte [ebp - 0xe3]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xe3]
cmp cl, 0xff
jne 0x503055
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xe4], cl
mov cl, byte [ebp - 0xe4]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xe4]
cmp cl, 0xff
jne 0x50307e
mov byte [ebx], 0
inc ebx
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x38]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x503094
inc esi
jmp 0x503233
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x503133
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
shl edx, cl
mov ecx, dword [ebp - 0x1c]
or edx, ecx
cmp eax, 0xf
jle 0x50312b
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xe5], cl
mov cl, byte [ebp - 0xe5]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xe5]
cmp cl, 0xff
jne 0x503102
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov edi, edx
shr edi, cl
mov ecx, edi
mov byte [ebp - 0xe6], cl
mov cl, byte [ebp - 0xe6]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xe6]
cmp cl, 0xff
jne 0x50312b
mov byte [ebx], 0
inc ebx
sub esi, 0x10
cmp esi, 0xf
jg 0x5030c7
shl esi, 4
mov ecx, dword [ebp - 0x10]
add esi, ecx
mov dword [ebp - 0xc], esi
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
mov ecx, dword [ecx + esi*4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov esi, dword [ebp - 0xc]
movsx ecx, byte [ecx + esi + 0x400]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x10]
mov esi, 1
shl esi, cl
dec esi
and dword [ebp - 8], esi
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov ecx, dword [ebp - 0x14]
or edx, ecx
cmp eax, 0xf
jle 0x5031cd
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xe7], cl
mov cl, byte [ebp - 0xe7]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xe7]
cmp cl, 0xff
jne 0x5031a4
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xe8], cl
mov cl, byte [ebp - 0xe8]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xe8]
cmp cl, 0xff
jne 0x5031cd
mov byte [ebx], 0
inc ebx
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov ecx, dword [ebp - 8]
or edx, ecx
cmp eax, 0xf
jle 0x503231
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xe9], cl
mov cl, byte [ebp - 0xe9]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xe9]
cmp cl, 0xff
jne 0x503208
mov byte [ebx], 0
inc ebx
sub eax, 8
mov ecx, eax
mov esi, edx
shr esi, cl
mov ecx, esi
mov byte [ebp - 0xea], cl
mov cl, byte [ebp - 0xea]
mov byte [ebx], cl
inc ebx
mov cl, byte [ebp - 0xea]
cmp cl, 0xff
jne 0x503231
xor esi, esi
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx + 0x46]
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x503247
inc esi
jmp 0x5033e6
mov ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
sar ecx, 0x1f
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
sub dword [ebp - 4], ecx
mov ecx, dword [ebp - 0xc]
add dword [ebp - 8], ecx
cmp esi, 0xf
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x521c10]
mov dword [ebp - 0x10], ecx
jle 0x5032e6