404071:	74 0a                	je     0x40407d
404073:	83 fb 0b             	cmp    $0xb,%ebx
404076:	74 05                	je     0x40407d
404078:	83 fb 04             	cmp    $0x4,%ebx
40407b:	75 1b                	jne    0x404098
40407d:	8b 4f 60             	mov    0x60(%edi),%ecx
404080:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
404083:	89 47 60             	mov    %eax,0x60(%edi)
404086:	83 fb 08             	cmp    $0x8,%ebx
404089:	75 40                	jne    0x4040cb
40408b:	8b 4f 64             	mov    0x64(%edi),%ecx
40408e:	89 4d d0             	mov    %ecx,-0x30(%ebp)
404091:	c7 47 64 8c 00 00 00 	movl   $0x8c,0x64(%edi)
404098:	83 fb 08             	cmp    $0x8,%ebx
40409b:	75 2e                	jne    0x4040cb
40409d:	8b 0d d0 f0 41 00    	mov    0x41f0d0,%ecx
4040a3:	89 4d dc             	mov    %ecx,-0x24(%ebp)
4040a6:	8b 0d d4 f0 41 00    	mov    0x41f0d4,%ecx
4040ac:	8b 15 d0 f0 41 00    	mov    0x41f0d0,%edx
4040b2:	03 ca                	add    %edx,%ecx
4040b4:	39 4d dc             	cmp    %ecx,-0x24(%ebp)
4040b7:	7d 19                	jge    0x4040d2
4040b9:	8b 4d dc             	mov    -0x24(%ebp),%ecx
4040bc:	6b c9 0c             	imul   $0xc,%ecx,%ecx
4040bf:	8b 57 5c             	mov    0x5c(%edi),%edx
4040c2:	89 44 11 08          	mov    %eax,0x8(%ecx,%edx,1)
4040c6:	ff 45 dc             	incl   -0x24(%ebp)
4040c9:	eb db                	jmp    0x4040a6
4040cb:	e8 55 e5 ff ff       	call   0x402625
4040d0:	89 06                	mov    %eax,(%esi)
4040d2:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4040d9:	e8 15 00 00 00       	call   0x4040f3
4040de:	83 fb 08             	cmp    $0x8,%ebx
4040e1:	75 1f                	jne    0x404102
4040e3:	ff 77 64             	push   0x64(%edi)
4040e6:	53                   	push   %ebx
4040e7:	ff 55 e0             	call   *-0x20(%ebp)
4040ea:	59                   	pop    %ecx
4040eb:	eb 19                	jmp    0x404106
4040ed:	8b 5d 08             	mov    0x8(%ebp),%ebx
4040f0:	8b 7d d8             	mov    -0x28(%ebp),%edi
4040f3:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
4040f7:	74 08                	je     0x404101
4040f9:	6a 00                	push   $0x0
4040fb:	e8 fd f8 ff ff       	call   0x4039fd
404100:	59                   	pop    %ecx
404101:	c3                   	ret
404102:	53                   	push   %ebx
404103:	ff 55 e0             	call   *-0x20(%ebp)
404106:	59                   	pop    %ecx
404107:	83 fb 08             	cmp    $0x8,%ebx
40410a:	74 0a                	je     0x404116
40410c:	83 fb 0b             	cmp    $0xb,%ebx
40410f:	74 05                	je     0x404116
404111:	83 fb 04             	cmp    $0x4,%ebx
404114:	75 11                	jne    0x404127
404116:	8b 45 d4             	mov    -0x2c(%ebp),%eax
404119:	89 47 60             	mov    %eax,0x60(%edi)
40411c:	83 fb 08             	cmp    $0x8,%ebx
40411f:	75 06                	jne    0x404127
404121:	8b 45 d0             	mov    -0x30(%ebp),%eax
404124:	89 47 64             	mov    %eax,0x64(%edi)
404127:	33 c0                	xor    %eax,%eax
404129:	e8 97 ea ff ff       	call   0x402bc5
40412e:	c3                   	ret
40412f:	8b ff                	mov    %edi,%edi
404131:	55                   	push   %ebp
404132:	8b ec                	mov    %esp,%ebp
404134:	8b 45 08             	mov    0x8(%ebp),%eax
404137:	a3 a0 0f 43 00       	mov    %eax,0x430fa0
40413c:	5d                   	pop    %ebp
40413d:	c3                   	ret
40413e:	8b ff                	mov    %edi,%edi
404140:	55                   	push   %ebp
404141:	8b ec                	mov    %esp,%ebp
404143:	8b 45 08             	mov    0x8(%ebp),%eax
404146:	a3 ac 0f 43 00       	mov    %eax,0x430fac
40414b:	5d                   	pop    %ebp
40414c:	c3                   	ret
40414d:	8b ff                	mov    %edi,%edi
40414f:	55                   	push   %ebp
404150:	8b ec                	mov    %esp,%ebp
404152:	8b 45 08             	mov    0x8(%ebp),%eax
404155:	a3 b0 0f 43 00       	mov    %eax,0x430fb0
40415a:	5d                   	pop    %ebp
40415b:	c3                   	ret
40415c:	6a 10                	push   $0x10
40415e:	68 88 e7 41 00       	push   $0x41e788
404163:	e8 18 ea ff ff       	call   0x402b80
404168:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40416c:	ff 75 0c             	push   0xc(%ebp)
40416f:	ff 75 08             	push   0x8(%ebp)
404172:	ff 15 f0 d0 41 00    	call   *0x41d0f0
404178:	89 45 e4             	mov    %eax,-0x1c(%ebp)
40417b:	eb 2f                	jmp    0x4041ac
40417d:	8b 45 ec             	mov    -0x14(%ebp),%eax
404180:	8b 00                	mov    (%eax),%eax
404182:	8b 00                	mov    (%eax),%eax
404184:	89 45 e0             	mov    %eax,-0x20(%ebp)
404187:	33 c9                	xor    %ecx,%ecx
404189:	3d 17 00 00 c0       	cmp    $0xc0000017,%eax
40418e:	0f 94 c1             	sete   %cl
404191:	8b c1                	mov    %ecx,%eax
404193:	c3                   	ret
404194:	8b 65 e8             	mov    -0x18(%ebp),%esp
404197:	81 7d e0 17 00 00 c0 	cmpl   $0xc0000017,-0x20(%ebp)
40419e:	75 08                	jne    0x4041a8
4041a0:	6a 08                	push   $0x8
4041a2:	ff 15 c0 d0 41 00    	call   *0x41d0c0
4041a8:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
4041ac:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4041b3:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4041b6:	e8 0a ea ff ff       	call   0x402bc5
4041bb:	c3                   	ret
4041bc:	8b ff                	mov    %edi,%edi
4041be:	55                   	push   %ebp
4041bf:	8b ec                	mov    %esp,%ebp
4041c1:	8b 45 08             	mov    0x8(%ebp),%eax
4041c4:	a3 b4 0f 43 00       	mov    %eax,0x430fb4
4041c9:	5d                   	pop    %ebp
4041ca:	c3                   	ret
4041cb:	8b ff                	mov    %edi,%edi
4041cd:	55                   	push   %ebp
4041ce:	8b ec                	mov    %esp,%ebp
4041d0:	ff 35 b4 0f 43 00    	push   0x430fb4
4041d6:	e8 53 e4 ff ff       	call   0x40262e
4041db:	59                   	pop    %ecx
4041dc:	85 c0                	test   %eax,%eax
4041de:	74 0f                	je     0x4041ef
4041e0:	ff 75 08             	push   0x8(%ebp)
4041e3:	ff d0                	call   *%eax
4041e5:	59                   	pop    %ecx
4041e6:	85 c0                	test   %eax,%eax
4041e8:	74 05                	je     0x4041ef
4041ea:	33 c0                	xor    %eax,%eax
4041ec:	40                   	inc    %eax
4041ed:	5d                   	pop    %ebp
4041ee:	c3                   	ret
4041ef:	33 c0                	xor    %eax,%eax
4041f1:	5d                   	pop    %ebp
4041f2:	c3                   	ret
4041f3:	8b ff                	mov    %edi,%edi
4041f5:	55                   	push   %ebp
4041f6:	8b ec                	mov    %esp,%ebp
4041f8:	83 ec 14             	sub    $0x14,%esp
4041fb:	53                   	push   %ebx
4041fc:	56                   	push   %esi
4041fd:	57                   	push   %edi
4041fe:	e8 22 e4 ff ff       	call   0x402625
404203:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
404207:	83 3d b8 0f 43 00 00 	cmpl   $0x0,0x430fb8
40420e:	8b d8                	mov    %eax,%ebx
404210:	0f 85 8e 00 00 00    	jne    0x4042a4
404216:	68 6c da 41 00       	push   $0x41da6c
40421b:	ff 15 ec d0 41 00    	call   *0x41d0ec
404221:	8b f8                	mov    %eax,%edi
404223:	85 ff                	test   %edi,%edi
404225:	0f 84 2a 01 00 00    	je     0x404355
40422b:	8b 35 20 d0 41 00    	mov    0x41d020,%esi
404231:	68 60 da 41 00       	push   $0x41da60
404236:	57                   	push   %edi
404237:	ff d6                	call   *%esi
404239:	85 c0                	test   %eax,%eax
40423b:	0f 84 14 01 00 00    	je     0x404355
404241:	50                   	push   %eax
404242:	e8 6c e3 ff ff       	call   0x4025b3
404247:	c7 04 24 50 da 41 00 	movl   $0x41da50,(%esp)
40424e:	57                   	push   %edi
40424f:	a3 b8 0f 43 00       	mov    %eax,0x430fb8
404254:	ff d6                	call   *%esi
404256:	50                   	push   %eax
404257:	e8 57 e3 ff ff       	call   0x4025b3
40425c:	c7 04 24 3c da 41 00 	movl   $0x41da3c,(%esp)
404263:	57                   	push   %edi
404264:	a3 bc 0f 43 00       	mov    %eax,0x430fbc
404269:	ff d6                	call   *%esi
40426b:	50                   	push   %eax
40426c:	e8 42 e3 ff ff       	call   0x4025b3
404271:	c7 04 24 20 da 41 00 	movl   $0x41da20,(%esp)
404278:	57                   	push   %edi
404279:	a3 c0 0f 43 00       	mov    %eax,0x430fc0
40427e:	ff d6                	call   *%esi
404280:	50                   	push   %eax
404281:	e8 2d e3 ff ff       	call   0x4025b3
404286:	59                   	pop    %ecx
404287:	a3 c8 0f 43 00       	mov    %eax,0x430fc8
40428c:	85 c0                	test   %eax,%eax
40428e:	74 14                	je     0x4042a4
404290:	68 08 da 41 00       	push   $0x41da08
404295:	57                   	push   %edi
404296:	ff d6                	call   *%esi
404298:	50                   	push   %eax
404299:	e8 15 e3 ff ff       	call   0x4025b3
40429e:	59                   	pop    %ecx
40429f:	a3 c4 0f 43 00       	mov    %eax,0x430fc4
4042a4:	a1 c4 0f 43 00       	mov    0x430fc4,%eax
4042a9:	3b c3                	cmp    %ebx,%eax
4042ab:	74 4f                	je     0x4042fc
4042ad:	39 1d c8 0f 43 00    	cmp    %ebx,0x430fc8
4042b3:	74 47                	je     0x4042fc
4042b5:	50                   	push   %eax
4042b6:	e8 73 e3 ff ff       	call   0x40262e
4042bb:	ff 35 c8 0f 43 00    	push   0x430fc8
4042c1:	8b f0                	mov    %eax,%esi
4042c3:	e8 66 e3 ff ff       	call   0x40262e
4042c8:	59                   	pop    %ecx
4042c9:	59                   	pop    %ecx
4042ca:	8b f8                	mov    %eax,%edi
4042cc:	85 f6                	test   %esi,%esi
4042ce:	74 2c                	je     0x4042fc
4042d0:	85 ff                	test   %edi,%edi
4042d2:	74 28                	je     0x4042fc
4042d4:	ff d6                	call   *%esi
4042d6:	85 c0                	test   %eax,%eax
4042d8:	74 19                	je     0x4042f3
4042da:	8d 4d f8             	lea    -0x8(%ebp),%ecx
4042dd:	51                   	push   %ecx
4042de:	6a 0c                	push   $0xc
4042e0:	8d 4d ec             	lea    -0x14(%ebp),%ecx
4042e3:	51                   	push   %ecx
4042e4:	6a 01                	push   $0x1
4042e6:	50                   	push   %eax
4042e7:	ff d7                	call   *%edi
4042e9:	85 c0                	test   %eax,%eax
4042eb:	74 06                	je     0x4042f3
4042ed:	f6 45 f4 01          	testb  $0x1,-0xc(%ebp)
4042f1:	75 09                	jne    0x4042fc
4042f3:	81 4d 10 00 00 20 00 	orl    $0x200000,0x10(%ebp)
4042fa:	eb 39                	jmp    0x404335
4042fc:	a1 bc 0f 43 00       	mov    0x430fbc,%eax
404301:	3b c3                	cmp    %ebx,%eax
404303:	74 30                	je     0x404335
404305:	50                   	push   %eax
404306:	e8 23 e3 ff ff       	call   0x40262e
40430b:	59                   	pop    %ecx
40430c:	85 c0                	test   %eax,%eax
40430e:	74 25                	je     0x404335
404310:	ff d0                	call   *%eax
404312:	89 45 fc             	mov    %eax,-0x4(%ebp)
404315:	85 c0                	test   %eax,%eax
404317:	74 1c                	je     0x404335
404319:	a1 c0 0f 43 00       	mov    0x430fc0,%eax
40431e:	3b c3                	cmp    %ebx,%eax
404320:	74 13                	je     0x404335
404322:	50                   	push   %eax
404323:	e8 06 e3 ff ff       	call   0x40262e
404328:	59                   	pop    %ecx
404329:	85 c0                	test   %eax,%eax
40432b:	74 08                	je     0x404335
40432d:	ff 75 fc             	push   -0x4(%ebp)
404330:	ff d0                	call   *%eax
404332:	89 45 fc             	mov    %eax,-0x4(%ebp)
404335:	ff 35 b8 0f 43 00    	push   0x430fb8
40433b:	e8 ee e2 ff ff       	call   0x40262e
404340:	59                   	pop    %ecx
404341:	85 c0                	test   %eax,%eax
404343:	74 10                	je     0x404355
404345:	ff 75 10             	push   0x10(%ebp)
404348:	ff 75 0c             	push   0xc(%ebp)
40434b:	ff 75 08             	push   0x8(%ebp)
40434e:	ff 75 fc             	push   -0x4(%ebp)
404351:	ff d0                	call   *%eax
404353:	eb 02                	jmp    0x404357
404355:	33 c0                	xor    %eax,%eax
404357:	5f                   	pop    %edi
404358:	5e                   	pop    %esi
404359:	5b                   	pop    %ebx
40435a:	c9                   	leave
40435b:	c3                   	ret
40435c:	8b ff                	mov    %edi,%edi
40435e:	55                   	push   %ebp
40435f:	8b ec                	mov    %esp,%ebp
404361:	8b 45 08             	mov    0x8(%ebp),%eax
404364:	53                   	push   %ebx
404365:	33 db                	xor    %ebx,%ebx
404367:	56                   	push   %esi
404368:	57                   	push   %edi
404369:	3b c3                	cmp    %ebx,%eax
40436b:	74 07                	je     0x404374
40436d:	8b 7d 0c             	mov    0xc(%ebp),%edi
404370:	3b fb                	cmp    %ebx,%edi
404372:	77 1b                	ja     0x40438f
404374:	e8 d3 ea ff ff       	call   0x402e4c
404379:	6a 16                	push   $0x16
40437b:	5e                   	pop    %esi
40437c:	89 30                	mov    %esi,(%eax)
40437e:	53                   	push   %ebx
40437f:	53                   	push   %ebx
404380:	53                   	push   %ebx
404381:	53                   	push   %ebx
404382:	53                   	push   %ebx
404383:	e8 b9 f8 ff ff       	call   0x403c41
404388:	83 c4 14             	add    $0x14,%esp
40438b:	8b c6                	mov    %esi,%eax
40438d:	eb 3c                	jmp    0x4043cb
40438f:	8b 75 10             	mov    0x10(%ebp),%esi
404392:	3b f3                	cmp    %ebx,%esi
404394:	75 04                	jne    0x40439a
404396:	88 18                	mov    %bl,(%eax)
404398:	eb da                	jmp    0x404374
40439a:	8b d0                	mov    %eax,%edx
40439c:	38 1a                	cmp    %bl,(%edx)
40439e:	74 04                	je     0x4043a4
4043a0:	42                   	inc    %edx
4043a1:	4f                   	dec    %edi
4043a2:	75 f8                	jne    0x40439c
4043a4:	3b fb                	cmp    %ebx,%edi
4043a6:	74 ee                	je     0x404396
4043a8:	8a 0e                	mov    (%esi),%cl
4043aa:	88 0a                	mov    %cl,(%edx)
4043ac:	42                   	inc    %edx
4043ad:	46                   	inc    %esi
4043ae:	3a cb                	cmp    %bl,%cl
4043b0:	74 03                	je     0x4043b5
4043b2:	4f                   	dec    %edi
4043b3:	75 f3                	jne    0x4043a8
4043b5:	3b fb                	cmp    %ebx,%edi
4043b7:	75 10                	jne    0x4043c9
4043b9:	88 18                	mov    %bl,(%eax)
4043bb:	e8 8c ea ff ff       	call   0x402e4c
4043c0:	6a 22                	push   $0x22
4043c2:	59                   	pop    %ecx
4043c3:	89 08                	mov    %ecx,(%eax)
4043c5:	8b f1                	mov    %ecx,%esi
4043c7:	eb b5                	jmp    0x40437e
4043c9:	33 c0                	xor    %eax,%eax
4043cb:	5f                   	pop    %edi
4043cc:	5e                   	pop    %esi
4043cd:	5b                   	pop    %ebx
4043ce:	5d                   	pop    %ebp
4043cf:	c3                   	ret
4043d0:	8b ff                	mov    %edi,%edi
4043d2:	55                   	push   %ebp
4043d3:	8b ec                	mov    %esp,%ebp
4043d5:	53                   	push   %ebx
4043d6:	56                   	push   %esi
4043d7:	8b 75 08             	mov    0x8(%ebp),%esi
4043da:	33 db                	xor    %ebx,%ebx
4043dc:	57                   	push   %edi
4043dd:	39 5d 14             	cmp    %ebx,0x14(%ebp)
4043e0:	75 10                	jne    0x4043f2
4043e2:	3b f3                	cmp    %ebx,%esi
4043e4:	75 10                	jne    0x4043f6
4043e6:	39 5d 0c             	cmp    %ebx,0xc(%ebp)
4043e9:	75 12                	jne    0x4043fd
4043eb:	33 c0                	xor    %eax,%eax
4043ed:	5f                   	pop    %edi
4043ee:	5e                   	pop    %esi
4043ef:	5b                   	pop    %ebx
4043f0:	5d                   	pop    %ebp