407f5c:	33 d2                	xor    %edx,%edx
407f5e:	8a d1                	mov    %cl,%dl
407f60:	c1 e2 10             	shl    $0x10,%edx
407f63:	0b c2                	or     %edx,%eax
407f65:	c3                   	ret
407f66:	8b c0                	mov    %eax,%eax
407f68:	c3                   	ret
407f69:	8d 40 00             	lea    0x0(%eax),%eax
407f6c:	c1 e8 08             	shr    $0x8,%eax
407f6f:	c3                   	ret
407f70:	c1 e8 10             	shr    $0x10,%eax
407f73:	c3                   	ret
407f74:	51                   	push   %ecx
407f75:	89 04 24             	mov    %eax,(%esp)
407f78:	0f bf 04 24          	movswl (%esp),%eax
407f7c:	89 02                	mov    %eax,(%edx)
407f7e:	0f bf 44 24 02       	movswl 0x2(%esp),%eax
407f83:	89 42 04             	mov    %eax,0x4(%edx)
407f86:	5a                   	pop    %edx
407f87:	c3                   	ret
407f88:	51                   	push   %ecx
407f89:	66 8b 10             	mov    (%eax),%dx
407f8c:	66 89 14 24          	mov    %dx,(%esp)
407f90:	66 8b 40 04          	mov    0x4(%eax),%ax
407f94:	66 89 44 24 02       	mov    %ax,0x2(%esp)
407f99:	8b 04 24             	mov    (%esp),%eax
407f9c:	5a                   	pop    %edx
407f9d:	c3                   	ret
407f9e:	8b c0                	mov    %eax,%eax
407fa0:	e8 fb fe ff ff       	call   0x407ea0
407fa5:	c3                   	ret
407fa6:	8b c0                	mov    %eax,%eax
407fa8:	e8 f3 fe ff ff       	call   0x407ea0
407fad:	c3                   	ret
407fae:	8b c0                	mov    %eax,%eax
407fb0:	e8 eb fe ff ff       	call   0x407ea0
407fb5:	c3                   	ret
407fb6:	8b c0                	mov    %eax,%eax
407fb8:	55                   	push   %ebp
407fb9:	8b ec                	mov    %esp,%ebp
407fbb:	53                   	push   %ebx
407fbc:	8b 5d 08             	mov    0x8(%ebp),%ebx
407fbf:	53                   	push   %ebx
407fc0:	8b 5d 0c             	mov    0xc(%ebp),%ebx
407fc3:	53                   	push   %ebx
407fc4:	8b 5d 10             	mov    0x10(%ebp),%ebx
407fc7:	53                   	push   %ebx
407fc8:	8b 5d 14             	mov    0x14(%ebp),%ebx
407fcb:	53                   	push   %ebx
407fcc:	8b 5d 18             	mov    0x18(%ebp),%ebx
407fcf:	53                   	push   %ebx
407fd0:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
407fd3:	53                   	push   %ebx
407fd4:	8b 5d 20             	mov    0x20(%ebp),%ebx
407fd7:	53                   	push   %ebx
407fd8:	8b 5d 24             	mov    0x24(%ebp),%ebx
407fdb:	53                   	push   %ebx
407fdc:	51                   	push   %ecx
407fdd:	52                   	push   %edx
407fde:	50                   	push   %eax
407fdf:	6a 00                	push   $0x0
407fe1:	e8 ba f8 ff ff       	call   0x4078a0
407fe6:	5b                   	pop    %ebx
407fe7:	5d                   	pop    %ebp
407fe8:	c2 20 00             	ret    $0x20
407feb:	90                   	nop
407fec:	55                   	push   %ebp
407fed:	8b ec                	mov    %esp,%ebp
407fef:	51                   	push   %ecx
407ff0:	53                   	push   %ebx
407ff1:	56                   	push   %esi
407ff2:	57                   	push   %edi
407ff3:	8b f9                	mov    %ecx,%edi
407ff5:	8b f2                	mov    %edx,%esi
407ff7:	89 45 fc             	mov    %eax,-0x4(%ebp)
407ffa:	68 88 80 40 00       	push   $0x408088
407fff:	68 9c 80 40 00       	push   $0x40809c
408004:	e8 97 f9 ff ff       	call   0x4079a0
408009:	8b d8                	mov    %eax,%ebx
40800b:	68 a4 80 40 00       	push   $0x4080a4
408010:	e8 b3 fc ff ff       	call   0x407cc8
408015:	8b 55 fc             	mov    -0x4(%ebp),%edx
408018:	89 02                	mov    %eax,(%edx)
40801a:	68 b4 80 40 00       	push   $0x4080b4
40801f:	e8 a4 fc ff ff       	call   0x407cc8
408024:	89 06                	mov    %eax,(%esi)
408026:	68 cc 80 40 00       	push   $0x4080cc
40802b:	e8 98 fc ff ff       	call   0x407cc8
408030:	89 07                	mov    %eax,(%edi)
408032:	83 3e 00             	cmpl   $0x0,(%esi)
408035:	74 18                	je     0x40804f
408037:	85 db                	test   %ebx,%ebx
408039:	74 14                	je     0x40804f
40803b:	6a 00                	push   $0x0
40803d:	6a 00                	push   $0x0
40803f:	8b 06                	mov    (%esi),%eax
408041:	50                   	push   %eax
408042:	53                   	push   %ebx
408043:	e8 c8 fc ff ff       	call   0x407d10
408048:	8b 55 0c             	mov    0xc(%ebp),%edx
40804b:	89 02                	mov    %eax,(%edx)
40804d:	eb 07                	jmp    0x408056
40804f:	8b 45 0c             	mov    0xc(%ebp),%eax
408052:	33 d2                	xor    %edx,%edx
408054:	89 10                	mov    %edx,(%eax)
408056:	83 3f 00             	cmpl   $0x0,(%edi)
408059:	74 18                	je     0x408073
40805b:	85 db                	test   %ebx,%ebx
40805d:	74 14                	je     0x408073
40805f:	6a 00                	push   $0x0
408061:	6a 00                	push   $0x0
408063:	8b 07                	mov    (%edi),%eax
408065:	50                   	push   %eax
408066:	53                   	push   %ebx
408067:	e8 a4 fc ff ff       	call   0x407d10
40806c:	8b 55 08             	mov    0x8(%ebp),%edx
40806f:	89 02                	mov    %eax,(%edx)
408071:	eb 09                	jmp    0x40807c
408073:	8b 45 08             	mov    0x8(%ebp),%eax
408076:	c7 00 03 00 00 00    	movl   $0x3,(%eax)
40807c:	8b c3                	mov    %ebx,%eax
40807e:	5f                   	pop    %edi
40807f:	5e                   	pop    %esi
408080:	5b                   	pop    %ebx
408081:	59                   	pop    %ecx
408082:	5d                   	pop    %ebp
408083:	c2 08 00             	ret    $0x8
408086:	00 00                	add    %al,(%eax)
408088:	4d                   	dec    %ebp
408089:	61                   	popa
40808a:	67 65 6c             	gs insb (%dx),%es:(%di)
40808d:	6c                   	insb   (%dx),%es:(%edi)
40808e:	61                   	popa
40808f:	6e                   	outsb  %ds:(%esi),(%dx)
408090:	20 4d 53             	and    %cl,0x53(%ebp)
408093:	57                   	push   %edi
408094:	48                   	dec    %eax
408095:	45                   	inc    %ebp
408096:	45                   	inc    %ebp
408097:	4c                   	dec    %esp
408098:	00 00                	add    %al,(%eax)
40809a:	00 00                	add    %al,(%eax)
40809c:	4d                   	dec    %ebp
40809d:	6f                   	outsl  %ds:(%esi),(%dx)
40809e:	75 73                	jne    0x408113
4080a0:	65 5a                	gs pop %edx
4080a2:	00 00                	add    %al,(%eax)
4080a4:	4d                   	dec    %ebp
4080a5:	53                   	push   %ebx
4080a6:	57                   	push   %edi
4080a7:	48                   	dec    %eax
4080a8:	45                   	inc    %ebp
4080a9:	45                   	inc    %ebp
4080aa:	4c                   	dec    %esp
4080ab:	5f                   	pop    %edi
4080ac:	52                   	push   %edx
4080ad:	4f                   	dec    %edi
4080ae:	4c                   	dec    %esp
4080af:	4c                   	dec    %esp
4080b0:	4d                   	dec    %ebp
4080b1:	53                   	push   %ebx
4080b2:	47                   	inc    %edi
4080b3:	00 4d 53             	add    %cl,0x53(%ebp)
4080b6:	48                   	dec    %eax
4080b7:	5f                   	pop    %edi
4080b8:	57                   	push   %edi
4080b9:	48                   	dec    %eax
4080ba:	45                   	inc    %ebp
4080bb:	45                   	inc    %ebp
4080bc:	4c                   	dec    %esp
4080bd:	53                   	push   %ebx
4080be:	55                   	push   %ebp
4080bf:	50                   	push   %eax
4080c0:	50                   	push   %eax
4080c1:	4f                   	dec    %edi
4080c2:	52                   	push   %edx
4080c3:	54                   	push   %esp
4080c4:	5f                   	pop    %edi
4080c5:	4d                   	dec    %ebp
4080c6:	53                   	push   %ebx
4080c7:	47                   	inc    %edi
4080c8:	00 00                	add    %al,(%eax)
4080ca:	00 00                	add    %al,(%eax)
4080cc:	4d                   	dec    %ebp
4080cd:	53                   	push   %ebx
4080ce:	48                   	dec    %eax
4080cf:	5f                   	pop    %edi
4080d0:	53                   	push   %ebx
4080d1:	43                   	inc    %ebx
4080d2:	52                   	push   %edx
4080d3:	4f                   	dec    %edi
4080d4:	4c                   	dec    %esp
4080d5:	4c                   	dec    %esp
4080d6:	5f                   	pop    %edi
4080d7:	4c                   	dec    %esp
4080d8:	49                   	dec    %ecx
4080d9:	4e                   	dec    %esi
4080da:	45                   	inc    %ebp
4080db:	53                   	push   %ebx
4080dc:	5f                   	pop    %edi
4080dd:	4d                   	dec    %ebp
4080de:	53                   	push   %ebx
4080df:	47                   	inc    %edi
4080e0:	00 00                	add    %al,(%eax)
4080e2:	00 00                	add    %al,(%eax)
4080e4:	55                   	push   %ebp
4080e5:	8b ec                	mov    %esp,%ebp
4080e7:	33 c0                	xor    %eax,%eax
4080e9:	55                   	push   %ebp
4080ea:	68 09 81 40 00       	push   $0x408109
4080ef:	64 ff 30             	push   %fs:(%eax)
4080f2:	64 89 20             	mov    %esp,%fs:(%eax)
4080f5:	ff 05 28 87 6a 00    	incl   0x6a8728
4080fb:	33 c0                	xor    %eax,%eax
4080fd:	5a                   	pop    %edx
4080fe:	59                   	pop    %ecx
4080ff:	59                   	pop    %ecx
408100:	64 89 10             	mov    %edx,%fs:(%eax)
408103:	68 10 81 40 00       	push   $0x408110
408108:	c3                   	ret
408109:	e9 fe c0 ff ff       	jmp    0x40420c
40810e:	eb f8                	jmp    0x408108
408110:	5d                   	pop    %ebp
408111:	c3                   	ret
408112:	8b c0                	mov    %eax,%eax
408114:	83 2d 28 87 6a 00 01 	subl   $0x1,0x6a8728
40811b:	c3                   	ret
40811c:	55                   	push   %ebp
40811d:	8b ec                	mov    %esp,%ebp
40811f:	33 c0                	xor    %eax,%eax
408121:	55                   	push   %ebp
408122:	68 41 81 40 00       	push   $0x408141
408127:	64 ff 30             	push   %fs:(%eax)
40812a:	64 89 20             	mov    %esp,%fs:(%eax)
40812d:	ff 05 2c 87 6a 00    	incl   0x6a872c
408133:	33 c0                	xor    %eax,%eax
408135:	5a                   	pop    %edx
408136:	59                   	pop    %ecx
408137:	59                   	pop    %ecx
408138:	64 89 10             	mov    %edx,%fs:(%eax)
40813b:	68 48 81 40 00       	push   $0x408148
408140:	c3                   	ret
408141:	e9 c6 c0 ff ff       	jmp    0x40420c
408146:	eb f8                	jmp    0x408140
408148:	5d                   	pop    %ebp
408149:	c3                   	ret
40814a:	8b c0                	mov    %eax,%eax
40814c:	83 2d 2c 87 6a 00 01 	subl   $0x1,0x6a872c
408153:	c3                   	ret
408154:	18 87 6a 00 f0 ff    	sbb    %al,-0xfff96(%edi)
40815a:	00 00                	add    %al,(%eax)
40815c:	18 87 6a 00 f1 ff    	sbb    %al,-0xeff96(%edi)
408162:	00 00                	add    %al,(%eax)
408164:	18 87 6a 00 f2 ff    	sbb    %al,-0xdff96(%edi)
40816a:	00 00                	add    %al,(%eax)
40816c:	18 87 6a 00 f3 ff    	sbb    %al,-0xcff96(%edi)
408172:	00 00                	add    %al,(%eax)
408174:	18 87 6a 00 f4 ff    	sbb    %al,-0xbff96(%edi)
40817a:	00 00                	add    %al,(%eax)
40817c:	18 87 6a 00 f5 ff    	sbb    %al,-0xaff96(%edi)
408182:	00 00                	add    %al,(%eax)
408184:	18 87 6a 00 f6 ff    	sbb    %al,-0x9ff96(%edi)
40818a:	00 00                	add    %al,(%eax)
40818c:	18 87 6a 00 f7 ff    	sbb    %al,-0x8ff96(%edi)
408192:	00 00                	add    %al,(%eax)
408194:	18 87 6a 00 f8 ff    	sbb    %al,-0x7ff96(%edi)
40819a:	00 00                	add    %al,(%eax)
40819c:	18 87 6a 00 f9 ff    	sbb    %al,-0x6ff96(%edi)
4081a2:	00 00                	add    %al,(%eax)
4081a4:	18 87 6a 00 fa ff    	sbb    %al,-0x5ff96(%edi)
4081aa:	00 00                	add    %al,(%eax)
4081ac:	18 87 6a 00 fb ff    	sbb    %al,-0x4ff96(%edi)
4081b2:	00 00                	add    %al,(%eax)
4081b4:	18 87 6a 00 fc ff    	sbb    %al,-0x3ff96(%edi)
4081ba:	00 00                	add    %al,(%eax)
4081bc:	18 87 6a 00 fd ff    	sbb    %al,-0x2ff96(%edi)
4081c2:	00 00                	add    %al,(%eax)
4081c4:	18 87 6a 00 fe ff    	sbb    %al,-0x1ff96(%edi)
4081ca:	00 00                	add    %al,(%eax)
4081cc:	18 87 6a 00 ff ff    	sbb    %al,-0xff96(%edi)
4081d2:	00 00                	add    %al,(%eax)
4081d4:	18 87 6a 00 e0 ff    	sbb    %al,-0x1fff96(%edi)
4081da:	00 00                	add    %al,(%eax)
4081dc:	18 87 6a 00 e1 ff    	sbb    %al,-0x1eff96(%edi)
4081e2:	00 00                	add    %al,(%eax)
4081e4:	18 87 6a 00 e2 ff    	sbb    %al,-0x1dff96(%edi)
4081ea:	00 00                	add    %al,(%eax)
4081ec:	18 87 6a 00 e3 ff    	sbb    %al,-0x1cff96(%edi)
4081f2:	00 00                	add    %al,(%eax)
4081f4:	18 87 6a 00 e4 ff    	sbb    %al,-0x1bff96(%edi)
4081fa:	00 00                	add    %al,(%eax)
4081fc:	18 87 6a 00 e5 ff    	sbb    %al,-0x1aff96(%edi)
408202:	00 00                	add    %al,(%eax)
408204:	18 87 6a 00 e6 ff    	sbb    %al,-0x19ff96(%edi)
40820a:	00 00                	add    %al,(%eax)
40820c:	18 87 6a 00 e7 ff    	sbb    %al,-0x18ff96(%edi)
408212:	00 00                	add    %al,(%eax)
408214:	18 87 6a 00 e8 ff    	sbb    %al,-0x17ff96(%edi)
40821a:	00 00                	add    %al,(%eax)
40821c:	18 87 6a 00 e9 ff    	sbb    %al,-0x16ff96(%edi)
408222:	00 00                	add    %al,(%eax)
408224:	18 87 6a 00 ea ff    	sbb    %al,-0x15ff96(%edi)
40822a:	00 00                	add    %al,(%eax)
40822c:	18 87 6a 00 eb ff    	sbb    %al,-0x14ff96(%edi)
408232:	00 00                	add    %al,(%eax)
408234:	18 87 6a 00 ec ff    	sbb    %al,-0x13ff96(%edi)
40823a:	00 00                	add    %al,(%eax)
40823c:	18 87 6a 00 ed ff    	sbb    %al,-0x12ff96(%edi)
408242:	00 00                	add    %al,(%eax)
408244:	18 87 6a 00 ee ff    	sbb    %al,-0x11ff96(%edi)
40824a:	00 00                	add    %al,(%eax)
40824c:	18 87 6a 00 ef ff    	sbb    %al,-0x10ff96(%edi)
408252:	00 00                	add    %al,(%eax)
408254:	18 87 6a 00 d0 ff    	sbb    %al,-0x2fff96(%edi)
40825a:	00 00                	add    %al,(%eax)
40825c:	18 87 6a 00 d1 ff    	sbb    %al,-0x2eff96(%edi)
408262:	00 00                	add    %al,(%eax)
408264:	18 87 6a 00 d2 ff    	sbb    %al,-0x2dff96(%edi)
40826a:	00 00                	add    %al,(%eax)
40826c:	18 87 6a 00 d3 ff    	sbb    %al,-0x2cff96(%edi)
408272:	00 00                	add    %al,(%eax)
408274:	18 87 6a 00 d4 ff    	sbb    %al,-0x2bff96(%edi)
40827a:	00 00                	add    %al,(%eax)
40827c:	18 87 6a 00 d5 ff    	sbb    %al,-0x2aff96(%edi)
408282:	00 00                	add    %al,(%eax)
408284:	18 87 6a 00 d6 ff    	sbb    %al,-0x29ff96(%edi)
40828a:	00 00                	add    %al,(%eax)
40828c:	18 87 6a 00 d7 ff    	sbb    %al,-0x28ff96(%edi)
408292:	00 00                	add    %al,(%eax)
408294:	18 87 6a 00 d8 ff    	sbb    %al,-0x27ff96(%edi)
40829a:	00 00                	add    %al,(%eax)
40829c:	18 87 6a 00 d9 ff    	sbb    %al,-0x26ff96(%edi)
4082a2:	00 00                	add    %al,(%eax)
4082a4:	18 87 6a 00 da ff    	sbb    %al,-0x25ff96(%edi)
4082aa:	00 00                	add    %al,(%eax)
4082ac:	18 87 6a 00 db ff    	sbb    %al,-0x24ff96(%edi)
4082b2:	00 00                	add    %al,(%eax)
4082b4:	18 87 6a 00 dc ff    	sbb    %al,-0x23ff96(%edi)
4082ba:	00 00                	add    %al,(%eax)
4082bc:	18 87 6a 00 dd ff    	sbb    %al,-0x22ff96(%edi)
4082c2:	00 00                	add    %al,(%eax)
4082c4:	18 87 6a 00 de ff    	sbb    %al,-0x21ff96(%edi)
4082ca:	00 00                	add    %al,(%eax)
4082cc:	18 87 6a 00 df ff    	sbb    %al,-0x20ff96(%edi)
4082d2:	00 00                	add    %al,(%eax)
4082d4:	18 87 6a 00 c0 ff    	sbb    %al,-0x3fff96(%edi)
4082da:	00 00                	add    %al,(%eax)
4082dc:	18 87 6a 00 c1 ff    	sbb    %al,-0x3eff96(%edi)
4082e2:	00 00                	add    %al,(%eax)
4082e4:	18 87 6a 00 c2 ff    	sbb    %al,-0x3dff96(%edi)