407fb4:	54                   	push   %esp
407fb5:	3a 40 00             	cmp    0x0(%eax),%al
407fb8:	48                   	dec    %eax
407fb9:	3a 40 00             	cmp    0x0(%eax),%al
407fbc:	94                   	xchg   %eax,%esp
407fbd:	37                   	aaa
407fbe:	40                   	inc    %eax
407fbf:	00 b0 37 40 00 88    	add    %dh,-0x77ffbfc9(%eax)
407fc5:	cf                   	iret
407fc6:	40                   	inc    %eax
407fc7:	00 13                	add    %dl,(%ebx)
407fc9:	54                   	push   %esp
407fca:	54                   	push   %esp
407fcb:	68 72 65 61 64       	push   $0x64616572
407fd0:	4c                   	dec    %esp
407fd1:	6f                   	outsl  %ds:(%esi),(%dx)
407fd2:	63 61 6c             	arpl   %esp,0x6c(%ecx)
407fd5:	43                   	inc    %ebx
407fd6:	6f                   	outsl  %ds:(%esi),(%dx)
407fd7:	75 6e                	jne    0x408047
407fd9:	74 65                	je     0x408040
407fdb:	72 cc                	jb     0x407fa9
407fdd:	83 c0 d4             	add    $0xffffffd4,%eax
407fe0:	e9 1b 53 00 00       	jmp    0x40d300
407fe5:	83 c0 d4             	add    $0xffffffd4,%eax
407fe8:	e9 83 53 00 00       	jmp    0x40d370
407fed:	83 c0 d4             	add    $0xffffffd4,%eax
407ff0:	e9 0f 52 00 00       	jmp    0x40d204
407ff5:	83 c0 d4             	add    $0xffffffd4,%eax
407ff8:	e9 b3 52 00 00       	jmp    0x40d2b0
407ffd:	83 44 24 04 d4       	addl   $0xffffffd4,0x4(%esp)
408002:	e9 1d dd ff ff       	jmp    0x405d24
408007:	83 44 24 04 d4       	addl   $0xffffffd4,0x4(%esp)
40800c:	e9 3b dd ff ff       	jmp    0x405d4c
408011:	83 44 24 04 d4       	addl   $0xffffffd4,0x4(%esp)
408016:	e9 45 dd ff ff       	jmp    0x405d60
40801b:	cc                   	int3
40801c:	fd                   	std
40801d:	7f 40                	jg     0x40805f
40801f:	00 07                	add    %al,(%edi)
408021:	80 40 00 11          	addb   $0x11,0x0(%eax)
408025:	80 40 00 dd          	addb   $0xdd,0x0(%eax)
408029:	7f 40                	jg     0x40806b
40802b:	00 e5                	add    %ah,%ch
40802d:	7f 40                	jg     0x40806f
40802f:	00 ed                	add    %ch,%ch
408031:	7f 40                	jg     0x408073
408033:	00 f5                	add    %dh,%ch
408035:	7f 40                	jg     0x408077
408037:	00 01                	add    %al,(%ecx)
408039:	00 00                	add    %al,(%eax)
40803b:	00 52 8c             	add    %dl,-0x74(%edx)
40803e:	10 7b 8f             	adc    %bh,-0x71(%ebx)
408041:	1d db 4c 9c df       	sbb    $0xdf9c4cdb,%eax
408046:	57                   	push   %edi
408047:	e0 71                	loopne 0x4080ba
408049:	19 3d 3f 1c 80 40    	sbb    %edi,0x40801c3f
40804f:	00 2c 00             	add    %ch,(%eax,%eax,1)
408052:	00 00                	add    %al,(%eax)
408054:	00 00                	add    %al,(%eax)
408056:	00 00                	add    %al,(%eax)
408058:	a4                   	movsb  %ds:(%esi),%es:(%edi)
408059:	80 40 00 38          	addb   $0x38,0x0(%eax)
40805d:	80 40 00 00          	addb   $0x0,0x0(%eax)
408075:	00 00                	add    %al,(%eax)
408077:	00 a4 80 40 00 30 00 	add    %ah,0x300040(%eax,%eax,4)
40807e:	00 00                	add    %al,(%eax)
408080:	94                   	xchg   %eax,%esp
408081:	11 40 00             	adc    %eax,0x0(%eax)
408084:	40                   	inc    %eax
408085:	3a 40 00             	cmp    0x0(%eax),%al
408088:	f8                   	clc
408089:	5c                   	pop    %esp
40808a:	40                   	inc    %eax
40808b:	00 04 5d 40 00 54 3a 	add    %al,0x3a540040(,%ebx,2)
408092:	40                   	inc    %eax
408093:	00 48 3a             	add    %cl,0x3a(%eax)
408096:	40                   	inc    %eax
408097:	00 14 5d 40 00 b0 37 	add    %dl,0x37b00040(,%ebx,2)
40809e:	40                   	inc    %eax
40809f:	00 78 d1             	add    %bh,-0x2f(%eax)
4080a2:	40                   	inc    %eax
4080a3:	00 24 54             	add    %ah,(%esp,%edx,2)
4080a6:	4d                   	dec    %ebp
4080a7:	75 6c                	jne    0x408115
4080a9:	74 69                	je     0x408114
4080ab:	52                   	push   %edx
4080ac:	65 61                	gs popa
4080ae:	64 45                	fs inc %ebp
4080b0:	78 63                	js     0x408115
4080b2:	6c                   	insb   (%dx),%es:(%edi)
4080b3:	75 73                	jne    0x408128
4080b5:	69 76 65 57 72 69 74 	imul   $0x74697257,0x65(%esi),%esi
4080bc:	65 53                	gs push %ebx
4080be:	79 6e                	jns    0x40812e
4080c0:	63 68 72             	arpl   %ebp,0x72(%eax)
4080c3:	6f                   	outsl  %ds:(%esi),(%dx)
4080c4:	6e                   	outsb  %ds:(%esi),(%dx)
4080c5:	69 7a 65 72 8d 40 00 	imul   $0x408d72,0x65(%edx),%edi
4080cc:	55                   	push   %ebp
4080cd:	8b ec                	mov    %esp,%ebp
4080cf:	53                   	push   %ebx
4080d0:	89 d3                	mov    %edx,%ebx
4080d2:	89 c2                	mov    %eax,%edx
4080d4:	c1 ea 10             	shr    $0x10,%edx
4080d7:	66 f7 f3             	div    %bx
4080da:	8b 5d 08             	mov    0x8(%ebp),%ebx
4080dd:	66 89 01             	mov    %ax,(%ecx)
4080e0:	66 89 13             	mov    %dx,(%ebx)
4080e3:	5b                   	pop    %ebx
4080e4:	5d                   	pop    %ebp
4080e5:	c2 04 00             	ret    $0x4
4080e8:	53                   	push   %ebx
4080e9:	56                   	push   %esi
4080ea:	57                   	push   %edi
4080eb:	8b f9                	mov    %ecx,%edi
4080ed:	8b f2                	mov    %edx,%esi
4080ef:	8b d8                	mov    %eax,%ebx
4080f1:	56                   	push   %esi
4080f2:	57                   	push   %edi
4080f3:	8b cb                	mov    %ebx,%ecx
4080f5:	b2 01                	mov    $0x1,%dl
4080f7:	a1 34 7b 40 00       	mov    0x407b34,%eax
4080fc:	e8 0b 3a 00 00       	call   0x40bb0c
408101:	e8 7e be ff ff       	call   0x403f84
408106:	5f                   	pop    %edi
408107:	5e                   	pop    %esi
408108:	5b                   	pop    %ebx
408109:	c3                   	ret
40810a:	8b c0                	mov    %eax,%eax
40810c:	53                   	push   %ebx
40810d:	56                   	push   %esi
40810e:	8b d8                	mov    %eax,%ebx
408110:	8b c3                	mov    %ebx,%eax
408112:	e8 21 a9 ff ff       	call   0x402a38
408117:	8b f0                	mov    %eax,%esi
408119:	8b c6                	mov    %esi,%eax
40811b:	33 c9                	xor    %ecx,%ecx
40811d:	8b d3                	mov    %ebx,%edx
40811f:	e8 f8 ad ff ff       	call   0x402f1c
408124:	8b c6                	mov    %esi,%eax
408126:	5e                   	pop    %esi
408127:	5b                   	pop    %ebx
408128:	c3                   	ret
408129:	8d 40 00             	lea    0x0(%eax),%eax
40812c:	53                   	push   %ebx
40812d:	56                   	push   %esi
40812e:	57                   	push   %edi
40812f:	83 c4 f8             	add    $0xfffffff8,%esp
408132:	8b fa                	mov    %edx,%edi
408134:	8b f0                	mov    %eax,%esi
408136:	8b c6                	mov    %esi,%eax
408138:	e8 f3 c6 ff ff       	call   0x404830
40813d:	8b d8                	mov    %eax,%ebx
40813f:	8b c7                	mov    %edi,%eax
408141:	8b d3                	mov    %ebx,%edx
408143:	e8 74 ca ff ff       	call   0x404bbc
408148:	89 34 24             	mov    %esi,(%esp)
40814b:	8b 07                	mov    (%edi),%eax
40814d:	89 44 24 04          	mov    %eax,0x4(%esp)
408151:	85 db                	test   %ebx,%ebx
408153:	74 21                	je     0x408176
408155:	8b 04 24             	mov    (%esp),%eax
408158:	8a 00                	mov    (%eax),%al
40815a:	3c 61                	cmp    $0x61,%al
40815c:	72 06                	jb     0x408164
40815e:	3c 7a                	cmp    $0x7a,%al
408160:	77 02                	ja     0x408164
408162:	2c 20                	sub    $0x20,%al
408164:	8b 54 24 04          	mov    0x4(%esp),%edx
408168:	88 02                	mov    %al,(%edx)
40816a:	ff 04 24             	incl   (%esp)
40816d:	ff 44 24 04          	incl   0x4(%esp)
408171:	4b                   	dec    %ebx
408172:	85 db                	test   %ebx,%ebx
408174:	75 df                	jne    0x408155
408176:	59                   	pop    %ecx
408177:	5a                   	pop    %edx
408178:	5f                   	pop    %edi
408179:	5e                   	pop    %esi
40817a:	5b                   	pop    %ebx
40817b:	c3                   	ret
40817c:	53                   	push   %ebx
40817d:	56                   	push   %esi
40817e:	57                   	push   %edi
40817f:	83 c4 f8             	add    $0xfffffff8,%esp
408182:	8b fa                	mov    %edx,%edi
408184:	8b f0                	mov    %eax,%esi
408186:	8b c6                	mov    %esi,%eax
408188:	e8 a3 c6 ff ff       	call   0x404830
40818d:	8b d8                	mov    %eax,%ebx
40818f:	8b c7                	mov    %edi,%eax
408191:	8b d3                	mov    %ebx,%edx
408193:	e8 24 ca ff ff       	call   0x404bbc
408198:	89 34 24             	mov    %esi,(%esp)
40819b:	8b 07                	mov    (%edi),%eax
40819d:	89 44 24 04          	mov    %eax,0x4(%esp)
4081a1:	85 db                	test   %ebx,%ebx
4081a3:	74 21                	je     0x4081c6
4081a5:	8b 04 24             	mov    (%esp),%eax
4081a8:	8a 00                	mov    (%eax),%al
4081aa:	3c 41                	cmp    $0x41,%al
4081ac:	72 06                	jb     0x4081b4
4081ae:	3c 5a                	cmp    $0x5a,%al
4081b0:	77 02                	ja     0x4081b4
4081b2:	04 20                	add    $0x20,%al
4081b4:	8b 54 24 04          	mov    0x4(%esp),%edx
4081b8:	88 02                	mov    %al,(%edx)
4081ba:	ff 04 24             	incl   (%esp)
4081bd:	ff 44 24 04          	incl   0x4(%esp)
4081c1:	4b                   	dec    %ebx
4081c2:	85 db                	test   %ebx,%ebx
4081c4:	75 df                	jne    0x4081a5
4081c6:	59                   	pop    %ecx
4081c7:	5a                   	pop    %edx
4081c8:	5f                   	pop    %edi
4081c9:	5e                   	pop    %esi
4081ca:	5b                   	pop    %ebx
4081cb:	c3                   	ret
4081cc:	56                   	push   %esi
4081cd:	57                   	push   %edi
4081ce:	89 c6                	mov    %eax,%esi
4081d0:	89 d7                	mov    %edx,%edi
4081d2:	09 c0                	or     %eax,%eax
4081d4:	74 03                	je     0x4081d9
4081d6:	8b 40 fc             	mov    -0x4(%eax),%eax
4081d9:	09 d2                	or     %edx,%edx
4081db:	74 03                	je     0x4081e0
4081dd:	8b 52 fc             	mov    -0x4(%edx),%edx
4081e0:	89 c1                	mov    %eax,%ecx
4081e2:	39 d1                	cmp    %edx,%ecx
4081e4:	76 02                	jbe    0x4081e8
4081e6:	89 d1                	mov    %edx,%ecx
4081e8:	39 c9                	cmp    %ecx,%ecx
4081ea:	f3 a6                	repz cmpsb %es:(%edi),%ds:(%esi)
4081ec:	74 08                	je     0x4081f6
4081ee:	0f b6 46 ff          	movzbl -0x1(%esi),%eax
4081f2:	0f b6 57 ff          	movzbl -0x1(%edi),%edx
4081f6:	29 d0                	sub    %edx,%eax
4081f8:	5f                   	pop    %edi
4081f9:	5e                   	pop    %esi
4081fa:	c3                   	ret
4081fb:	90                   	nop
4081fc:	56                   	push   %esi
4081fd:	57                   	push   %edi
4081fe:	89 c6                	mov    %eax,%esi
408200:	89 d7                	mov    %edx,%edi
408202:	89 ca                	mov    %ecx,%edx
408204:	31 c0                	xor    %eax,%eax
408206:	83 e2 03             	and    $0x3,%edx
408209:	c1 f9 02             	sar    $0x2,%ecx
40820c:	78 0a                	js     0x408218
40820e:	f3 a7                	repz cmpsl %es:(%edi),%ds:(%esi)
408210:	75 07                	jne    0x408219
408212:	89 d1                	mov    %edx,%ecx
408214:	f3 a6                	repz cmpsb %es:(%edi),%ds:(%esi)
408216:	75 01                	jne    0x408219
408218:	40                   	inc    %eax
408219:	5f                   	pop    %edi
40821a:	5e                   	pop    %esi
40821b:	c3                   	ret
40821c:	56                   	push   %esi
40821d:	57                   	push   %edi
40821e:	53                   	push   %ebx
40821f:	89 c6                	mov    %eax,%esi
408221:	89 d7                	mov    %edx,%edi
408223:	09 c0                	or     %eax,%eax
408225:	74 03                	je     0x40822a
408227:	8b 40 fc             	mov    -0x4(%eax),%eax
40822a:	09 d2                	or     %edx,%edx
40822c:	74 03                	je     0x408231
40822e:	8b 52 fc             	mov    -0x4(%edx),%edx
408231:	89 c1                	mov    %eax,%ecx
408233:	39 d1                	cmp    %edx,%ecx
408235:	76 02                	jbe    0x408239
408237:	89 d1                	mov    %edx,%ecx
408239:	39 c9                	cmp    %ecx,%ecx
40823b:	f3 a6                	repz cmpsb %es:(%edi),%ds:(%esi)
40823d:	74 2a                	je     0x408269
40823f:	8a 5e ff             	mov    -0x1(%esi),%bl
408242:	80 fb 61             	cmp    $0x61,%bl
408245:	72 08                	jb     0x40824f
408247:	80 fb 7a             	cmp    $0x7a,%bl
40824a:	77 03                	ja     0x40824f
40824c:	80 eb 20             	sub    $0x20,%bl
40824f:	8a 7f ff             	mov    -0x1(%edi),%bh
408252:	80 ff 61             	cmp    $0x61,%bh
408255:	72 08                	jb     0x40825f
408257:	80 ff 7a             	cmp    $0x7a,%bh
40825a:	77 03                	ja     0x40825f
40825c:	80 ef 20             	sub    $0x20,%bh
40825f:	38 fb                	cmp    %bh,%bl
408261:	74 d8                	je     0x40823b
408263:	0f b6 c3             	movzbl %bl,%eax
408266:	0f b6 d7             	movzbl %bh,%edx
408269:	29 d0                	sub    %edx,%eax
40826b:	5b                   	pop    %ebx
40826c:	5f                   	pop    %edi
40826d:	5e                   	pop    %esi
40826e:	c3                   	ret
40826f:	90                   	nop
408270:	39 d0                	cmp    %edx,%eax
408272:	74 19                	je     0x40828d
408274:	09 c0                	or     %eax,%eax
408276:	74 17                	je     0x40828f
408278:	09 d2                	or     %edx,%edx
40827a:	74 14                	je     0x408290
40827c:	8b 48 fc             	mov    -0x4(%eax),%ecx
40827f:	3b 4a fc             	cmp    -0x4(%edx),%ecx
408282:	75 0c                	jne    0x408290
408284:	e8 93 ff ff ff       	call   0x40821c
408289:	85 c0                	test   %eax,%eax
40828b:	75 03                	jne    0x408290
40828d:	b0 01                	mov    $0x1,%al
40828f:	c3                   	ret
408290:	31 c0                	xor    %eax,%eax
408292:	c3                   	ret
408293:	90                   	nop
408294:	53                   	push   %ebx
408295:	56                   	push   %esi
408296:	8b f2                	mov    %edx,%esi
408298:	8b d8                	mov    %eax,%ebx
40829a:	8b c6                	mov    %esi,%eax
40829c:	e8 8f c5 ff ff       	call   0x404830
4082a1:	50                   	push   %eax
4082a2:	8b c6                	mov    %esi,%eax
4082a4:	e8 87 c7 ff ff       	call   0x404a30
4082a9:	50                   	push   %eax
4082aa:	8b c3                	mov    %ebx,%eax
4082ac:	e8 7f c5 ff ff       	call   0x404830
4082b1:	50                   	push   %eax
4082b2:	8b c3                	mov    %ebx,%eax
4082b4:	e8 77 c7 ff ff       	call   0x404a30
4082b9:	50                   	push   %eax
4082ba:	6a 00                	push   $0x0
4082bc:	68 00 04 00 00       	push   $0x400
4082c1:	e8 36 e3 ff ff       	call   0x4065fc
4082c6:	83 e8 02             	sub    $0x2,%eax
4082c9:	5e                   	pop    %esi
4082ca:	5b                   	pop    %ebx
4082cb:	c3                   	ret
4082cc:	53                   	push   %ebx
4082cd:	56                   	push   %esi
4082ce:	8b f2                	mov    %edx,%esi
4082d0:	8b d8                	mov    %eax,%ebx
4082d2:	8b c6                	mov    %esi,%eax
4082d4:	e8 57 c5 ff ff       	call   0x404830
4082d9:	50                   	push   %eax
4082da:	8b c6                	mov    %esi,%eax
4082dc:	e8 4f c7 ff ff       	call   0x404a30