4041bc:	8b 69 08             	mov    0x8(%ecx),%ebp
4041bf:	89 68 08             	mov    %ebp,0x8(%eax)
4041c2:	8b 69 0c             	mov    0xc(%ecx),%ebp
4041c5:	89 68 0c             	mov    %ebp,0xc(%eax)
4041c8:	8b 69 10             	mov    0x10(%ecx),%ebp
4041cb:	89 68 10             	mov    %ebp,0x10(%eax)
4041ce:	89 51 04             	mov    %edx,0x4(%ecx)
4041d1:	89 71 08             	mov    %esi,0x8(%ecx)
4041d4:	8b 71 14             	mov    0x14(%ecx),%esi
4041d7:	89 79 0c             	mov    %edi,0xc(%ecx)
4041da:	89 59 10             	mov    %ebx,0x10(%ecx)
4041dd:	8b 50 14             	mov    0x14(%eax),%edx
4041e0:	89 70 14             	mov    %esi,0x14(%eax)
4041e3:	8b 71 18             	mov    0x18(%ecx),%esi
4041e6:	89 51 14             	mov    %edx,0x14(%ecx)
4041e9:	8b 50 18             	mov    0x18(%eax),%edx
4041ec:	89 70 18             	mov    %esi,0x18(%eax)
4041ef:	89 51 18             	mov    %edx,0x18(%ecx)
4041f2:	3b 4c 24 14          	cmp    0x14(%esp),%ecx
4041f6:	75 a8                	jne    0x4041a0
4041f8:	5f                   	pop    %edi
4041f9:	5e                   	pop    %esi
4041fa:	5d                   	pop    %ebp
4041fb:	5b                   	pop    %ebx
4041fc:	c3                   	ret
4041fd:	cc                   	int3
4041fe:	ff 25 2c a0 41 00    	jmp    *0x41a02c
404204:	8b ff                	mov    %edi,%edi
404206:	55                   	push   %ebp
404207:	8b ec                	mov    %esp,%ebp
404209:	8b 45 14             	mov    0x14(%ebp),%eax
40420c:	56                   	push   %esi
40420d:	57                   	push   %edi
40420e:	85 c0                	test   %eax,%eax
404210:	75 11                	jne    0x404223
404212:	e8 14 1d 00 00       	call   0x405f2b
404217:	8b 70 08             	mov    0x8(%eax),%esi
40421a:	e8 e6 1c 00 00       	call   0x405f05
40421f:	8b f8                	mov    %eax,%edi
404221:	eb 05                	jmp    0x404228
404223:	8b 30                	mov    (%eax),%esi
404225:	8b 78 04             	mov    0x4(%eax),%edi
404228:	85 f6                	test   %esi,%esi
40422a:	75 18                	jne    0x404244
40422c:	66 8b 45 0c          	mov    0xc(%ebp),%ax
404230:	b9 ff 00 00 00       	mov    $0xff,%ecx
404235:	66 3b c1             	cmp    %cx,%ax
404238:	77 3f                	ja     0x404279
40423a:	8b 4d 08             	mov    0x8(%ebp),%ecx
40423d:	88 01                	mov    %al,(%ecx)
40423f:	33 c0                	xor    %eax,%eax
404241:	40                   	inc    %eax
404242:	eb 43                	jmp    0x404287
404244:	83 65 14 00          	andl   $0x0,0x14(%ebp)
404248:	57                   	push   %edi
404249:	e8 28 07 00 00       	call   0x404976
40424e:	59                   	pop    %ecx
40424f:	8d 4d 14             	lea    0x14(%ebp),%ecx
404252:	51                   	push   %ecx
404253:	6a 00                	push   $0x0
404255:	50                   	push   %eax
404256:	e8 8e 1c 00 00       	call   0x405ee9
40425b:	59                   	pop    %ecx
40425c:	50                   	push   %eax
40425d:	ff 75 08             	push   0x8(%ebp)
404260:	8d 45 0c             	lea    0xc(%ebp),%eax
404263:	6a 01                	push   $0x1
404265:	50                   	push   %eax
404266:	6a 00                	push   $0x0
404268:	57                   	push   %edi
404269:	ff 15 70 a0 41 00    	call   *0x41a070
40426f:	85 c0                	test   %eax,%eax
404271:	74 06                	je     0x404279
404273:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
404277:	74 0e                	je     0x404287
404279:	e8 57 18 00 00       	call   0x405ad5
40427e:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
404284:	83 c8 ff             	or     $0xffffffff,%eax
404287:	5f                   	pop    %edi
404288:	5e                   	pop    %esi
404289:	5d                   	pop    %ebp
40428a:	c3                   	ret
40428b:	8b ff                	mov    %edi,%edi
40428d:	56                   	push   %esi
40428e:	e8 98 1c 00 00       	call   0x405f2b
404293:	8b 70 08             	mov    0x8(%eax),%esi
404296:	e8 6a 1c 00 00       	call   0x405f05
40429b:	8b d0                	mov    %eax,%edx
40429d:	8b c6                	mov    %esi,%eax
40429f:	5e                   	pop    %esi
4042a0:	c3                   	ret
4042a1:	8b ff                	mov    %edi,%edi
4042a3:	55                   	push   %ebp
4042a4:	8b ec                	mov    %esp,%ebp
4042a6:	56                   	push   %esi
4042a7:	57                   	push   %edi
4042a8:	8b f9                	mov    %ecx,%edi
4042aa:	8b 77 20             	mov    0x20(%edi),%esi
4042ad:	eb 0f                	jmp    0x4042be
4042af:	ff 76 04             	push   0x4(%esi)
4042b2:	57                   	push   %edi
4042b3:	ff 75 08             	push   0x8(%ebp)
4042b6:	ff 56 08             	call   *0x8(%esi)
4042b9:	8b 36                	mov    (%esi),%esi
4042bb:	83 c4 0c             	add    $0xc,%esp
4042be:	85 f6                	test   %esi,%esi
4042c0:	75 ed                	jne    0x4042af
4042c2:	5f                   	pop    %edi
4042c3:	5e                   	pop    %esi
4042c4:	5d                   	pop    %ebp
4042c5:	c2 04 00             	ret    $0x4
4042c8:	8b ff                	mov    %edi,%edi
4042ca:	55                   	push   %ebp
4042cb:	8b ec                	mov    %esp,%ebp
4042cd:	56                   	push   %esi
4042ce:	8b 75 08             	mov    0x8(%ebp),%esi
4042d1:	57                   	push   %edi
4042d2:	6a 00                	push   $0x0
4042d4:	8b ce                	mov    %esi,%ecx
4042d6:	e8 c6 ff ff ff       	call   0x4042a1
4042db:	8b 46 1c             	mov    0x1c(%esi),%eax
4042de:	85 c0                	test   %eax,%eax
4042e0:	74 0f                	je     0x4042f1
4042e2:	8b 38                	mov    (%eax),%edi
4042e4:	50                   	push   %eax
4042e5:	e8 4c 10 00 00       	call   0x405336
4042ea:	59                   	pop    %ecx
4042eb:	8b c7                	mov    %edi,%eax
4042ed:	85 ff                	test   %edi,%edi
4042ef:	75 f1                	jne    0x4042e2
4042f1:	8b 46 20             	mov    0x20(%esi),%eax
4042f4:	83 66 1c 00          	andl   $0x0,0x1c(%esi)
4042f8:	85 c0                	test   %eax,%eax
4042fa:	74 0f                	je     0x40430b
4042fc:	8b 38                	mov    (%eax),%edi
4042fe:	50                   	push   %eax
4042ff:	e8 32 10 00 00       	call   0x405336
404304:	59                   	pop    %ecx
404305:	8b c7                	mov    %edi,%eax
404307:	85 ff                	test   %edi,%edi
404309:	75 f1                	jne    0x4042fc
40430b:	83 66 20 00          	andl   $0x0,0x20(%esi)
40430f:	5f                   	pop    %edi
404310:	5e                   	pop    %esi
404311:	5d                   	pop    %ebp
404312:	c3                   	ret
404313:	8b ff                	mov    %edi,%edi
404315:	55                   	push   %ebp
404316:	8b ec                	mov    %esp,%ebp
404318:	56                   	push   %esi
404319:	8b 75 08             	mov    0x8(%ebp),%esi
40431c:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
404320:	76 15                	jbe    0x404337
404322:	8b 46 04             	mov    0x4(%esi),%eax
404325:	fe 88 f4 05 43 00    	decb   0x4305f4(%eax)
40432b:	8b 46 04             	mov    0x4(%esi),%eax
40432e:	80 b8 f4 05 43 00 00 	cmpb   $0x0,0x4305f4(%eax)
404335:	7f 15                	jg     0x40434c
404337:	56                   	push   %esi
404338:	e8 8b ff ff ff       	call   0x4042c8
40433d:	59                   	pop    %ecx
40433e:	8b 4e 24             	mov    0x24(%esi),%ecx
404341:	85 c9                	test   %ecx,%ecx
404343:	74 07                	je     0x40434c
404345:	6a 01                	push   $0x1
404347:	e8 44 ec ff ff       	call   0x402f90
40434c:	5e                   	pop    %esi
40434d:	5d                   	pop    %ebp
40434e:	c3                   	ret
40434f:	8b ff                	mov    %edi,%edi
404351:	55                   	push   %ebp
404352:	8b ec                	mov    %esp,%ebp
404354:	ff 75 08             	push   0x8(%ebp)
404357:	e8 cd 1e 00 00       	call   0x406229
40435c:	59                   	pop    %ecx
40435d:	85 c0                	test   %eax,%eax
40435f:	74 06                	je     0x404367
404361:	5d                   	pop    %ebp
404362:	e9 84 1c 00 00       	jmp    0x405feb
404367:	5d                   	pop    %ebp
404368:	c3                   	ret
404369:	8b 49 04             	mov    0x4(%ecx),%ecx
40436c:	e8 ef cf ff ff       	call   0x401360
404371:	85 c0                	test   %eax,%eax
404373:	74 08                	je     0x40437d
404375:	8b 10                	mov    (%eax),%edx
404377:	6a 01                	push   $0x1
404379:	8b c8                	mov    %eax,%ecx
40437b:	ff 12                	call   *(%edx)
40437d:	c3                   	ret
40437e:	8b ff                	mov    %edi,%edi
404380:	55                   	push   %ebp
404381:	8b ec                	mov    %esp,%ebp
404383:	56                   	push   %esi
404384:	8b f1                	mov    %ecx,%esi
404386:	e8 de ff ff ff       	call   0x404369
40438b:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
40438f:	74 07                	je     0x404398
404391:	56                   	push   %esi
404392:	e8 9f 0f 00 00       	call   0x405336
404397:	59                   	pop    %ecx
404398:	8b c6                	mov    %esi,%eax
40439a:	5e                   	pop    %esi
40439b:	5d                   	pop    %ebp
40439c:	c2 04 00             	ret    $0x4
40439f:	8b ff                	mov    %edi,%edi
4043a1:	55                   	push   %ebp
4043a2:	8b ec                	mov    %esp,%ebp
4043a4:	8b 45 08             	mov    0x8(%ebp),%eax
4043a7:	8b 08                	mov    (%eax),%ecx
4043a9:	85 c9                	test   %ecx,%ecx
4043ab:	74 11                	je     0x4043be
4043ad:	e8 ae cf ff ff       	call   0x401360
4043b2:	85 c0                	test   %eax,%eax
4043b4:	74 08                	je     0x4043be
4043b6:	8b 10                	mov    (%eax),%edx
4043b8:	6a 01                	push   $0x1
4043ba:	8b c8                	mov    %eax,%ecx
4043bc:	ff 12                	call   *(%edx)
4043be:	5d                   	pop    %ebp
4043bf:	c3                   	ret
4043c0:	8b ff                	mov    %edi,%edi
4043c2:	55                   	push   %ebp
4043c3:	8b ec                	mov    %esp,%ebp
4043c5:	51                   	push   %ecx
4043c6:	6a 00                	push   $0x0
4043c8:	8d 4d fc             	lea    -0x4(%ebp),%ecx
4043cb:	e8 3e 03 00 00       	call   0x40470e
4043d0:	68 04 06 43 00       	push   $0x430604
4043d5:	e8 c5 ff ff ff       	call   0x40439f
4043da:	83 25 04 06 43 00 00 	andl   $0x0,0x430604
4043e1:	59                   	pop    %ecx
4043e2:	8d 4d fc             	lea    -0x4(%ebp),%ecx
4043e5:	e8 4c 03 00 00       	call   0x404736
4043ea:	c9                   	leave
4043eb:	c3                   	ret
4043ec:	a1 04 06 43 00       	mov    0x430604,%eax
4043f1:	c3                   	ret
4043f2:	8b ff                	mov    %edi,%edi
4043f4:	55                   	push   %ebp
4043f5:	8b ec                	mov    %esp,%ebp
4043f7:	80 3d 28 06 43 00 00 	cmpb   $0x0,0x430628
4043fe:	75 12                	jne    0x404412
404400:	68 c0 43 40 00       	push   $0x4043c0
404405:	c6 05 28 06 43 00 01 	movb   $0x1,0x430628
40440c:	e8 83 08 00 00       	call   0x404c94
404411:	59                   	pop    %ecx
404412:	8b 45 08             	mov    0x8(%ebp),%eax
404415:	a3 04 06 43 00       	mov    %eax,0x430604
40441a:	5d                   	pop    %ebp
40441b:	c3                   	ret
40441c:	6a 04                	push   $0x4
40441e:	b8 a8 96 41 00       	mov    $0x4196a8,%eax
404423:	e8 0d 22 00 00       	call   0x406635
404428:	6a 00                	push   $0x0
40442a:	8d 4d f0             	lea    -0x10(%ebp),%ecx
40442d:	e8 dc 02 00 00       	call   0x40470e
404432:	8b 7d 08             	mov    0x8(%ebp),%edi
404435:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
404439:	8b 77 0c             	mov    0xc(%edi),%esi
40443c:	eb 1f                	jmp    0x40445d
40443e:	8b 47 08             	mov    0x8(%edi),%eax
404441:	4e                   	dec    %esi
404442:	8d 04 b0             	lea    (%eax,%esi,4),%eax
404445:	83 38 00             	cmpl   $0x0,(%eax)
404448:	74 13                	je     0x40445d
40444a:	8b 08                	mov    (%eax),%ecx
40444c:	e8 0f cf ff ff       	call   0x401360
404451:	85 c0                	test   %eax,%eax
404453:	74 08                	je     0x40445d
404455:	8b 10                	mov    (%eax),%edx
404457:	6a 01                	push   $0x1
404459:	8b c8                	mov    %eax,%ecx
40445b:	ff 12                	call   *(%edx)
40445d:	85 f6                	test   %esi,%esi
40445f:	77 dd                	ja     0x40443e
404461:	ff 77 08             	push   0x8(%edi)
404464:	e8 b7 0b 00 00       	call   0x405020
404469:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40446d:	59                   	pop    %ecx
40446e:	8d 4d f0             	lea    -0x10(%ebp),%ecx
404471:	e8 c0 02 00 00       	call   0x404736
404476:	e8 23 22 00 00       	call   0x40669e
40447b:	c3                   	ret
40447c:	8b ff                	mov    %edi,%edi
40447e:	55                   	push   %ebp
40447f:	8b ec                	mov    %esp,%ebp
404481:	51                   	push   %ecx
404482:	6a 00                	push   $0x0
404484:	8d 4d fc             	lea    -0x4(%ebp),%ecx
404487:	e8 82 02 00 00       	call   0x40470e
40448c:	eb 10                	jmp    0x40449e
40448e:	8b c8                	mov    %eax,%ecx
404490:	8b 00                	mov    (%eax),%eax
404492:	6a 01                	push   $0x1
404494:	a3 00 06 43 00       	mov    %eax,0x430600
404499:	e8 e0 fe ff ff       	call   0x40437e
40449e:	a1 00 06 43 00       	mov    0x430600,%eax
4044a3:	85 c0                	test   %eax,%eax
4044a5:	75 e7                	jne    0x40448e
4044a7:	8d 4d fc             	lea    -0x4(%ebp),%ecx
4044aa:	e8 87 02 00 00       	call   0x404736
4044af:	c9                   	leave
4044b0:	c3                   	ret
4044b1:	8b ff                	mov    %edi,%edi
4044b3:	55                   	push   %ebp
4044b4:	8b ec                	mov    %esp,%ebp
4044b6:	83 3d 00 06 43 00 00 	cmpl   $0x0,0x430600
4044bd:	75 0b                	jne    0x4044ca
4044bf:	68 7c 44 40 00       	push   $0x40447c
4044c4:	e8 86 fe ff ff       	call   0x40434f
4044c9:	59                   	pop    %ecx
4044ca:	6a 08                	push   $0x8
4044cc:	e8 ac 13 00 00       	call   0x40587d
4044d1:	59                   	pop    %ecx
4044d2:	85 c0                	test   %eax,%eax
4044d4:	74 10                	je     0x4044e6
4044d6:	8b 0d 00 06 43 00    	mov    0x430600,%ecx
4044dc:	89 08                	mov    %ecx,(%eax)
4044de:	8b 4d 08             	mov    0x8(%ebp),%ecx
4044e1:	89 48 04             	mov    %ecx,0x4(%eax)
4044e4:	eb 02                	jmp    0x4044e8
4044e6:	33 c0                	xor    %eax,%eax
4044e8:	a3 00 06 43 00       	mov    %eax,0x430600
4044ed:	5d                   	pop    %ebp
4044ee:	c3                   	ret
4044ef:	8b ff                	mov    %edi,%edi
4044f1:	55                   	push   %ebp
4044f2:	8b ec                	mov    %esp,%ebp
4044f4:	8b 45 08             	mov    0x8(%ebp),%eax
4044f7:	83 78 50 00          	cmpl   $0x0,0x50(%eax)
4044fb:	76 18                	jbe    0x404515
4044fd:	83 78 54 10          	cmpl   $0x10,0x54(%eax)
404501:	72 05                	jb     0x404508
404503:	8b 40 40             	mov    0x40(%eax),%eax
404506:	eb 03                	jmp    0x40450b
404508:	83 c0 40             	add    $0x40,%eax
40450b:	50                   	push   %eax
40450c:	6a 00                	push   $0x0
40450e:	e8 e1 31 00 00       	call   0x4076f4
404513:	59                   	pop    %ecx
404514:	59                   	pop    %ecx
404515:	5d                   	pop    %ebp
404516:	c3                   	ret
404517:	6a 04                	push   $0x4
404519:	b8 cb 96 41 00       	mov    $0x4196cb,%eax
40451e:	e8 12 21 00 00       	call   0x406635
404523:	8b f1                	mov    %ecx,%esi
404525:	89 75 f0             	mov    %esi,-0x10(%ebp)
404528:	c7 46 04 01 00 00 00 	movl   $0x1,0x4(%esi)