4152e5:	8d 4c 24 10          	lea    0x10(%esp),%ecx
4152e9:	89 44 24 54          	mov    %eax,0x54(%esp)
4152ed:	89 44 24 58          	mov    %eax,0x58(%esp)
4152f1:	6a 02                	push   $0x2
4152f3:	58                   	pop    %eax
4152f4:	89 44 24 2c          	mov    %eax,0x2c(%esp)
4152f8:	89 44 24 30          	mov    %eax,0x30(%esp)
4152fc:	8b 02                	mov    (%edx),%eax
4152fe:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4152ff:	51                   	push   %ecx
415300:	52                   	push   %edx
415301:	a5                   	movsl  %ds:(%esi),%es:(%edi)
415302:	a5                   	movsl  %ds:(%esi),%es:(%edi)
415303:	a5                   	movsl  %ds:(%esi),%es:(%edi)
415304:	8b 70 24             	mov    0x24(%eax),%esi
415307:	8b ce                	mov    %esi,%ecx
415309:	c7 44 24 50 01 00 00 	movl   $0x1,0x50(%esp)
415310:	00
415311:	c7 44 24 54 10 00 00 	movl   $0x10,0x54(%esp)
415318:	00
415319:	ff 15 20 a5 43 00    	call   *0x43a520
41531f:	ff d6                	call   *%esi
415321:	85 c0                	test   %eax,%eax
415323:	78 34                	js     0x415359
415325:	6a 40                	push   $0x40
415327:	58                   	pop    %eax
415328:	66 89 44 24 18       	mov    %ax,0x18(%esp)
41532d:	8b cb                	mov    %ebx,%ecx
41532f:	8b 44 24 10          	mov    0x10(%esp),%eax
415333:	89 44 24 20          	mov    %eax,0x20(%esp)
415337:	8b 44 24 14          	mov    0x14(%esp),%eax
41533b:	89 44 24 24          	mov    %eax,0x24(%esp)
41533f:	8d 44 24 28          	lea    0x28(%esp),%eax
415343:	50                   	push   %eax
415344:	e8 87 d7 ff ff       	call   0x412ad0
415349:	85 c0                	test   %eax,%eax
41534b:	78 0c                	js     0x415359
41534d:	8d 44 24 18          	lea    0x18(%esp),%eax
415351:	8b cb                	mov    %ebx,%ecx
415353:	50                   	push   %eax
415354:	e8 27 a5 ff ff       	call   0x40f880
415359:	8b 4c 24 5c          	mov    0x5c(%esp),%ecx
41535d:	5f                   	pop    %edi
41535e:	5e                   	pop    %esi
41535f:	5b                   	pop    %ebx
415360:	33 cc                	xor    %esp,%ecx
415362:	e8 59 54 00 00       	call   0x41a7c0
415367:	8b e5                	mov    %ebp,%esp
415369:	5d                   	pop    %ebp
41536a:	c3                   	ret
41536b:	8b ff                	mov    %edi,%edi
41536d:	55                   	push   %ebp
41536e:	8b ec                	mov    %esp,%ebp
415370:	83 ec 4c             	sub    $0x4c,%esp
415373:	a1 08 85 43 00       	mov    0x438508,%eax
415378:	33 c5                	xor    %ebp,%eax
41537a:	89 45 fc             	mov    %eax,-0x4(%ebp)
41537d:	53                   	push   %ebx
41537e:	56                   	push   %esi
41537f:	57                   	push   %edi
415380:	33 db                	xor    %ebx,%ebx
415382:	89 4d c4             	mov    %ecx,-0x3c(%ebp)
415385:	6a 02                	push   $0x2
415387:	58                   	pop    %eax
415388:	89 45 cc             	mov    %eax,-0x34(%ebp)
41538b:	8d 7d d8             	lea    -0x28(%ebp),%edi
41538e:	89 45 d0             	mov    %eax,-0x30(%ebp)
415391:	be 10 5f 40 00       	mov    $0x405f10,%esi
415396:	8b 02                	mov    (%edx),%eax
415398:	89 5d c8             	mov    %ebx,-0x38(%ebp)
41539b:	89 5d d4             	mov    %ebx,-0x2c(%ebp)
41539e:	89 5d f0             	mov    %ebx,-0x10(%ebp)
4153a1:	89 5d f4             	mov    %ebx,-0xc(%ebp)
4153a4:	89 5d f8             	mov    %ebx,-0x8(%ebp)
4153a7:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4153a8:	52                   	push   %edx
4153a9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4153aa:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4153ab:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4153ac:	8b 70 44             	mov    0x44(%eax),%esi
4153af:	33 ff                	xor    %edi,%edi
4153b1:	47                   	inc    %edi
4153b2:	c7 45 ec 16 00 00 00 	movl   $0x16,-0x14(%ebp)
4153b9:	8b ce                	mov    %esi,%ecx
4153bb:	89 7d e8             	mov    %edi,-0x18(%ebp)
4153be:	ff 15 20 a5 43 00    	call   *0x43a520
4153c4:	ff d6                	call   *%esi
4153c6:	85 c0                	test   %eax,%eax
4153c8:	78 2c                	js     0x4153f6
4153ca:	6a 14                	push   $0x14
4153cc:	59                   	pop    %ecx
4153cd:	66 89 4d b4          	mov    %cx,-0x4c(%ebp)
4153d1:	75 34                	jne    0x415407
4153d3:	8b 75 c4             	mov    -0x3c(%ebp),%esi
4153d6:	8d 45 c8             	lea    -0x38(%ebp),%eax
4153d9:	50                   	push   %eax
4153da:	8b ce                	mov    %esi,%ecx
4153dc:	89 7d bc             	mov    %edi,-0x44(%ebp)
4153df:	89 5d c0             	mov    %ebx,-0x40(%ebp)
4153e2:	e8 e9 d6 ff ff       	call   0x412ad0
4153e7:	85 c0                	test   %eax,%eax
4153e9:	78 0b                	js     0x4153f6
4153eb:	8d 45 b4             	lea    -0x4c(%ebp),%eax
4153ee:	8b ce                	mov    %esi,%ecx
4153f0:	50                   	push   %eax
4153f1:	e8 8a a4 ff ff       	call   0x40f880
4153f6:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4153f9:	33 c0                	xor    %eax,%eax
4153fb:	5f                   	pop    %edi
4153fc:	5e                   	pop    %esi
4153fd:	33 cd                	xor    %ebp,%ecx
4153ff:	5b                   	pop    %ebx
415400:	e8 bb 53 00 00       	call   0x41a7c0
415405:	c9                   	leave
415406:	c3                   	ret
415407:	8b fb                	mov    %ebx,%edi
415409:	eb c8                	jmp    0x4153d3
41540b:	8b ff                	mov    %edi,%edi
41540d:	55                   	push   %ebp
41540e:	8b ec                	mov    %esp,%ebp
415410:	83 ec 48             	sub    $0x48,%esp
415413:	a1 08 85 43 00       	mov    0x438508,%eax
415418:	33 c5                	xor    %ebp,%eax
41541a:	89 45 fc             	mov    %eax,-0x4(%ebp)
41541d:	53                   	push   %ebx
41541e:	56                   	push   %esi
41541f:	57                   	push   %edi
415420:	33 c0                	xor    %eax,%eax
415422:	8d 7d d8             	lea    -0x28(%ebp),%edi
415425:	89 45 c8             	mov    %eax,-0x38(%ebp)
415428:	be 10 5f 40 00       	mov    $0x405f10,%esi
41542d:	89 45 d4             	mov    %eax,-0x2c(%ebp)
415430:	8b d9                	mov    %ecx,%ebx
415432:	89 45 f0             	mov    %eax,-0x10(%ebp)
415435:	89 45 f4             	mov    %eax,-0xc(%ebp)
415438:	89 45 f8             	mov    %eax,-0x8(%ebp)
41543b:	6a 02                	push   $0x2
41543d:	58                   	pop    %eax
41543e:	89 45 cc             	mov    %eax,-0x34(%ebp)
415441:	89 45 d0             	mov    %eax,-0x30(%ebp)
415444:	8b 02                	mov    (%edx),%eax
415446:	a5                   	movsl  %ds:(%esi),%es:(%edi)
415447:	52                   	push   %edx
415448:	a5                   	movsl  %ds:(%esi),%es:(%edi)
415449:	a5                   	movsl  %ds:(%esi),%es:(%edi)
41544a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
41544b:	8b 70 1c             	mov    0x1c(%eax),%esi
41544e:	8b ce                	mov    %esi,%ecx
415450:	c7 45 e8 01 00 00 00 	movl   $0x1,-0x18(%ebp)
415457:	c7 45 ec 07 00 00 00 	movl   $0x7,-0x14(%ebp)
41545e:	ff 15 20 a5 43 00    	call   *0x43a520
415464:	ff d6                	call   *%esi
415466:	85 c0                	test   %eax,%eax
415468:	78 29                	js     0x415493
41546a:	6a 0b                	push   $0xb
41546c:	59                   	pop    %ecx
41546d:	66 89 4d b8          	mov    %cx,-0x48(%ebp)
415471:	74 2f                	je     0x4154a2
415473:	33 c0                	xor    %eax,%eax
415475:	66 89 45 c0          	mov    %ax,-0x40(%ebp)
415479:	8b cb                	mov    %ebx,%ecx
41547b:	8d 45 c8             	lea    -0x38(%ebp),%eax
41547e:	50                   	push   %eax
41547f:	e8 4c d6 ff ff       	call   0x412ad0
415484:	85 c0                	test   %eax,%eax
415486:	78 0b                	js     0x415493
415488:	8d 45 b8             	lea    -0x48(%ebp),%eax
41548b:	8b cb                	mov    %ebx,%ecx
41548d:	50                   	push   %eax
41548e:	e8 ed a3 ff ff       	call   0x40f880
415493:	8b 4d fc             	mov    -0x4(%ebp),%ecx
415496:	5f                   	pop    %edi
415497:	5e                   	pop    %esi
415498:	33 cd                	xor    %ebp,%ecx
41549a:	5b                   	pop    %ebx
41549b:	e8 20 53 00 00       	call   0x41a7c0
4154a0:	c9                   	leave
4154a1:	c3                   	ret
4154a2:	83 c8 ff             	or     $0xffffffff,%eax
4154a5:	eb ce                	jmp    0x415475
4154a7:	8b ff                	mov    %edi,%edi
4154a9:	55                   	push   %ebp
4154aa:	8b ec                	mov    %esp,%ebp
4154ac:	51                   	push   %ecx
4154ad:	56                   	push   %esi
4154ae:	8b f1                	mov    %ecx,%esi
4154b0:	6a ff                	push   $0xffffffff
4154b2:	ff 75 08             	push   0x8(%ebp)
4154b5:	89 75 fc             	mov    %esi,-0x4(%ebp)
4154b8:	8d 46 10             	lea    0x10(%esi),%eax
4154bb:	c7 06 80 11 40 00    	movl   $0x401180,(%esi)
4154c1:	89 46 04             	mov    %eax,0x4(%esi)
4154c4:	c7 46 08 21 00 00 00 	movl   $0x21,0x8(%esi)
4154cb:	e8 00 e8 ff ff       	call   0x413cd0
4154d0:	c7 06 64 11 40 00    	movl   $0x401164,(%esi)
4154d6:	8b c6                	mov    %esi,%eax
4154d8:	5e                   	pop    %esi
4154d9:	c9                   	leave
4154da:	c2 04 00             	ret    $0x4
4154dd:	68 b4 0b 00 00       	push   $0xbb4
4154e2:	b8 34 ea 41 00       	mov    $0x41ea34,%eax
4154e7:	e8 55 59 00 00       	call   0x41ae41
4154ec:	8b da                	mov    %edx,%ebx
4154ee:	89 8d 60 f4 ff ff    	mov    %ecx,-0xba0(%ebp)
4154f4:	6a 34                	push   $0x34
4154f6:	8d 85 bc f7 ff ff    	lea    -0x844(%ebp),%eax
4154fc:	6a 00                	push   $0x0
4154fe:	50                   	push   %eax
4154ff:	e8 5d 8b 00 00       	call   0x41e061
415504:	83 c4 0c             	add    $0xc,%esp
415507:	8d bd cc f7 ff ff    	lea    -0x834(%ebp),%edi
41550d:	be 10 5f 40 00       	mov    $0x405f10,%esi
415512:	8d 8d 28 f6 ff ff    	lea    -0x9d8(%ebp),%ecx
415518:	6a 02                	push   $0x2
41551a:	58                   	pop    %eax
41551b:	89 85 c0 f7 ff ff    	mov    %eax,-0x840(%ebp)
415521:	89 85 c4 f7 ff ff    	mov    %eax,-0x83c(%ebp)
415527:	a5                   	movsl  %ds:(%esi),%es:(%edi)
415528:	a5                   	movsl  %ds:(%esi),%es:(%edi)
415529:	a5                   	movsl  %ds:(%esi),%es:(%edi)
41552a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
41552b:	c7 85 dc f7 ff ff 01 	movl   $0x1,-0x824(%ebp)
415532:	00 00 00
415535:	c7 85 e0 f7 ff ff 04 	movl   $0x4,-0x820(%ebp)
41553c:	00 00 00
41553f:	e8 0e e7 ff ff       	call   0x413c52
415544:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
415548:	8d 85 5c f4 ff ff    	lea    -0xba4(%ebp),%eax
41554e:	8b 33                	mov    (%ebx),%esi
415550:	50                   	push   %eax
415551:	68 00 04 00 00       	push   $0x400
415556:	8d 85 f0 f7 ff ff    	lea    -0x810(%ebp),%eax
41555c:	8b 4e 18             	mov    0x18(%esi),%ecx
41555f:	50                   	push   %eax
415560:	53                   	push   %ebx
415561:	ff 15 20 a5 43 00    	call   *0x43a520
415567:	ff 56 18             	call   *0x18(%esi)
41556a:	8b f0                	mov    %eax,%esi
41556c:	81 fe 25 0d 04 80    	cmp    $0x80040d25,%esi
415572:	74 32                	je     0x4155a6
415574:	85 f6                	test   %esi,%esi
415576:	0f 89 e8 cf 00 00    	jns    0x422564
41557c:	8b 85 2c f6 ff ff    	mov    -0x9d4(%ebp),%eax
415582:	c7 85 28 f6 ff ff e0 	movl   $0x4011e0,-0x9d8(%ebp)
415589:	11 40 00
41558c:	85 c0                	test   %eax,%eax
41558e:	74 0e                	je     0x41559e
415590:	8d 8d 38 f6 ff ff    	lea    -0x9c8(%ebp),%ecx
415596:	3b c1                	cmp    %ecx,%eax
415598:	0f 85 0e d1 00 00    	jne    0x4226ac
41559e:	8b c6                	mov    %esi,%eax
4155a0:	e8 4b 58 00 00       	call   0x41adf0
4155a5:	c3                   	ret
4155a6:	8b bd 60 f4 ff ff    	mov    -0xba0(%ebp),%edi
4155ac:	8d 85 50 f4 ff ff    	lea    -0xbb0(%ebp),%eax
4155b2:	50                   	push   %eax
4155b3:	8d 9f 1c 04 00 00    	lea    0x41c(%edi),%ebx
4155b9:	8b cb                	mov    %ebx,%ecx
4155bb:	e8 9c 81 ff ff       	call   0x40d75c
4155c0:	8b c8                	mov    %eax,%ecx
4155c2:	8b 41 08             	mov    0x8(%ecx),%eax
4155c5:	8b 51 04             	mov    0x4(%ecx),%edx
4155c8:	8b 09                	mov    (%ecx),%ecx
4155ca:	52                   	push   %edx
4155cb:	8b 40 04             	mov    0x4(%eax),%eax
4155ce:	6a 00                	push   $0x0
4155d0:	8d 0c 48             	lea    (%eax,%ecx,2),%ecx
4155d3:	8b 85 28 f6 ff ff    	mov    -0x9d8(%ebp),%eax
4155d9:	51                   	push   %ecx
4155da:	8b 70 10             	mov    0x10(%eax),%esi
4155dd:	81 fe a0 36 41 00    	cmp    $0x4136a0,%esi
4155e3:	0f 85 3c cf 00 00    	jne    0x422525
4155e9:	8d 8d 28 f6 ff ff    	lea    -0x9d8(%ebp),%ecx
4155ef:	e8 ac e0 ff ff       	call   0x4136a0
4155f4:	8b 85 28 f6 ff ff    	mov    -0x9d8(%ebp),%eax
4155fa:	6a ff                	push   $0xffffffff
4155fc:	ff b5 34 f6 ff ff    	push   -0x9cc(%ebp)
415602:	8b 70 10             	mov    0x10(%eax),%esi
415605:	68 84 41 40 00       	push   $0x404184
41560a:	81 fe a0 36 41 00    	cmp    $0x4136a0,%esi
415610:	0f 85 24 cf 00 00    	jne    0x42253a
415616:	8d 8d 28 f6 ff ff    	lea    -0x9d8(%ebp),%ecx
41561c:	e8 7f e0 ff ff       	call   0x4136a0
415621:	8d 85 50 f4 ff ff    	lea    -0xbb0(%ebp),%eax
415627:	8b cb                	mov    %ebx,%ecx
415629:	50                   	push   %eax
41562a:	e8 6c 59 ff ff       	call   0x40af9b
41562f:	8b c8                	mov    %eax,%ecx
415631:	8b 41 08             	mov    0x8(%ecx),%eax
415634:	8b 51 04             	mov    0x4(%ecx),%edx
415637:	8b 09                	mov    (%ecx),%ecx
415639:	52                   	push   %edx
41563a:	8b 40 04             	mov    0x4(%eax),%eax
41563d:	ff b5 34 f6 ff ff    	push   -0x9cc(%ebp)
415643:	8d 0c 48             	lea    (%eax,%ecx,2),%ecx
415646:	8b 85 28 f6 ff ff    	mov    -0x9d8(%ebp),%eax
41564c:	51                   	push   %ecx
41564d:	8b 70 10             	mov    0x10(%eax),%esi
415650:	81 fe a0 36 41 00    	cmp    $0x4136a0,%esi
415656:	0f 85 f3 ce 00 00    	jne    0x42254f
41565c:	8d 8d 28 f6 ff ff    	lea    -0x9d8(%ebp),%ecx
415662:	e8 39 e0 ff ff       	call   0x4136a0
415667:	33 db                	xor    %ebx,%ebx
415669:	6a 1f                	push   $0x1f
41566b:	58                   	pop    %eax
41566c:	53                   	push   %ebx
41566d:	8d 8d 28 f6 ff ff    	lea    -0x9d8(%ebp),%ecx
415673:	66 89 85 40 f4 ff ff 	mov    %ax,-0xbc0(%ebp)
41567a:	e8 09 ec ff ff       	call   0x414288
41567f:	89 85 48 f4 ff ff    	mov    %eax,-0xbb8(%ebp)
415685:	8b cf                	mov    %edi,%ecx
415687:	8d 85 bc f7 ff ff    	lea    -0x844(%ebp),%eax
41568d:	50                   	push   %eax
41568e:	e8 3d d4 ff ff       	call   0x412ad0
415693:	8b f0                	mov    %eax,%esi
415695:	85 f6                	test   %esi,%esi
415697:	0f 88 df fe ff ff    	js     0x41557c
41569d:	8d 85 40 f4 ff ff    	lea    -0xbc0(%ebp),%eax
4156a3:	8b cf                	mov    %edi,%ecx
4156a5:	50                   	push   %eax
4156a6:	e8 d5 a1 ff ff       	call   0x40f880
4156ab:	8b f0                	mov    %eax,%esi
4156ad:	e9 ca fe ff ff       	jmp    0x41557c
4156b2:	cc                   	int3
4156b3:	cc                   	int3
4156b4:	cc                   	int3
4156b5:	cc                   	int3
4156b6:	cc                   	int3
4156b7:	cc                   	int3
4156b8:	cc                   	int3
4156b9:	cc                   	int3
4156ba:	cc                   	int3
4156bb:	cc                   	int3
4156bc:	cc                   	int3
4156bd:	cc                   	int3
4156be:	cc                   	int3
4156bf:	cc                   	int3
4156c0:	8b ff                	mov    %edi,%edi
4156c2:	55                   	push   %ebp
4156c3:	8b ec                	mov    %esp,%ebp
4156c5:	51                   	push   %ecx
4156c6:	56                   	push   %esi
4156c7:	8b 75 08             	mov    0x8(%ebp),%esi
4156ca:	8b 46 2c             	mov    0x2c(%esi),%eax
4156cd:	3b 46 28             	cmp    0x28(%esi),%eax
4156d0:	0f 84 0b d0 00 00    	je     0x4226e1
4156d6:	6b c8 50             	imul   $0x50,%eax,%ecx
4156d9:	8b 46 3c             	mov    0x3c(%esi),%eax
4156dc:	83 7c 01 08 02       	cmpl   $0x2,0x8(%ecx,%eax,1)
4156e1:	0f 85 fa cf 00 00    	jne    0x4226e1