409174:	53                   	push   %ebx
409175:	56                   	push   %esi
409176:	57                   	push   %edi
409177:	8b fa                	mov    %edx,%edi
409179:	8b f0                	mov    %eax,%esi
40917b:	8b c6                	mov    %esi,%eax
40917d:	e8 9e b9 ff ff       	call   0x404b20
409182:	8b d8                	mov    %eax,%ebx
409184:	8b c7                	mov    %edi,%eax
409186:	8b d3                	mov    %ebx,%edx
409188:	e8 17 bd ff ff       	call   0x404ea4
40918d:	8b d6                	mov    %esi,%edx
40918f:	8b 37                	mov    (%edi),%esi
409191:	85 db                	test   %ebx,%ebx
409193:	74 15                	je     0x4091aa
409195:	8a 02                	mov    (%edx),%al
409197:	3c 41                	cmp    $0x41,%al
409199:	72 06                	jb     0x4091a1
40919b:	3c 5a                	cmp    $0x5a,%al
40919d:	77 02                	ja     0x4091a1
40919f:	04 20                	add    $0x20,%al
4091a1:	88 06                	mov    %al,(%esi)
4091a3:	42                   	inc    %edx
4091a4:	46                   	inc    %esi
4091a5:	4b                   	dec    %ebx
4091a6:	85 db                	test   %ebx,%ebx
4091a8:	75 eb                	jne    0x409195
4091aa:	5f                   	pop    %edi
4091ab:	5e                   	pop    %esi
4091ac:	5b                   	pop    %ebx
4091ad:	c3                   	ret
4091ae:	8b c0                	mov    %eax,%eax
4091b0:	56                   	push   %esi
4091b1:	57                   	push   %edi
4091b2:	89 c6                	mov    %eax,%esi
4091b4:	89 d7                	mov    %edx,%edi
4091b6:	09 c0                	or     %eax,%eax
4091b8:	74 03                	je     0x4091bd
4091ba:	8b 40 fc             	mov    -0x4(%eax),%eax
4091bd:	09 d2                	or     %edx,%edx
4091bf:	74 03                	je     0x4091c4
4091c1:	8b 52 fc             	mov    -0x4(%edx),%edx
4091c4:	89 c1                	mov    %eax,%ecx
4091c6:	39 d1                	cmp    %edx,%ecx
4091c8:	76 02                	jbe    0x4091cc
4091ca:	89 d1                	mov    %edx,%ecx
4091cc:	39 c9                	cmp    %ecx,%ecx
4091ce:	f3 a6                	repz cmpsb %es:(%edi),%ds:(%esi)
4091d0:	74 08                	je     0x4091da
4091d2:	0f b6 46 ff          	movzbl -0x1(%esi),%eax
4091d6:	0f b6 57 ff          	movzbl -0x1(%edi),%edx
4091da:	29 d0                	sub    %edx,%eax
4091dc:	5f                   	pop    %edi
4091dd:	5e                   	pop    %esi
4091de:	c3                   	ret
4091df:	90                   	nop
4091e0:	56                   	push   %esi
4091e1:	57                   	push   %edi
4091e2:	89 c6                	mov    %eax,%esi
4091e4:	89 d7                	mov    %edx,%edi
4091e6:	89 ca                	mov    %ecx,%edx
4091e8:	31 c0                	xor    %eax,%eax
4091ea:	83 e2 03             	and    $0x3,%edx
4091ed:	d1 e9                	shr    $1,%ecx
4091ef:	d1 e9                	shr    $1,%ecx
4091f1:	f3 a7                	repz cmpsl %es:(%edi),%ds:(%esi)
4091f3:	75 07                	jne    0x4091fc
4091f5:	89 d1                	mov    %edx,%ecx
4091f7:	f3 a6                	repz cmpsb %es:(%edi),%ds:(%esi)
4091f9:	75 01                	jne    0x4091fc
4091fb:	40                   	inc    %eax
4091fc:	5f                   	pop    %edi
4091fd:	5e                   	pop    %esi
4091fe:	c3                   	ret
4091ff:	90                   	nop
409200:	56                   	push   %esi
409201:	57                   	push   %edi
409202:	53                   	push   %ebx
409203:	89 c6                	mov    %eax,%esi
409205:	89 d7                	mov    %edx,%edi
409207:	09 c0                	or     %eax,%eax
409209:	74 03                	je     0x40920e
40920b:	8b 40 fc             	mov    -0x4(%eax),%eax
40920e:	09 d2                	or     %edx,%edx
409210:	74 03                	je     0x409215
409212:	8b 52 fc             	mov    -0x4(%edx),%edx
409215:	89 c1                	mov    %eax,%ecx
409217:	39 d1                	cmp    %edx,%ecx
409219:	76 02                	jbe    0x40921d
40921b:	89 d1                	mov    %edx,%ecx
40921d:	39 c9                	cmp    %ecx,%ecx
40921f:	f3 a6                	repz cmpsb %es:(%edi),%ds:(%esi)
409221:	74 2a                	je     0x40924d
409223:	8a 5e ff             	mov    -0x1(%esi),%bl
409226:	80 fb 61             	cmp    $0x61,%bl
409229:	72 08                	jb     0x409233
40922b:	80 fb 7a             	cmp    $0x7a,%bl
40922e:	77 03                	ja     0x409233
409230:	80 eb 20             	sub    $0x20,%bl
409233:	8a 7f ff             	mov    -0x1(%edi),%bh
409236:	80 ff 61             	cmp    $0x61,%bh
409239:	72 08                	jb     0x409243
40923b:	80 ff 7a             	cmp    $0x7a,%bh
40923e:	77 03                	ja     0x409243
409240:	80 ef 20             	sub    $0x20,%bh
409243:	38 fb                	cmp    %bh,%bl
409245:	74 d8                	je     0x40921f
409247:	0f b6 c3             	movzbl %bl,%eax
40924a:	0f b6 d7             	movzbl %bh,%edx
40924d:	29 d0                	sub    %edx,%eax
40924f:	5b                   	pop    %ebx
409250:	5f                   	pop    %edi
409251:	5e                   	pop    %esi
409252:	c3                   	ret
409253:	90                   	nop
409254:	39 d0                	cmp    %edx,%eax
409256:	74 19                	je     0x409271
409258:	09 c0                	or     %eax,%eax
40925a:	74 17                	je     0x409273
40925c:	09 d2                	or     %edx,%edx
40925e:	74 14                	je     0x409274
409260:	8b 48 fc             	mov    -0x4(%eax),%ecx
409263:	3b 4a fc             	cmp    -0x4(%edx),%ecx
409266:	75 0c                	jne    0x409274
409268:	e8 93 ff ff ff       	call   0x409200
40926d:	85 c0                	test   %eax,%eax
40926f:	75 03                	jne    0x409274
409271:	b0 01                	mov    $0x1,%al
409273:	c3                   	ret
409274:	31 c0                	xor    %eax,%eax
409276:	c3                   	ret
409277:	90                   	nop
409278:	53                   	push   %ebx
409279:	56                   	push   %esi
40927a:	57                   	push   %edi
40927b:	8b fa                	mov    %edx,%edi
40927d:	8b f0                	mov    %eax,%esi
40927f:	8b c6                	mov    %esi,%eax
409281:	e8 9a b8 ff ff       	call   0x404b20
409286:	8b d8                	mov    %eax,%ebx
409288:	8b c6                	mov    %esi,%eax
40928a:	e8 89 ba ff ff       	call   0x404d18
40928f:	8b d0                	mov    %eax,%edx
409291:	8b c7                	mov    %edi,%eax
409293:	8b cb                	mov    %ebx,%ecx
409295:	e8 be b6 ff ff       	call   0x404958
40929a:	85 db                	test   %ebx,%ebx
40929c:	7e 09                	jle    0x4092a7
40929e:	53                   	push   %ebx
40929f:	8b 07                	mov    (%edi),%eax
4092a1:	50                   	push   %eax
4092a2:	e8 99 e5 ff ff       	call   0x407840
4092a7:	5f                   	pop    %edi
4092a8:	5e                   	pop    %esi
4092a9:	5b                   	pop    %ebx
4092aa:	c3                   	ret
4092ab:	90                   	nop
4092ac:	53                   	push   %ebx
4092ad:	56                   	push   %esi
4092ae:	57                   	push   %edi
4092af:	8b fa                	mov    %edx,%edi
4092b1:	8b f0                	mov    %eax,%esi
4092b3:	8b c6                	mov    %esi,%eax
4092b5:	e8 66 b8 ff ff       	call   0x404b20
4092ba:	8b d8                	mov    %eax,%ebx
4092bc:	8b c6                	mov    %esi,%eax
4092be:	e8 55 ba ff ff       	call   0x404d18
4092c3:	8b d0                	mov    %eax,%edx
4092c5:	8b c7                	mov    %edi,%eax
4092c7:	8b cb                	mov    %ebx,%ecx
4092c9:	e8 8a b6 ff ff       	call   0x404958
4092ce:	85 db                	test   %ebx,%ebx
4092d0:	7e 09                	jle    0x4092db
4092d2:	53                   	push   %ebx
4092d3:	8b 07                	mov    (%edi),%eax
4092d5:	50                   	push   %eax
4092d6:	e8 55 e5 ff ff       	call   0x407830
4092db:	5f                   	pop    %edi
4092dc:	5e                   	pop    %esi
4092dd:	5b                   	pop    %ebx
4092de:	c3                   	ret
4092df:	90                   	nop
4092e0:	53                   	push   %ebx
4092e1:	56                   	push   %esi
4092e2:	8b f2                	mov    %edx,%esi
4092e4:	8b d8                	mov    %eax,%ebx
4092e6:	8b c6                	mov    %esi,%eax
4092e8:	e8 33 b8 ff ff       	call   0x404b20
4092ed:	50                   	push   %eax
4092ee:	8b c6                	mov    %esi,%eax
4092f0:	e8 23 ba ff ff       	call   0x404d18
4092f5:	50                   	push   %eax
4092f6:	8b c3                	mov    %ebx,%eax
4092f8:	e8 23 b8 ff ff       	call   0x404b20
4092fd:	50                   	push   %eax
4092fe:	8b c3                	mov    %ebx,%eax
409300:	e8 13 ba ff ff       	call   0x404d18
409305:	50                   	push   %eax
409306:	6a 00                	push   $0x0
409308:	68 00 04 00 00       	push   $0x400
40930d:	e8 96 dd ff ff       	call   0x4070a8
409312:	83 e8 02             	sub    $0x2,%eax
409315:	5e                   	pop    %esi
409316:	5b                   	pop    %ebx
409317:	c3                   	ret
409318:	53                   	push   %ebx
409319:	56                   	push   %esi
40931a:	8b f2                	mov    %edx,%esi
40931c:	8b d8                	mov    %eax,%ebx
40931e:	8b c6                	mov    %esi,%eax
409320:	e8 fb b7 ff ff       	call   0x404b20
409325:	50                   	push   %eax
409326:	8b c6                	mov    %esi,%eax
409328:	e8 eb b9 ff ff       	call   0x404d18
40932d:	50                   	push   %eax
40932e:	8b c3                	mov    %ebx,%eax
409330:	e8 eb b7 ff ff       	call   0x404b20
409335:	50                   	push   %eax
409336:	8b c3                	mov    %ebx,%eax
409338:	e8 db b9 ff ff       	call   0x404d18
40933d:	50                   	push   %eax
40933e:	6a 01                	push   $0x1
409340:	68 00 04 00 00       	push   $0x400
409345:	e8 5e dd ff ff       	call   0x4070a8
40934a:	83 e8 02             	sub    $0x2,%eax
40934d:	5e                   	pop    %esi
40934e:	5b                   	pop    %ebx
40934f:	c3                   	ret
409350:	53                   	push   %ebx
409351:	56                   	push   %esi
409352:	8b f2                	mov    %edx,%esi
409354:	8b d8                	mov    %eax,%ebx
409356:	8b d6                	mov    %esi,%edx
409358:	8b c3                	mov    %ebx,%eax
40935a:	e8 b9 ff ff ff       	call   0x409318
40935f:	85 c0                	test   %eax,%eax
409361:	0f 94 c0             	sete   %al
409364:	5e                   	pop    %esi
409365:	5b                   	pop    %ebx
409366:	c3                   	ret
409367:	90                   	nop
409368:	53                   	push   %ebx
409369:	56                   	push   %esi
40936a:	8b f2                	mov    %edx,%esi
40936c:	8b d8                	mov    %eax,%ebx
40936e:	6a ff                	push   $0xffffffff
409370:	56                   	push   %esi
409371:	6a ff                	push   $0xffffffff
409373:	53                   	push   %ebx
409374:	6a 01                	push   $0x1
409376:	68 00 04 00 00       	push   $0x400
40937b:	e8 28 dd ff ff       	call   0x4070a8
409380:	83 e8 02             	sub    $0x2,%eax
409383:	5e                   	pop    %esi
409384:	5b                   	pop    %ebx
409385:	c3                   	ret
409386:	8b c0                	mov    %eax,%eax
409388:	53                   	push   %ebx
409389:	56                   	push   %esi
40938a:	57                   	push   %edi
40938b:	8b d9                	mov    %ecx,%ebx
40938d:	8b fa                	mov    %edx,%edi
40938f:	8b f0                	mov    %eax,%esi
409391:	53                   	push   %ebx
409392:	57                   	push   %edi
409393:	53                   	push   %ebx
409394:	56                   	push   %esi
409395:	6a 01                	push   $0x1
409397:	68 00 04 00 00       	push   $0x400
40939c:	e8 07 dd ff ff       	call   0x4070a8
4093a1:	83 e8 02             	sub    $0x2,%eax
4093a4:	5f                   	pop    %edi
4093a5:	5e                   	pop    %esi
4093a6:	5b                   	pop    %ebx
4093a7:	c3                   	ret
4093a8:	53                   	push   %ebx
4093a9:	56                   	push   %esi
4093aa:	57                   	push   %edi
4093ab:	55                   	push   %ebp
4093ac:	8b ea                	mov    %edx,%ebp
4093ae:	8b f8                	mov    %eax,%edi
4093b0:	8b c7                	mov    %edi,%eax
4093b2:	e8 69 b7 ff ff       	call   0x404b20
4093b7:	8b f0                	mov    %eax,%esi
4093b9:	bb 01 00 00 00       	mov    $0x1,%ebx
4093be:	eb 01                	jmp    0x4093c1
4093c0:	43                   	inc    %ebx
4093c1:	3b f3                	cmp    %ebx,%esi
4093c3:	7c 07                	jl     0x4093cc
4093c5:	80 7c 1f ff 20       	cmpb   $0x20,-0x1(%edi,%ebx,1)
4093ca:	76 f4                	jbe    0x4093c0
4093cc:	3b f3                	cmp    %ebx,%esi
4093ce:	7d 0a                	jge    0x4093da
4093d0:	8b c5                	mov    %ebp,%eax
4093d2:	e8 91 b4 ff ff       	call   0x404868
4093d7:	eb 17                	jmp    0x4093f0
4093d9:	4e                   	dec    %esi
4093da:	80 7c 37 ff 20       	cmpb   $0x20,-0x1(%edi,%esi,1)
4093df:	76 f8                	jbe    0x4093d9
4093e1:	55                   	push   %ebp
4093e2:	8b ce                	mov    %esi,%ecx
4093e4:	2b cb                	sub    %ebx,%ecx
4093e6:	41                   	inc    %ecx
4093e7:	8b d3                	mov    %ebx,%edx
4093e9:	8b c7                	mov    %edi,%eax
4093eb:	e8 88 b9 ff ff       	call   0x404d78
4093f0:	5d                   	pop    %ebp
4093f1:	5f                   	pop    %edi
4093f2:	5e                   	pop    %esi
4093f3:	5b                   	pop    %ebx
4093f4:	c3                   	ret
4093f5:	8d 40 00             	lea    0x0(%eax),%eax
4093f8:	55                   	push   %ebp
4093f9:	8b ec                	mov    %esp,%ebp
4093fb:	83 c4 ec             	add    $0xffffffec,%esp
4093fe:	53                   	push   %ebx
4093ff:	56                   	push   %esi
409400:	57                   	push   %edi
409401:	33 db                	xor    %ebx,%ebx
409403:	89 5d ec             	mov    %ebx,-0x14(%ebp)
409406:	89 4d f8             	mov    %ecx,-0x8(%ebp)
409409:	88 55 ff             	mov    %dl,-0x1(%ebp)
40940c:	8b f8                	mov    %eax,%edi
40940e:	33 c0                	xor    %eax,%eax
409410:	55                   	push   %ebp
409411:	68 51 95 40 00       	push   $0x409551
409416:	64 ff 30             	push   %fs:(%eax)
409419:	64 89 20             	mov    %esp,%fs:(%eax)
40941c:	8b df                	mov    %edi,%ebx
40941e:	8b c7                	mov    %edi,%eax
409420:	e8 fb b6 ff ff       	call   0x404b20
409425:	8b f0                	mov    %eax,%esi
409427:	03 f3                	add    %ebx,%esi
409429:	8b c7                	mov    %edi,%eax
40942b:	e8 f0 b6 ff ff       	call   0x404b20
409430:	89 45 f4             	mov    %eax,-0xc(%ebp)
409433:	3b f3                	cmp    %ebx,%esi
409435:	76 58                	jbe    0x40948f
409437:	8a 03                	mov    (%ebx),%al
409439:	8b d0                	mov    %eax,%edx
40943b:	80 ea 0a             	sub    $0xa,%dl
40943e:	74 07                	je     0x409447
409440:	80 ea 03             	sub    $0x3,%dl
409443:	74 0d                	je     0x409452
409445:	eb 2a                	jmp    0x409471
409447:	80 7d ff 01          	cmpb   $0x1,-0x1(%ebp)
40944b:	75 3d                	jne    0x40948a
40944d:	ff 45 f4             	incl   -0xc(%ebp)
409450:	eb 38                	jmp    0x40948a
409452:	80 7d ff 01          	cmpb   $0x1,-0x1(%ebp)