4180ae:	53                   	push   %ebx
4180af:	56                   	push   %esi
4180b0:	57                   	push   %edi
4180b1:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4180b4:	8b fa                	mov    %edx,%edi
4180b6:	8b 75 08             	mov    0x8(%ebp),%esi
4180b9:	85 f6                	test   %esi,%esi
4180bb:	7c 1e                	jl     0x4180db
4180bd:	46                   	inc    %esi
4180be:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4180c1:	3b 03                	cmp    (%ebx),%eax
4180c3:	75 10                	jne    0x4180d5
4180c5:	c6 45 fb 01          	movb   $0x1,-0x5(%ebp)
4180c9:	8b c7                	mov    %edi,%eax
4180cb:	8b 53 04             	mov    0x4(%ebx),%edx
4180ce:	e8 d1 bf fe ff       	call   0x4040a4
4180d3:	eb 0a                	jmp    0x4180df
4180d5:	83 c3 08             	add    $0x8,%ebx
4180d8:	4e                   	dec    %esi
4180d9:	75 e6                	jne    0x4180c1
4180db:	c6 45 fb 00          	movb   $0x0,-0x5(%ebp)
4180df:	8a 45 fb             	mov    -0x5(%ebp),%al
4180e2:	5f                   	pop    %edi
4180e3:	5e                   	pop    %esi
4180e4:	5b                   	pop    %ebx
4180e5:	59                   	pop    %ecx
4180e6:	59                   	pop    %ecx
4180e7:	5d                   	pop    %ebp
4180e8:	c2 04 00             	ret    $0x4
4180eb:	90                   	nop
4180ec:	53                   	push   %ebx
4180ed:	56                   	push   %esi
4180ee:	8b d8                	mov    %eax,%ebx
4180f0:	83 3d 60 58 47 00 00 	cmpl   $0x0,0x475860
4180f7:	75 11                	jne    0x41810a
4180f9:	b2 01                	mov    $0x1,%dl
4180fb:	a1 d8 5f 41 00       	mov    0x415fd8,%eax
418100:	e8 8b b1 fe ff       	call   0x403290
418105:	a3 60 58 47 00       	mov    %eax,0x475860
41810a:	8b f3                	mov    %ebx,%esi
41810c:	8b d6                	mov    %esi,%edx
41810e:	a1 60 58 47 00       	mov    0x475860,%eax
418113:	e8 c8 06 00 00       	call   0x4187e0
418118:	85 c0                	test   %eax,%eax
41811a:	7d 0c                	jge    0x418128
41811c:	8b d6                	mov    %esi,%edx
41811e:	a1 60 58 47 00       	mov    0x475860,%eax
418123:	e8 00 05 00 00       	call   0x418628
418128:	5e                   	pop    %esi
418129:	5b                   	pop    %ebx
41812a:	c3                   	ret
41812b:	90                   	nop
41812c:	83 3d 60 58 47 00 00 	cmpl   $0x0,0x475860
418133:	74 0c                	je     0x418141
418135:	8b d0                	mov    %eax,%edx
418137:	a1 60 58 47 00       	mov    0x475860,%eax
41813c:	e8 df 07 00 00       	call   0x418920
418141:	c3                   	ret
418142:	8b c0                	mov    %eax,%eax
418144:	53                   	push   %ebx
418145:	56                   	push   %esi
418146:	57                   	push   %edi
418147:	8b f0                	mov    %eax,%esi
418149:	33 c0                	xor    %eax,%eax
41814b:	83 3d 60 58 47 00 00 	cmpl   $0x0,0x475860
418152:	74 2b                	je     0x41817f
418154:	8b 15 60 58 47 00    	mov    0x475860,%edx
41815a:	8b 5a 08             	mov    0x8(%edx),%ebx
41815d:	4b                   	dec    %ebx
41815e:	83 fb 00             	cmp    $0x0,%ebx
418161:	7c 1c                	jl     0x41817f
418163:	8b d3                	mov    %ebx,%edx
418165:	a1 60 58 47 00       	mov    0x475860,%eax
41816a:	e8 15 06 00 00       	call   0x418784
41816f:	8b f8                	mov    %eax,%edi
418171:	8b c6                	mov    %esi,%eax
418173:	ff d7                	call   *%edi
418175:	85 c0                	test   %eax,%eax
418177:	75 06                	jne    0x41817f
418179:	4b                   	dec    %ebx
41817a:	83 fb ff             	cmp    $0xffffffff,%ebx
41817d:	75 e4                	jne    0x418163
41817f:	5f                   	pop    %edi
418180:	5e                   	pop    %esi
418181:	5b                   	pop    %ebx
418182:	c3                   	ret
418183:	90                   	nop
418184:	53                   	push   %ebx
418185:	8b d8                	mov    %eax,%ebx
418187:	83 3d 4c 58 47 00 00 	cmpl   $0x0,0x47584c
41818e:	74 0a                	je     0x41819a
418190:	8b c3                	mov    %ebx,%eax
418192:	ff 15 4c 58 47 00    	call   *0x47584c
418198:	5b                   	pop    %ebx
418199:	c3                   	ret
41819a:	8b c3                	mov    %ebx,%eax
41819c:	e8 a3 ff ff ff       	call   0x418144
4181a1:	85 c0                	test   %eax,%eax
4181a3:	0f 94 c0             	sete   %al
4181a6:	5b                   	pop    %ebx
4181a7:	c3                   	ret
4181a8:	55                   	push   %ebp
4181a9:	8b ec                	mov    %esp,%ebp
4181ab:	51                   	push   %ecx
4181ac:	53                   	push   %ebx
4181ad:	56                   	push   %esi
4181ae:	57                   	push   %edi
4181af:	8b f1                	mov    %ecx,%esi
4181b1:	8b da                	mov    %edx,%ebx
4181b3:	8b f8                	mov    %eax,%edi
4181b5:	85 db                	test   %ebx,%ebx
4181b7:	75 06                	jne    0x4181bf
4181b9:	8b 1d 64 56 47 00    	mov    0x475664,%ebx
4181bf:	6a 0a                	push   $0xa
4181c1:	8b c7                	mov    %edi,%eax
4181c3:	e8 48 c3 fe ff       	call   0x404510
4181c8:	50                   	push   %eax
4181c9:	53                   	push   %ebx
4181ca:	e8 0d e1 fe ff       	call   0x4062dc
4181cf:	85 c0                	test   %eax,%eax
4181d1:	0f 95 c0             	setne  %al
4181d4:	84 c0                	test   %al,%al
4181d6:	74 4d                	je     0x418225
4181d8:	57                   	push   %edi
4181d9:	6a 0a                	push   $0xa
4181db:	8b cb                	mov    %ebx,%ecx
4181dd:	b2 01                	mov    $0x1,%dl
4181df:	a1 ec 68 41 00       	mov    0x4168ec,%eax
4181e4:	e8 5b 32 00 00       	call   0x41b444
4181e9:	89 45 fc             	mov    %eax,-0x4(%ebp)
4181ec:	33 c0                	xor    %eax,%eax
4181ee:	55                   	push   %ebp
4181ef:	68 1c 82 41 00       	push   $0x41821c
4181f4:	64 ff 30             	push   %fs:(%eax)
4181f7:	64 89 20             	mov    %esp,%fs:(%eax)
4181fa:	8b 16                	mov    (%esi),%edx
4181fc:	8b 45 fc             	mov    -0x4(%ebp),%eax
4181ff:	e8 40 2d 00 00       	call   0x41af44
418204:	89 06                	mov    %eax,(%esi)
418206:	33 c0                	xor    %eax,%eax
418208:	5a                   	pop    %edx
418209:	59                   	pop    %ecx
41820a:	59                   	pop    %ecx
41820b:	64 89 10             	mov    %edx,%fs:(%eax)
41820e:	68 23 82 41 00       	push   $0x418223
418213:	8b 45 fc             	mov    -0x4(%ebp),%eax
418216:	e8 a5 b0 fe ff       	call   0x4032c0
41821b:	c3                   	ret
41821c:	e9 33 b8 fe ff       	jmp    0x403a54
418221:	eb f0                	jmp    0x418213
418223:	b0 01                	mov    $0x1,%al
418225:	5f                   	pop    %edi
418226:	5e                   	pop    %esi
418227:	5b                   	pop    %ebx
418228:	59                   	pop    %ecx
418229:	5d                   	pop    %ebp
41822a:	c3                   	ret
41822b:	90                   	nop
41822c:	53                   	push   %ebx
41822d:	e8 1e de fe ff       	call   0x406050
418232:	8b 98 0c 00 00 00    	mov    0xc(%eax),%ebx
418238:	85 db                	test   %ebx,%ebx
41823a:	75 19                	jne    0x418255
41823c:	b2 01                	mov    $0x1,%dl
41823e:	a1 d8 5f 41 00       	mov    0x415fd8,%eax
418243:	e8 48 b0 fe ff       	call   0x403290
418248:	8b d8                	mov    %eax,%ebx
41824a:	e8 01 de fe ff       	call   0x406050
41824f:	89 98 0c 00 00 00    	mov    %ebx,0xc(%eax)
418255:	e8 f6 dd fe ff       	call   0x406050
41825a:	8b 90 08 00 00 00    	mov    0x8(%eax),%edx
418260:	8b c3                	mov    %ebx,%eax
418262:	e8 c1 03 00 00       	call   0x418628
418267:	b2 01                	mov    $0x1,%dl
418269:	a1 d8 5f 41 00       	mov    0x415fd8,%eax
41826e:	e8 1d b0 fe ff       	call   0x403290
418273:	8b d8                	mov    %eax,%ebx
418275:	e8 d6 dd fe ff       	call   0x406050
41827a:	89 98 08 00 00 00    	mov    %ebx,0x8(%eax)
418280:	5b                   	pop    %ebx
418281:	c3                   	ret
418282:	8b c0                	mov    %eax,%eax
418284:	53                   	push   %ebx
418285:	56                   	push   %esi
418286:	57                   	push   %edi
418287:	e8 c4 dd fe ff       	call   0x406050
41828c:	8b b8 08 00 00 00    	mov    0x8(%eax),%edi
418292:	8b 5f 08             	mov    0x8(%edi),%ebx
418295:	4b                   	dec    %ebx
418296:	85 db                	test   %ebx,%ebx
418298:	7c 15                	jl     0x4182af
41829a:	43                   	inc    %ebx
41829b:	33 f6                	xor    %esi,%esi
41829d:	8b d6                	mov    %esi,%edx
41829f:	8b c7                	mov    %edi,%eax
4182a1:	e8 de 04 00 00       	call   0x418784
4182a6:	8b 10                	mov    (%eax),%edx
4182a8:	ff 52 0c             	call   *0xc(%edx)
4182ab:	46                   	inc    %esi
4182ac:	4b                   	dec    %ebx
4182ad:	75 ee                	jne    0x41829d
4182af:	5f                   	pop    %edi
4182b0:	5e                   	pop    %esi
4182b1:	5b                   	pop    %ebx
4182b2:	c3                   	ret
4182b3:	90                   	nop
4182b4:	53                   	push   %ebx
4182b5:	56                   	push   %esi
4182b6:	e8 95 dd fe ff       	call   0x406050
4182bb:	8b 80 08 00 00 00    	mov    0x8(%eax),%eax
4182c1:	e8 fa af fe ff       	call   0x4032c0
4182c6:	e8 85 dd fe ff       	call   0x406050
4182cb:	8b 98 0c 00 00 00    	mov    0xc(%eax),%ebx
4182d1:	8b c3                	mov    %ebx,%eax
4182d3:	e8 94 05 00 00       	call   0x41886c
4182d8:	8b f0                	mov    %eax,%esi
4182da:	e8 71 dd fe ff       	call   0x406050
4182df:	89 b0 08 00 00 00    	mov    %esi,0x8(%eax)
4182e5:	8b 53 08             	mov    0x8(%ebx),%edx
4182e8:	4a                   	dec    %edx
4182e9:	8b c3                	mov    %ebx,%eax
4182eb:	e8 84 03 00 00       	call   0x418674
4182f0:	83 7b 08 00          	cmpl   $0x0,0x8(%ebx)
4182f4:	75 14                	jne    0x41830a
4182f6:	e8 55 dd fe ff       	call   0x406050
4182fb:	33 d2                	xor    %edx,%edx
4182fd:	89 90 0c 00 00 00    	mov    %edx,0xc(%eax)
418303:	8b c3                	mov    %ebx,%eax
418305:	e8 b6 af fe ff       	call   0x4032c0
41830a:	5e                   	pop    %esi
41830b:	5b                   	pop    %ebx
41830c:	c3                   	ret
41830d:	8d 40 00             	lea    0x0(%eax),%eax
418310:	55                   	push   %ebp
418311:	8b ec                	mov    %esp,%ebp
418313:	81 c4 fc fe ff ff    	add    $0xfffffefc,%esp
418319:	53                   	push   %ebx
41831a:	56                   	push   %esi
41831b:	33 d2                	xor    %edx,%edx
41831d:	89 55 fc             	mov    %edx,-0x4(%ebp)
418320:	8b f0                	mov    %eax,%esi
418322:	33 c0                	xor    %eax,%eax
418324:	55                   	push   %ebp
418325:	68 a6 83 41 00       	push   $0x4183a6
41832a:	64 ff 30             	push   %fs:(%eax)
41832d:	64 89 20             	mov    %esp,%fs:(%eax)
418330:	33 db                	xor    %ebx,%ebx
418332:	3b 35 14 6e 41 00    	cmp    0x416e14,%esi
418338:	74 56                	je     0x418390
41833a:	8b 45 08             	mov    0x8(%ebp),%eax
41833d:	3b 70 f8             	cmp    -0x8(%eax),%esi
418340:	74 4e                	je     0x418390
418342:	8b 45 08             	mov    0x8(%ebp),%eax
418345:	50                   	push   %eax
418346:	8b c6                	mov    %esi,%eax
418348:	e8 ff ae fe ff       	call   0x40324c
41834d:	e8 be ff ff ff       	call   0x418310
418352:	59                   	pop    %ecx
418353:	8b d8                	mov    %eax,%ebx
418355:	8d 95 fc fe ff ff    	lea    -0x104(%ebp),%edx
41835b:	8b c6                	mov    %esi,%eax
41835d:	e8 ae ae fe ff       	call   0x403210
418362:	8d 95 fc fe ff ff    	lea    -0x104(%ebp),%edx
418368:	8d 45 fc             	lea    -0x4(%ebp),%eax
41836b:	e8 44 bf fe ff       	call   0x4042b4
418370:	8b 45 fc             	mov    -0x4(%ebp),%eax
418373:	50                   	push   %eax
418374:	8b c6                	mov    %esi,%eax
418376:	e8 51 cf fe ff       	call   0x4052cc
41837b:	e8 9c cf fe ff       	call   0x40531c
418380:	8b d0                	mov    %eax,%edx
418382:	8b 45 08             	mov    0x8(%ebp),%eax
418385:	8d 48 fc             	lea    -0x4(%eax),%ecx
418388:	58                   	pop    %eax
418389:	e8 1a fe ff ff       	call   0x4181a8
41838e:	0a d8                	or     %al,%bl
418390:	33 c0                	xor    %eax,%eax
418392:	5a                   	pop    %edx
418393:	59                   	pop    %ecx
418394:	59                   	pop    %ecx
418395:	64 89 10             	mov    %edx,%fs:(%eax)
418398:	68 ad 83 41 00       	push   $0x4183ad
41839d:	8d 45 fc             	lea    -0x4(%ebp),%eax
4183a0:	e8 ab bc fe ff       	call   0x404050
4183a5:	c3                   	ret
4183a6:	e9 a9 b6 fe ff       	jmp    0x403a54
4183ab:	eb f0                	jmp    0x41839d
4183ad:	8b c3                	mov    %ebx,%eax
4183af:	5e                   	pop    %esi
4183b0:	5b                   	pop    %ebx
4183b1:	8b e5                	mov    %ebp,%esp
4183b3:	5d                   	pop    %ebp
4183b4:	c3                   	ret
4183b5:	8d 40 00             	lea    0x0(%eax),%eax
4183b8:	55                   	push   %ebp
4183b9:	8b ec                	mov    %esp,%ebp
4183bb:	83 c4 f4             	add    $0xfffffff4,%esp
4183be:	89 55 f8             	mov    %edx,-0x8(%ebp)
4183c1:	89 45 fc             	mov    %eax,-0x4(%ebp)
4183c4:	a1 48 58 47 00       	mov    0x475848,%eax
4183c9:	8b 10                	mov    (%eax),%edx
4183cb:	ff 52 14             	call   *0x14(%edx)
4183ce:	33 c0                	xor    %eax,%eax
4183d0:	55                   	push   %ebp
4183d1:	68 66 84 41 00       	push   $0x418466
4183d6:	64 ff 30             	push   %fs:(%eax)
4183d9:	64 89 20             	mov    %esp,%fs:(%eax)
4183dc:	8b 45 fc             	mov    -0x4(%ebp),%eax
4183df:	66 8b 40 1c          	mov    0x1c(%eax),%ax
4183e3:	66 23 05 74 84 41 00 	and    0x418474,%ax
4183ea:	66 8b 15 78 84 41 00 	mov    0x418478,%dx
4183f1:	66 3b d0             	cmp    %ax,%dx
4183f4:	0f 94 45 f6          	sete   -0xa(%ebp)
4183f8:	80 7d f6 00          	cmpb   $0x0,-0xa(%ebp)
4183fc:	74 05                	je     0x418403
4183fe:	e8 29 fe ff ff       	call   0x41822c
418403:	33 c0                	xor    %eax,%eax
418405:	55                   	push   %ebp
418406:	68 47 84 41 00       	push   $0x418447
41840b:	64 ff 30             	push   %fs:(%eax)
41840e:	64 89 20             	mov    %esp,%fs:(%eax)
418411:	55                   	push   %ebp
418412:	8b 45 fc             	mov    -0x4(%ebp),%eax
418415:	e8 ee ad fe ff       	call   0x403208
41841a:	e8 f1 fe ff ff       	call   0x418310
41841f:	59                   	pop    %ecx
418420:	88 45 f7             	mov    %al,-0x9(%ebp)
418423:	80 7d f6 00          	cmpb   $0x0,-0xa(%ebp)
418427:	74 05                	je     0x41842e
418429:	e8 56 fe ff ff       	call   0x418284
41842e:	33 c0                	xor    %eax,%eax
418430:	5a                   	pop    %edx
418431:	59                   	pop    %ecx
418432:	59                   	pop    %ecx
418433:	64 89 10             	mov    %edx,%fs:(%eax)
418436:	68 4e 84 41 00       	push   $0x41844e
41843b:	80 7d f6 00          	cmpb   $0x0,-0xa(%ebp)
41843f:	74 05                	je     0x418446
418441:	e8 6e fe ff ff       	call   0x4182b4
418446:	c3                   	ret
418447:	e9 08 b6 fe ff       	jmp    0x403a54
41844c:	eb ed                	jmp    0x41843b
41844e:	33 c0                	xor    %eax,%eax
418450:	5a                   	pop    %edx
418451:	59                   	pop    %ecx
418452:	59                   	pop    %ecx
418453:	64 89 10             	mov    %edx,%fs:(%eax)
418456:	68 6d 84 41 00       	push   $0x41846d
41845b:	a1 48 58 47 00       	mov    0x475848,%eax
418460:	8b 10                	mov    (%eax),%edx