43a047:	8b 0d 00 f0 44 00    	mov    0x44f000,%ecx
43a04d:	81 f9 00 f0 44 00    	cmp    $0x44f000,%ecx
43a053:	74 20                	je     0x43a075
43a055:	f6 41 1c 04          	testb  $0x4,0x1c(%ecx)
43a059:	74 1a                	je     0x43a075
43a05b:	80 79 19 02          	cmpb   $0x2,0x19(%ecx)
43a05f:	72 14                	jb     0x43a075
43a061:	56                   	push   %esi
43a062:	ff 71 14             	push   0x14(%ecx)
43a065:	ba a8 7b 40 00       	mov    $0x407ba8,%edx
43a06a:	ff 71 10             	push   0x10(%ecx)
43a06d:	6a 4b                	push   $0x4b
43a06f:	59                   	pop    %ecx
43a070:	e8 51 67 ff ff       	call   0x4307c6
43a075:	8b c6                	mov    %esi,%eax
43a077:	5e                   	pop    %esi
43a078:	c2 18 00             	ret    $0x18
43a07b:	cc                   	int3
43a07c:	cc                   	int3
43a07d:	cc                   	int3
43a07e:	cc                   	int3
43a07f:	cc                   	int3
43a080:	8b ff                	mov    %edi,%edi
43a082:	55                   	push   %ebp
43a083:	8b ec                	mov    %esp,%ebp
43a085:	83 ec 0c             	sub    $0xc,%esp
43a088:	56                   	push   %esi
43a089:	8b 75 08             	mov    0x8(%ebp),%esi
43a08c:	57                   	push   %edi
43a08d:	33 ff                	xor    %edi,%edi
43a08f:	39 be a0 00 00 00    	cmp    %edi,0xa0(%esi)
43a095:	0f 84 b7 00 00 00    	je     0x43a152
43a09b:	57                   	push   %edi
43a09c:	8d 45 fc             	lea    -0x4(%ebp),%eax
43a09f:	89 7d fc             	mov    %edi,-0x4(%ebp)
43a0a2:	50                   	push   %eax
43a0a3:	8d 55 f8             	lea    -0x8(%ebp),%edx
43a0a6:	89 7d f4             	mov    %edi,-0xc(%ebp)
43a0a9:	8d 4d f4             	lea    -0xc(%ebp),%ecx
43a0ac:	89 7d f8             	mov    %edi,-0x8(%ebp)
43a0af:	e8 e0 46 fe ff       	call   0x41e794
43a0b4:	85 c0                	test   %eax,%eax
43a0b6:	0f 88 96 00 00 00    	js     0x43a152
43a0bc:	a1 2c 0a 45 00       	mov    0x450a2c,%eax
43a0c1:	85 c0                	test   %eax,%eax
43a0c3:	74 0d                	je     0x43a0d2
43a0c5:	83 80 f8 00 00 00 01 	addl   $0x1,0xf8(%eax)
43a0cc:	11 b8 fc 00 00 00    	adc    %edi,0xfc(%eax)
43a0d2:	ff 75 1c             	push   0x1c(%ebp)
43a0d5:	83 86 c0 01 00 00 01 	addl   $0x1,0x1c0(%esi)
43a0dc:	ff 75 18             	push   0x18(%ebp)
43a0df:	11 be c4 01 00 00    	adc    %edi,0x1c4(%esi)
43a0e5:	8b 86 a0 00 00 00    	mov    0xa0(%esi),%eax
43a0eb:	ff 75 14             	push   0x14(%ebp)
43a0ee:	ff 75 10             	push   0x10(%ebp)
43a0f1:	8b 30                	mov    (%eax),%esi
43a0f3:	ff 75 0c             	push   0xc(%ebp)
43a0f6:	50                   	push   %eax
43a0f7:	8b 4e 20             	mov    0x20(%esi),%ecx
43a0fa:	ff 15 c4 12 45 00    	call   *0x4512c4
43a100:	ff 56 20             	call   *0x20(%esi)
43a103:	8b f0                	mov    %eax,%esi
43a105:	ff 15 64 30 45 00    	call   *0x453064
43a10b:	ff 75 fc             	push   -0x4(%ebp)
43a10e:	8b 55 f8             	mov    -0x8(%ebp),%edx
43a111:	8b 4d f4             	mov    -0xc(%ebp),%ecx
43a114:	e8 39 4c fe ff       	call   0x41ed52
43a119:	85 f6                	test   %esi,%esi
43a11b:	79 0f                	jns    0x43a12c
43a11d:	56                   	push   %esi
43a11e:	ff 15 a0 12 45 00    	call   *0x4512a0
43a124:	8b c8                	mov    %eax,%ecx
43a126:	ff 15 a4 12 45 00    	call   *0x4512a4
43a12c:	a1 00 f0 44 00       	mov    0x44f000,%eax
43a131:	3d 00 f0 44 00       	cmp    $0x44f000,%eax
43a136:	74 5e                	je     0x43a196
43a138:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
43a13c:	74 58                	je     0x43a196
43a13e:	80 78 19 02          	cmpb   $0x2,0x19(%eax)
43a142:	72 52                	jb     0x43a196
43a144:	56                   	push   %esi
43a145:	ff 70 14             	push   0x14(%eax)
43a148:	b9 a4 00 00 00       	mov    $0xa4,%ecx
43a14d:	ff 70 10             	push   0x10(%eax)
43a150:	eb 3a                	jmp    0x43a18c
43a152:	be 24 10 04 80       	mov    $0x80041024,%esi
43a157:	56                   	push   %esi
43a158:	ff 15 a0 12 45 00    	call   *0x4512a0
43a15e:	8b c8                	mov    %eax,%ecx
43a160:	ff 15 a4 12 45 00    	call   *0x4512a4
43a166:	8b 0d 00 f0 44 00    	mov    0x44f000,%ecx
43a16c:	81 f9 00 f0 44 00    	cmp    $0x44f000,%ecx
43a172:	74 22                	je     0x43a196
43a174:	f6 41 1c 04          	testb  $0x4,0x1c(%ecx)
43a178:	74 1c                	je     0x43a196
43a17a:	80 79 19 02          	cmpb   $0x2,0x19(%ecx)
43a17e:	72 16                	jb     0x43a196
43a180:	56                   	push   %esi
43a181:	ff 71 14             	push   0x14(%ecx)
43a184:	ff 71 10             	push   0x10(%ecx)
43a187:	b9 a5 00 00 00       	mov    $0xa5,%ecx
43a18c:	ba a8 7b 40 00       	mov    $0x407ba8,%edx
43a191:	e8 30 66 ff ff       	call   0x4307c6
43a196:	5f                   	pop    %edi
43a197:	8b c6                	mov    %esi,%eax
43a199:	5e                   	pop    %esi
43a19a:	c9                   	leave
43a19b:	c2 18 00             	ret    $0x18
43a19e:	cc                   	int3
43a19f:	cc                   	int3
43a1a0:	8b ff                	mov    %edi,%edi
43a1a2:	55                   	push   %ebp
43a1a3:	8b ec                	mov    %esp,%ebp
43a1a5:	53                   	push   %ebx
43a1a6:	56                   	push   %esi
43a1a7:	57                   	push   %edi
43a1a8:	a1 00 f0 44 00       	mov    0x44f000,%eax
43a1ad:	bf 00 f0 44 00       	mov    $0x44f000,%edi
43a1b2:	bb a8 7b 40 00       	mov    $0x407ba8,%ebx
43a1b7:	3b c7                	cmp    %edi,%eax
43a1b9:	74 2b                	je     0x43a1e6
43a1bb:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
43a1bf:	74 25                	je     0x43a1e6
43a1c1:	80 78 19 05          	cmpb   $0x5,0x19(%eax)
43a1c5:	72 1f                	jb     0x43a1e6
43a1c7:	ff 75 1c             	push   0x1c(%ebp)
43a1ca:	8b d3                	mov    %ebx,%edx
43a1cc:	ff 75 18             	push   0x18(%ebp)
43a1cf:	ff 75 14             	push   0x14(%ebp)
43a1d2:	ff 75 10             	push   0x10(%ebp)
43a1d5:	ff 75 0c             	push   0xc(%ebp)
43a1d8:	ff 70 14             	push   0x14(%eax)
43a1db:	ff 70 10             	push   0x10(%eax)
43a1de:	6a 7e                	push   $0x7e
43a1e0:	59                   	pop    %ecx
43a1e1:	e8 94 93 ff ff       	call   0x43357a
43a1e6:	8b 4d 08             	mov    0x8(%ebp),%ecx
43a1e9:	33 d2                	xor    %edx,%edx
43a1eb:	39 91 b8 00 00 00    	cmp    %edx,0xb8(%ecx)
43a1f1:	0f 84 98 00 00 00    	je     0x43a28f
43a1f7:	8b 81 30 01 00 00    	mov    0x130(%ecx),%eax
43a1fd:	39 90 bc 07 00 00    	cmp    %edx,0x7bc(%eax)
43a203:	0f 84 86 00 00 00    	je     0x43a28f
43a209:	a1 2c 0a 45 00       	mov    0x450a2c,%eax
43a20e:	85 c0                	test   %eax,%eax
43a210:	74 0d                	je     0x43a21f
43a212:	83 80 00 01 00 00 01 	addl   $0x1,0x100(%eax)
43a219:	11 90 04 01 00 00    	adc    %edx,0x104(%eax)
43a21f:	ff 75 20             	push   0x20(%ebp)
43a222:	83 81 e4 01 00 00 01 	addl   $0x1,0x1e4(%ecx)
43a229:	ff 75 1c             	push   0x1c(%ebp)
43a22c:	11 91 e8 01 00 00    	adc    %edx,0x1e8(%ecx)
43a232:	ff 75 18             	push   0x18(%ebp)
43a235:	8b 81 b8 00 00 00    	mov    0xb8(%ecx),%eax
43a23b:	ff 75 14             	push   0x14(%ebp)
43a23e:	ff 75 10             	push   0x10(%ebp)
43a241:	8b 30                	mov    (%eax),%esi
43a243:	ff 75 0c             	push   0xc(%ebp)
43a246:	50                   	push   %eax
43a247:	8b 4e 0c             	mov    0xc(%esi),%ecx
43a24a:	ff 15 c4 12 45 00    	call   *0x4512c4
43a250:	ff 56 0c             	call   *0xc(%esi)
43a253:	8b f0                	mov    %eax,%esi
43a255:	ff 15 64 30 45 00    	call   *0x453064
43a25b:	85 f6                	test   %esi,%esi
43a25d:	79 0f                	jns    0x43a26e
43a25f:	56                   	push   %esi
43a260:	ff 15 a0 12 45 00    	call   *0x4512a0
43a266:	8b c8                	mov    %eax,%ecx
43a268:	ff 15 a4 12 45 00    	call   *0x4512a4
43a26e:	a1 00 f0 44 00       	mov    0x44f000,%eax
43a273:	3b c7                	cmp    %edi,%eax
43a275:	74 55                	je     0x43a2cc
43a277:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
43a27b:	74 4f                	je     0x43a2cc
43a27d:	80 78 19 02          	cmpb   $0x2,0x19(%eax)
43a281:	72 49                	jb     0x43a2cc
43a283:	56                   	push   %esi
43a284:	ff 70 14             	push   0x14(%eax)
43a287:	ff 70 10             	push   0x10(%eax)
43a28a:	6a 7f                	push   $0x7f
43a28c:	59                   	pop    %ecx
43a28d:	eb 36                	jmp    0x43a2c5
43a28f:	be 24 10 04 80       	mov    $0x80041024,%esi
43a294:	56                   	push   %esi
43a295:	ff 15 a0 12 45 00    	call   *0x4512a0
43a29b:	8b c8                	mov    %eax,%ecx
43a29d:	ff 15 a4 12 45 00    	call   *0x4512a4
43a2a3:	8b 0d 00 f0 44 00    	mov    0x44f000,%ecx
43a2a9:	3b cf                	cmp    %edi,%ecx
43a2ab:	74 1f                	je     0x43a2cc
43a2ad:	f6 41 1c 04          	testb  $0x4,0x1c(%ecx)
43a2b1:	74 19                	je     0x43a2cc
43a2b3:	80 79 19 02          	cmpb   $0x2,0x19(%ecx)
43a2b7:	72 13                	jb     0x43a2cc
43a2b9:	56                   	push   %esi
43a2ba:	ff 71 14             	push   0x14(%ecx)
43a2bd:	ff 71 10             	push   0x10(%ecx)
43a2c0:	b9 80 00 00 00       	mov    $0x80,%ecx
43a2c5:	8b d3                	mov    %ebx,%edx
43a2c7:	e8 fa 64 ff ff       	call   0x4307c6
43a2cc:	5f                   	pop    %edi
43a2cd:	8b c6                	mov    %esi,%eax
43a2cf:	5e                   	pop    %esi
43a2d0:	5b                   	pop    %ebx
43a2d1:	5d                   	pop    %ebp
43a2d2:	c2 1c 00             	ret    $0x1c
43a2d5:	cc                   	int3
43a2d6:	cc                   	int3
43a2d7:	cc                   	int3
43a2d8:	cc                   	int3
43a2d9:	cc                   	int3
43a2da:	cc                   	int3
43a2db:	cc                   	int3
43a2dc:	cc                   	int3
43a2dd:	cc                   	int3
43a2de:	cc                   	int3
43a2df:	cc                   	int3
43a2e0:	8b ff                	mov    %edi,%edi
43a2e2:	55                   	push   %ebp
43a2e3:	8b ec                	mov    %esp,%ebp
43a2e5:	56                   	push   %esi
43a2e6:	57                   	push   %edi
43a2e7:	8b 7d 0c             	mov    0xc(%ebp),%edi
43a2ea:	33 f6                	xor    %esi,%esi
43a2ec:	85 ff                	test   %edi,%edi
43a2ee:	74 0a                	je     0x43a2fa
43a2f0:	ff 15 fc 10 45 00    	call   *0x4510fc
43a2f6:	89 07                	mov    %eax,(%edi)
43a2f8:	eb 14                	jmp    0x43a30e
43a2fa:	be 08 10 04 80       	mov    $0x80041008,%esi
43a2ff:	56                   	push   %esi
43a300:	ff 15 a0 12 45 00    	call   *0x4512a0
43a306:	8b c8                	mov    %eax,%ecx
43a308:	ff 15 a4 12 45 00    	call   *0x4512a4
43a30e:	8b 0d 00 f0 44 00    	mov    0x44f000,%ecx
43a314:	81 f9 00 f0 44 00    	cmp    $0x44f000,%ecx
43a31a:	74 20                	je     0x43a33c
43a31c:	f6 41 1c 04          	testb  $0x4,0x1c(%ecx)
43a320:	74 1a                	je     0x43a33c
43a322:	80 79 19 02          	cmpb   $0x2,0x19(%ecx)
43a326:	72 14                	jb     0x43a33c
43a328:	56                   	push   %esi
43a329:	ff 71 14             	push   0x14(%ecx)
43a32c:	ba a8 7b 40 00       	mov    $0x407ba8,%edx
43a331:	ff 71 10             	push   0x10(%ecx)
43a334:	6a 10                	push   $0x10
43a336:	59                   	pop    %ecx
43a337:	e8 8a 64 ff ff       	call   0x4307c6
43a33c:	5f                   	pop    %edi
43a33d:	8b c6                	mov    %esi,%eax
43a33f:	5e                   	pop    %esi
43a340:	5d                   	pop    %ebp
43a341:	c2 08 00             	ret    $0x8
43a344:	6a 14                	push   $0x14
43a346:	b8 0a 3d 42 00       	mov    $0x423d0a,%eax
43a34b:	e8 1d 53 fe ff       	call   0x41f66d
43a350:	8b d9                	mov    %ecx,%ebx
43a352:	8b 7d 10             	mov    0x10(%ebp),%edi
43a355:	83 65 ec 00          	andl   $0x0,-0x14(%ebp)
43a359:	8b 4d 14             	mov    0x14(%ebp),%ecx
43a35c:	89 7d e0             	mov    %edi,-0x20(%ebp)
43a35f:	81 e7 ff fd ff ff    	and    $0xfffffdff,%edi
43a365:	89 7d 10             	mov    %edi,0x10(%ebp)
43a368:	85 c9                	test   %ecx,%ecx
43a36a:	74 16                	je     0x43a382
43a36c:	8b 01                	mov    (%ecx),%eax
43a36e:	8d 55 ec             	lea    -0x14(%ebp),%edx
43a371:	52                   	push   %edx
43a372:	51                   	push   %ecx
43a373:	8b 70 0c             	mov    0xc(%eax),%esi
43a376:	8b ce                	mov    %esi,%ecx
43a378:	ff 15 c4 12 45 00    	call   *0x4512c4
43a37e:	ff d6                	call   *%esi
43a380:	eb 02                	jmp    0x43a384
43a382:	33 c0                	xor    %eax,%eax
43a384:	85 c0                	test   %eax,%eax
43a386:	0f 88 25 02 00 00    	js     0x43a5b1
43a38c:	ff 75 0c             	push   0xc(%ebp)
43a38f:	ff 15 10 30 45 00    	call   *0x453010
43a395:	8b f0                	mov    %eax,%esi
43a397:	89 75 e8             	mov    %esi,-0x18(%ebp)
43a39a:	85 f6                	test   %esi,%esi
43a39c:	0f 84 0f 02 00 00    	je     0x43a5b1
43a3a2:	68 a4 00 00 00       	push   $0xa4
43a3a7:	e8 2f 3e fe ff       	call   0x41e1db
43a3ac:	59                   	pop    %ecx
43a3ad:	89 45 e4             	mov    %eax,-0x1c(%ebp)
43a3b0:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
43a3b4:	85 c0                	test   %eax,%eax
43a3b6:	74 2b                	je     0x43a3e3
43a3b8:	51                   	push   %ecx
43a3b9:	8b d3                	mov    %ebx,%edx
43a3bb:	8d 8b 84 00 00 00    	lea    0x84(%ebx),%ecx
43a3c1:	f7 da                	neg    %edx
43a3c3:	1b d2                	sbb    %edx,%edx
43a3c5:	23 d1                	and    %ecx,%edx
43a3c7:	8b c8                	mov    %eax,%ecx
43a3c9:	52                   	push   %edx
43a3ca:	53                   	push   %ebx
43a3cb:	ff 75 18             	push   0x18(%ebp)
43a3ce:	53                   	push   %ebx
43a3cf:	56                   	push   %esi
43a3d0:	57                   	push   %edi
43a3d1:	ff b3 ec 00 00 00    	push   0xec(%ebx)
43a3d7:	e8 ec 4d 00 00       	call   0x43f1c8
43a3dc:	8b f8                	mov    %eax,%edi
43a3de:	89 45 f0             	mov    %eax,-0x10(%ebp)
43a3e1:	eb 05                	jmp    0x43a3e8
43a3e3:	33 ff                	xor    %edi,%edi
43a3e5:	89 7d f0             	mov    %edi,-0x10(%ebp)
43a3e8:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
43a3ec:	85 ff                	test   %edi,%edi
43a3ee:	0f 84 b6 01 00 00    	je     0x43a5aa
43a3f4:	8b 07                	mov    (%edi),%eax
43a3f6:	57                   	push   %edi
43a3f7:	8b 70 04             	mov    0x4(%eax),%esi
43a3fa:	8b ce                	mov    %esi,%ecx
43a3fc:	ff 15 c4 12 45 00    	call   *0x4512c4
43a402:	ff d6                	call   *%esi
43a404:	8b 07                	mov    (%edi),%eax
43a406:	8b 70 28             	mov    0x28(%eax),%esi
43a409:	8b ce                	mov    %esi,%ecx
43a40b:	ff 15 c4 12 45 00    	call   *0x4512c4
43a411:	8b cf                	mov    %edi,%ecx
43a413:	ff d6                	call   *%esi
43a415:	8b f8                	mov    %eax,%edi
43a417:	85 ff                	test   %edi,%edi
43a419:	0f 88 76 01 00 00    	js     0x43a595
43a41f:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
43a423:	8d bb 84 00 00 00    	lea    0x84(%ebx),%edi
43a429:	8b 07                	mov    (%edi),%eax
43a42b:	8b 70 18             	mov    0x18(%eax),%esi
43a42e:	8b ce                	mov    %esi,%ecx
43a430:	ff 15 c4 12 45 00    	call   *0x4512c4
43a436:	8b cf                	mov    %edi,%ecx
43a438:	ff d6                	call   *%esi
43a43a:	8b 0f                	mov    (%edi),%ecx
43a43c:	8d 45 e4             	lea    -0x1c(%ebp),%eax
43a43f:	50                   	push   %eax
43a440:	8b 45 f0             	mov    -0x10(%ebp),%eax
43a443:	83 c0 08             	add    $0x8,%eax
43a446:	8b 71 20             	mov    0x20(%ecx),%esi
43a449:	8b ce                	mov    %esi,%ecx
43a44b:	50                   	push   %eax
43a44c:	ff 15 c4 12 45 00    	call   *0x4512c4
43a452:	8b cf                	mov    %edi,%ecx
43a454:	ff d6                	call   *%esi
43a456:	8b 17                	mov    (%edi),%edx
43a458:	8b 72 1c             	mov    0x1c(%edx),%esi