45a18c:	2b 0d e8 c3 4a 00    	sub    0x4ac3e8,%ecx
45a192:	6a 00                	push   $0x0
45a194:	51                   	push   %ecx
45a195:	8d 45 ec             	lea    -0x14(%ebp),%eax
45a198:	50                   	push   %eax
45a199:	ff 15 1c 06 4b 00    	call   *0x4b061c
45a19f:	6a 01                	push   $0x1
45a1a1:	8d 45 ec             	lea    -0x14(%ebp),%eax
45a1a4:	50                   	push   %eax
45a1a5:	ff 77 1c             	push   0x1c(%edi)
45a1a8:	ff 15 14 06 4b 00    	call   *0x4b0614
45a1ae:	ff 75 08             	push   0x8(%ebp)
45a1b1:	8d 45 ec             	lea    -0x14(%ebp),%eax
45a1b4:	56                   	push   %esi
45a1b5:	2b 35 e8 c3 4a 00    	sub    0x4ac3e8,%esi
45a1bb:	6a 00                	push   $0x0
45a1bd:	56                   	push   %esi
45a1be:	50                   	push   %eax
45a1bf:	ff 15 1c 06 4b 00    	call   *0x4b061c
45a1c5:	6a 01                	push   $0x1
45a1c7:	8d 45 ec             	lea    -0x14(%ebp),%eax
45a1ca:	50                   	push   %eax
45a1cb:	ff 77 1c             	push   0x1c(%edi)
45a1ce:	ff 15 14 06 4b 00    	call   *0x4b0614
45a1d4:	8b 4d fc             	mov    -0x4(%ebp),%ecx
45a1d7:	8b 45 08             	mov    0x8(%ebp),%eax
45a1da:	3b c3                	cmp    %ebx,%eax
45a1dc:	74 4e                	je     0x45a22c
45a1de:	f6 47 7d 08          	testb  $0x8,0x7d(%edi)
45a1e2:	74 48                	je     0x45a22c
45a1e4:	8b 35 1c 06 4b 00    	mov    0x4b061c,%esi
45a1ea:	50                   	push   %eax
45a1eb:	2b 05 ec c3 4a 00    	sub    0x4ac3ec,%eax
45a1f1:	51                   	push   %ecx
45a1f2:	50                   	push   %eax
45a1f3:	6a 00                	push   $0x0
45a1f5:	8d 45 ec             	lea    -0x14(%ebp),%eax
45a1f8:	50                   	push   %eax
45a1f9:	ff d6                	call   *%esi
45a1fb:	6a 01                	push   $0x1
45a1fd:	8d 45 ec             	lea    -0x14(%ebp),%eax
45a200:	50                   	push   %eax
45a201:	ff 77 1c             	push   0x1c(%edi)
45a204:	ff 15 14 06 4b 00    	call   *0x4b0614
45a20a:	53                   	push   %ebx
45a20b:	ff 75 fc             	push   -0x4(%ebp)
45a20e:	2b 1d ec c3 4a 00    	sub    0x4ac3ec,%ebx
45a214:	8d 45 ec             	lea    -0x14(%ebp),%eax
45a217:	53                   	push   %ebx
45a218:	6a 00                	push   $0x0
45a21a:	50                   	push   %eax
45a21b:	ff d6                	call   *%esi
45a21d:	6a 01                	push   $0x1
45a21f:	8d 45 ec             	lea    -0x14(%ebp),%eax
45a222:	50                   	push   %eax
45a223:	ff 77 1c             	push   0x1c(%edi)
45a226:	ff 15 14 06 4b 00    	call   *0x4b0614
45a22c:	5b                   	pop    %ebx
45a22d:	5f                   	pop    %edi
45a22e:	5e                   	pop    %esi
45a22f:	c9                   	leave
45a230:	c2 04 00             	ret    $0x4
45a233:	56                   	push   %esi
45a234:	8b f1                	mov    %ecx,%esi
45a236:	e8 c4 a9 fe ff       	call   0x444bff
45a23b:	83 f8 ff             	cmp    $0xffffffff,%eax
45a23e:	75 04                	jne    0x45a244
45a240:	0b c0                	or     %eax,%eax
45a242:	eb 44                	jmp    0x45a288
45a244:	f6 46 7c 10          	testb  $0x10,0x7c(%esi)
45a248:	74 09                	je     0x45a253
45a24a:	6a 01                	push   $0x1
45a24c:	8b ce                	mov    %esi,%ecx
45a24e:	e8 23 07 fe ff       	call   0x43a976
45a253:	57                   	push   %edi
45a254:	ff 76 1c             	push   0x1c(%esi)
45a257:	ff 15 d8 07 4b 00    	call   *0x4b07d8
45a25d:	50                   	push   %eax
45a25e:	e8 3f aa fe ff       	call   0x444ca2
45a263:	8b f8                	mov    %eax,%edi
45a265:	8b 07                	mov    (%edi),%eax
45a267:	8b cf                	mov    %edi,%ecx
45a269:	ff 90 20 01 00 00    	call   *0x120(%eax)
45a26f:	85 c0                	test   %eax,%eax
45a271:	74 12                	je     0x45a285
45a273:	56                   	push   %esi
45a274:	8d 8f 80 00 00 00    	lea    0x80(%edi),%ecx
45a27a:	89 be 84 00 00 00    	mov    %edi,0x84(%esi)
45a280:	e8 ac 24 fe ff       	call   0x43c731
45a285:	33 c0                	xor    %eax,%eax
45a287:	5f                   	pop    %edi
45a288:	5e                   	pop    %esi
45a289:	c2 04 00             	ret    $0x4
45a28c:	56                   	push   %esi
45a28d:	8b f1                	mov    %ecx,%esi
45a28f:	e8 e2 65 00 00       	call   0x460876
45a294:	85 c0                	test   %eax,%eax
45a296:	8b ce                	mov    %esi,%ecx
45a298:	75 07                	jne    0x45a2a1
45a29a:	e8 60 a9 fe ff       	call   0x444bff
45a29f:	eb 08                	jmp    0x45a2a9
45a2a1:	e8 bb bc fe ff       	call   0x445f61
45a2a6:	6a 03                	push   $0x3
45a2a8:	58                   	pop    %eax
45a2a9:	5e                   	pop    %esi
45a2aa:	c2 0c 00             	ret    $0xc
45a2ad:	b8 06 40 48 00       	mov    $0x484006,%eax
45a2b2:	e8 c5 d9 fb ff       	call   0x417c7c
45a2b7:	83 ec 34             	sub    $0x34,%esp
45a2ba:	56                   	push   %esi
45a2bb:	8b f1                	mov    %ecx,%esi
45a2bd:	57                   	push   %edi
45a2be:	56                   	push   %esi
45a2bf:	8d 4d c0             	lea    -0x40(%ebp),%ecx
45a2c2:	e8 d4 51 ff ff       	call   0x44f49b
45a2c7:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
45a2cb:	8d 45 d4             	lea    -0x2c(%ebp),%eax
45a2ce:	50                   	push   %eax
45a2cf:	ff 76 1c             	push   0x1c(%esi)
45a2d2:	ff 15 8c 08 4b 00    	call   *0x4b088c
45a2d8:	8d 45 e4             	lea    -0x1c(%ebp),%eax
45a2db:	50                   	push   %eax
45a2dc:	ff 76 1c             	push   0x1c(%esi)
45a2df:	ff 15 40 07 4b 00    	call   *0x4b0740
45a2e5:	8d 45 e4             	lea    -0x1c(%ebp),%eax
45a2e8:	50                   	push   %eax
45a2e9:	8b ce                	mov    %esi,%ecx
45a2eb:	e8 2e 4d ff ff       	call   0x44f01e
45a2f0:	8b 45 e8             	mov    -0x18(%ebp),%eax
45a2f3:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
45a2f6:	8b 3d 30 07 4b 00    	mov    0x4b0730,%edi
45a2fc:	f7 d8                	neg    %eax
45a2fe:	50                   	push   %eax
45a2ff:	f7 d9                	neg    %ecx
45a301:	51                   	push   %ecx
45a302:	8d 45 d4             	lea    -0x2c(%ebp),%eax
45a305:	50                   	push   %eax
45a306:	ff d7                	call   *%edi
45a308:	8d 45 d4             	lea    -0x2c(%ebp),%eax
45a30b:	50                   	push   %eax
45a30c:	8d 4d c0             	lea    -0x40(%ebp),%ecx
45a30f:	e8 d9 45 ff ff       	call   0x44e8ed
45a314:	8b 45 e8             	mov    -0x18(%ebp),%eax
45a317:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
45a31a:	f7 d8                	neg    %eax
45a31c:	50                   	push   %eax
45a31d:	f7 d9                	neg    %ecx
45a31f:	51                   	push   %ecx
45a320:	8d 45 e4             	lea    -0x1c(%ebp),%eax
45a323:	50                   	push   %eax
45a324:	ff d7                	call   *%edi
45a326:	8b 06                	mov    (%esi),%eax
45a328:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
45a32b:	51                   	push   %ecx
45a32c:	8d 4d c0             	lea    -0x40(%ebp),%ecx
45a32f:	51                   	push   %ecx
45a330:	8b ce                	mov    %esi,%ecx
45a332:	ff 90 44 01 00 00    	call   *0x144(%eax)
45a338:	8d 45 e4             	lea    -0x1c(%ebp),%eax
45a33b:	50                   	push   %eax
45a33c:	8d 4d c0             	lea    -0x40(%ebp),%ecx
45a33f:	e8 2d 46 ff ff       	call   0x44e971
45a344:	6a 00                	push   $0x0
45a346:	ff 75 c4             	push   -0x3c(%ebp)
45a349:	6a 14                	push   $0x14
45a34b:	ff 76 1c             	push   0x1c(%esi)
45a34e:	ff 15 98 08 4b 00    	call   *0x4b0898
45a354:	8b 06                	mov    (%esi),%eax
45a356:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
45a359:	51                   	push   %ecx
45a35a:	8d 4d c0             	lea    -0x40(%ebp),%ecx
45a35d:	51                   	push   %ecx
45a35e:	8b ce                	mov    %esi,%ecx
45a360:	ff 90 48 01 00 00    	call   *0x148(%eax)
45a366:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
45a36a:	8d 4d c0             	lea    -0x40(%ebp),%ecx
45a36d:	e8 84 51 ff ff       	call   0x44f4f6
45a372:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45a375:	5f                   	pop    %edi
45a376:	5e                   	pop    %esi
45a377:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
45a37e:	c9                   	leave
45a37f:	c3                   	ret
45a380:	55                   	push   %ebp
45a381:	8b ec                	mov    %esp,%ebp
45a383:	56                   	push   %esi
45a384:	8b 75 0c             	mov    0xc(%ebp),%esi
45a387:	57                   	push   %edi
45a388:	8d 45 0c             	lea    0xc(%ebp),%eax
45a38b:	8b f9                	mov    %ecx,%edi
45a38d:	50                   	push   %eax
45a38e:	8b ce                	mov    %esi,%ecx
45a390:	e8 90 ae fe ff       	call   0x445225
45a395:	85 c0                	test   %eax,%eax
45a397:	74 05                	je     0x45a39e
45a399:	8b 45 0c             	mov    0xc(%ebp),%eax
45a39c:	eb 34                	jmp    0x45a3d2
45a39e:	85 f6                	test   %esi,%esi
45a3a0:	74 03                	je     0x45a3a5
45a3a2:	8b 76 1c             	mov    0x1c(%esi),%esi
45a3a5:	ff 35 0c c4 4a 00    	push   0x4ac40c
45a3ab:	8b 45 08             	mov    0x8(%ebp),%eax
45a3ae:	ff 35 fc c3 4a 00    	push   0x4ac3fc
45a3b4:	ff 75 10             	push   0x10(%ebp)
45a3b7:	56                   	push   %esi
45a3b8:	ff 70 04             	push   0x4(%eax)
45a3bb:	e8 f2 98 fe ff       	call   0x443cb2
45a3c0:	85 c0                	test   %eax,%eax
45a3c2:	75 09                	jne    0x45a3cd
45a3c4:	8b cf                	mov    %edi,%ecx
45a3c6:	e8 34 a8 fe ff       	call   0x444bff
45a3cb:	eb 05                	jmp    0x45a3d2
45a3cd:	a1 fc c3 4a 00       	mov    0x4ac3fc,%eax
45a3d2:	5f                   	pop    %edi
45a3d3:	5e                   	pop    %esi
45a3d4:	5d                   	pop    %ebp
45a3d5:	c2 0c 00             	ret    $0xc
45a3d8:	55                   	push   %ebp
45a3d9:	8b ec                	mov    %esp,%ebp
45a3db:	56                   	push   %esi
45a3dc:	8b f1                	mov    %ecx,%esi
45a3de:	83 be 88 00 00 00 00 	cmpl   $0x0,0x88(%esi)
45a3e5:	74 31                	je     0x45a418
45a3e7:	8b 06                	mov    (%esi),%eax
45a3e9:	6a 00                	push   $0x0
45a3eb:	ff 75 10             	push   0x10(%ebp)
45a3ee:	ff 75 0c             	push   0xc(%ebp)
45a3f1:	ff 50 6c             	call   *0x6c(%eax)
45a3f4:	83 f8 ff             	cmp    $0xffffffff,%eax
45a3f7:	75 1f                	jne    0x45a418
45a3f9:	8d 45 0c             	lea    0xc(%ebp),%eax
45a3fc:	50                   	push   %eax
45a3fd:	ff 76 1c             	push   0x1c(%esi)
45a400:	ff 15 64 06 4b 00    	call   *0x4b0664
45a406:	ff 75 10             	push   0x10(%ebp)
45a409:	8b 8e 8c 00 00 00    	mov    0x8c(%esi),%ecx
45a40f:	ff 75 0c             	push   0xc(%ebp)
45a412:	8b 01                	mov    (%ecx),%eax
45a414:	ff 10                	call   *(%eax)
45a416:	eb 07                	jmp    0x45a41f
45a418:	8b ce                	mov    %esi,%ecx
45a41a:	e8 e0 a7 fe ff       	call   0x444bff
45a41f:	5e                   	pop    %esi
45a420:	5d                   	pop    %ebp
45a421:	c2 0c 00             	ret    $0xc
45a424:	56                   	push   %esi
45a425:	8b f1                	mov    %ecx,%esi
45a427:	83 be 88 00 00 00 00 	cmpl   $0x0,0x88(%esi)
45a42e:	74 21                	je     0x45a451
45a430:	8b 06                	mov    (%esi),%eax
45a432:	6a 00                	push   $0x0
45a434:	ff 74 24 14          	push   0x14(%esp)
45a438:	ff 74 24 14          	push   0x14(%esp)
45a43c:	ff 50 6c             	call   *0x6c(%eax)
45a43f:	83 f8 ff             	cmp    $0xffffffff,%eax
45a442:	75 0d                	jne    0x45a451
45a444:	8b 8e 8c 00 00 00    	mov    0x8c(%esi),%ecx
45a44a:	8b 01                	mov    (%ecx),%eax
45a44c:	ff 50 08             	call   *0x8(%eax)
45a44f:	eb 07                	jmp    0x45a458
45a451:	8b ce                	mov    %esi,%ecx
45a453:	e8 a7 a7 fe ff       	call   0x444bff
45a458:	5e                   	pop    %esi
45a459:	c2 0c 00             	ret    $0xc
45a45c:	55                   	push   %ebp
45a45d:	8b ec                	mov    %esp,%ebp
45a45f:	83 ec 1c             	sub    $0x1c,%esp
45a462:	8b 01                	mov    (%ecx),%eax
45a464:	56                   	push   %esi
45a465:	8b 75 0c             	mov    0xc(%ebp),%esi
45a468:	56                   	push   %esi
45a469:	89 4d fc             	mov    %ecx,-0x4(%ebp)
45a46c:	ff 90 54 01 00 00    	call   *0x154(%eax)
45a472:	a9 00 00 00 10       	test   $0x10000000,%eax
45a477:	89 45 0c             	mov    %eax,0xc(%ebp)
45a47a:	0f 84 0f 01 00 00    	je     0x45a58f
45a480:	f6 c4 f0             	test   $0xf0,%ah
45a483:	0f 84 06 01 00 00    	je     0x45a58f
45a489:	53                   	push   %ebx
45a48a:	57                   	push   %edi
45a48b:	8d 46 04             	lea    0x4(%esi),%eax
45a48e:	50                   	push   %eax
45a48f:	8d 45 e4             	lea    -0x1c(%ebp),%eax
45a492:	50                   	push   %eax
45a493:	ff 15 44 07 4b 00    	call   *0x4b0744
45a499:	8b 7d ec             	mov    -0x14(%ebp),%edi
45a49c:	8b 5d f0             	mov    -0x10(%ebp),%ebx
45a49f:	2b 7d e4             	sub    -0x1c(%ebp),%edi
45a4a2:	2b 5d e8             	sub    -0x18(%ebp),%ebx
45a4a5:	8b 4d fc             	mov    -0x4(%ebp),%ecx
45a4a8:	8b 41 7c             	mov    0x7c(%ecx),%eax
45a4ab:	33 d2                	xor    %edx,%edx
45a4ad:	39 56 1c             	cmp    %edx,0x1c(%esi)
45a4b0:	0f 95 c2             	setne  %dl
45a4b3:	a8 04                	test   $0x4,%al
45a4b5:	74 09                	je     0x45a4c0
45a4b7:	a8 01                	test   $0x1,%al
45a4b9:	74 05                	je     0x45a4c0
45a4bb:	83 ca 06             	or     $0x6,%edx
45a4be:	eb 0e                	jmp    0x45a4ce
45a4c0:	f6 45 0d a0          	testb  $0xa0,0xd(%ebp)
45a4c4:	74 05                	je     0x45a4cb
45a4c6:	83 ca 0a             	or     $0xa,%edx
45a4c9:	eb 03                	jmp    0x45a4ce
45a4cb:	83 ca 10             	or     $0x10,%edx
45a4ce:	8b 01                	mov    (%ecx),%eax
45a4d0:	52                   	push   %edx
45a4d1:	6a ff                	push   $0xffffffff
45a4d3:	8d 55 f4             	lea    -0xc(%ebp),%edx
45a4d6:	52                   	push   %edx
45a4d7:	ff 90 34 01 00 00    	call   *0x134(%eax)
45a4dd:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45a4e0:	3b cf                	cmp    %edi,%ecx
45a4e2:	7c 05                	jl     0x45a4e9
45a4e4:	8b cf                	mov    %edi,%ecx
45a4e6:	89 4d f4             	mov    %ecx,-0xc(%ebp)
45a4e9:	8b 45 f8             	mov    -0x8(%ebp),%eax
45a4ec:	3b c3                	cmp    %ebx,%eax
45a4ee:	7c 05                	jl     0x45a4f5
45a4f0:	8b c3                	mov    %ebx,%eax
45a4f2:	89 45 f8             	mov    %eax,-0x8(%ebp)
45a4f5:	8b 7d 0c             	mov    0xc(%ebp),%edi
45a4f8:	f7 c7 00 a0 00 00    	test   $0xa000,%edi
45a4fe:	74 31                	je     0x45a531
45a500:	8b 56 14             	mov    0x14(%esi),%edx
45a503:	01 46 18             	add    %eax,0x18(%esi)
45a506:	3b d1                	cmp    %ecx,%edx
45a508:	7f 02                	jg     0x45a50c
45a50a:	8b d1                	mov    %ecx,%edx
45a50c:	f7 c7 00 20 00 00    	test   $0x2000,%edi
45a512:	89 56 14             	mov    %edx,0x14(%esi)
45a515:	74 05                	je     0x45a51c
45a517:	01 46 08             	add    %eax,0x8(%esi)
45a51a:	eb 4c                	jmp    0x45a568
45a51c:	f7 c7 00 80 00 00    	test   $0x8000,%edi
45a522:	74 44                	je     0x45a568
45a524:	8b 55 f0             	mov    -0x10(%ebp),%edx
45a527:	2b d0                	sub    %eax,%edx
45a529:	29 46 10             	sub    %eax,0x10(%esi)
45a52c:	89 55 e8             	mov    %edx,-0x18(%ebp)
45a52f:	eb 37                	jmp    0x45a568
45a531:	f7 c7 00 50 00 00    	test   $0x5000,%edi
45a537:	74 2f                	je     0x45a568
45a539:	8b 56 18             	mov    0x18(%esi),%edx
45a53c:	01 4e 14             	add    %ecx,0x14(%esi)
45a53f:	3b d0                	cmp    %eax,%edx
45a541:	7f 02                	jg     0x45a545
45a543:	8b d0                	mov    %eax,%edx
45a545:	f7 c7 00 10 00 00    	test   $0x1000,%edi
45a54b:	89 56 18             	mov    %edx,0x18(%esi)