43b0fa:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
43b0fe:	85 d2                	test   %edx,%edx
43b100:	74 28                	je     0x43b12a
43b102:	51                   	push   %ecx
43b103:	8b cb                	mov    %ebx,%ecx
43b105:	8d 83 84 00 00 00    	lea    0x84(%ebx),%eax
43b10b:	f7 d9                	neg    %ecx
43b10d:	1b c9                	sbb    %ecx,%ecx
43b10f:	23 c8                	and    %eax,%ecx
43b111:	51                   	push   %ecx
43b112:	53                   	push   %ebx
43b113:	ff 75 18             	push   0x18(%ebp)
43b116:	53                   	push   %ebx
43b117:	ff 75 0c             	push   0xc(%ebp)
43b11a:	57                   	push   %edi
43b11b:	51                   	push   %ecx
43b11c:	8b ca                	mov    %edx,%ecx
43b11e:	e8 a5 42 00 00       	call   0x43f3c8
43b123:	8b f8                	mov    %eax,%edi
43b125:	89 45 f0             	mov    %eax,-0x10(%ebp)
43b128:	eb 05                	jmp    0x43b12f
43b12a:	33 ff                	xor    %edi,%edi
43b12c:	89 7d f0             	mov    %edi,-0x10(%ebp)
43b12f:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
43b133:	85 ff                	test   %edi,%edi
43b135:	0f 84 b9 01 00 00    	je     0x43b2f4
43b13b:	8b 07                	mov    (%edi),%eax
43b13d:	57                   	push   %edi
43b13e:	8b 70 04             	mov    0x4(%eax),%esi
43b141:	8b ce                	mov    %esi,%ecx
43b143:	ff 15 c4 12 45 00    	call   *0x4512c4
43b149:	ff d6                	call   *%esi
43b14b:	8b 07                	mov    (%edi),%eax
43b14d:	8b 70 28             	mov    0x28(%eax),%esi
43b150:	8b ce                	mov    %esi,%ecx
43b152:	ff 15 c4 12 45 00    	call   *0x4512c4
43b158:	8b cf                	mov    %edi,%ecx
43b15a:	ff d6                	call   *%esi
43b15c:	8b f8                	mov    %eax,%edi
43b15e:	85 ff                	test   %edi,%edi
43b160:	0f 88 76 01 00 00    	js     0x43b2dc
43b166:	83 65 e8 00          	andl   $0x0,-0x18(%ebp)
43b16a:	8d bb 84 00 00 00    	lea    0x84(%ebx),%edi
43b170:	8b 07                	mov    (%edi),%eax
43b172:	8b 70 18             	mov    0x18(%eax),%esi
43b175:	8b ce                	mov    %esi,%ecx
43b177:	ff 15 c4 12 45 00    	call   *0x4512c4
43b17d:	8b cf                	mov    %edi,%ecx
43b17f:	ff d6                	call   *%esi
43b181:	8b 0f                	mov    (%edi),%ecx
43b183:	8d 45 e8             	lea    -0x18(%ebp),%eax
43b186:	50                   	push   %eax
43b187:	8b 45 f0             	mov    -0x10(%ebp),%eax
43b18a:	83 c0 08             	add    $0x8,%eax
43b18d:	8b 71 20             	mov    0x20(%ecx),%esi
43b190:	8b ce                	mov    %esi,%ecx
43b192:	50                   	push   %eax
43b193:	ff 15 c4 12 45 00    	call   *0x4512c4
43b199:	8b cf                	mov    %edi,%ecx
43b19b:	ff d6                	call   *%esi
43b19d:	8b 17                	mov    (%edi),%edx
43b19f:	8b 72 1c             	mov    0x1c(%edx),%esi
43b1a2:	8b ce                	mov    %esi,%ecx
43b1a4:	85 c0                	test   %eax,%eax
43b1a6:	0f 85 0b 01 00 00    	jne    0x43b2b7
43b1ac:	ff 15 c4 12 45 00    	call   *0x4512c4
43b1b2:	8b cf                	mov    %edi,%ecx
43b1b4:	ff d6                	call   *%esi
43b1b6:	8b 83 34 01 00 00    	mov    0x134(%ebx),%eax
43b1bc:	33 f6                	xor    %esi,%esi
43b1be:	39 b0 a0 06 00 00    	cmp    %esi,0x6a0(%eax)
43b1c4:	75 0e                	jne    0x43b1d4
43b1c6:	8b 7d e4             	mov    -0x1c(%ebp),%edi
43b1c9:	81 e7 7f fd ff ff    	and    $0xfffffd7f,%edi
43b1cf:	89 7d 10             	mov    %edi,0x10(%ebp)
43b1d2:	eb 03                	jmp    0x43b1d7
43b1d4:	8b 7d 10             	mov    0x10(%ebp),%edi
43b1d7:	39 75 08             	cmp    %esi,0x8(%ebp)
43b1da:	74 08                	je     0x43b1e4
43b1dc:	ff 15 60 30 45 00    	call   *0x453060
43b1e2:	eb 02                	jmp    0x43b1e6
43b1e4:	8b c6                	mov    %esi,%eax
43b1e6:	85 c0                	test   %eax,%eax
43b1e8:	78 4b                	js     0x43b235
43b1ea:	a1 2c 0a 45 00       	mov    0x450a2c,%eax
43b1ef:	85 c0                	test   %eax,%eax
43b1f1:	74 0d                	je     0x43b200
43b1f3:	83 80 88 00 00 00 01 	addl   $0x1,0x88(%eax)
43b1fa:	11 b0 8c 00 00 00    	adc    %esi,0x8c(%eax)
43b200:	ff 75 f0             	push   -0x10(%ebp)
43b203:	8b 45 1c             	mov    0x1c(%ebp),%eax
43b206:	83 83 50 01 00 00 01 	addl   $0x1,0x150(%ebx)
43b20d:	ff 75 ec             	push   -0x14(%ebp)
43b210:	11 b3 54 01 00 00    	adc    %esi,0x154(%ebx)
43b216:	8b 30                	mov    (%eax),%esi
43b218:	57                   	push   %edi
43b219:	ff 75 0c             	push   0xc(%ebp)
43b21c:	8b 4e 24             	mov    0x24(%esi),%ecx
43b21f:	50                   	push   %eax
43b220:	ff 15 c4 12 45 00    	call   *0x4512c4
43b226:	ff 56 24             	call   *0x24(%esi)
43b229:	8b f8                	mov    %eax,%edi
43b22b:	ff 15 64 30 45 00    	call   *0x453064
43b231:	33 f6                	xor    %esi,%esi
43b233:	eb 05                	jmp    0x43b23a
43b235:	bf 03 10 04 80       	mov    $0x80041003,%edi
43b23a:	81 ff 35 10 04 80    	cmp    $0x80041035,%edi
43b240:	74 08                	je     0x43b24a
43b242:	81 ff 08 10 04 80    	cmp    $0x80041008,%edi
43b248:	75 7c                	jne    0x43b2c6
43b24a:	8b 7d 10             	mov    0x10(%ebp),%edi
43b24d:	81 e7 7f ff ff ff    	and    $0xffffff7f,%edi
43b253:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
43b257:	74 08                	je     0x43b261
43b259:	ff 15 60 30 45 00    	call   *0x453060
43b25f:	eb 02                	jmp    0x43b263
43b261:	8b c6                	mov    %esi,%eax
43b263:	85 c0                	test   %eax,%eax
43b265:	78 49                	js     0x43b2b0
43b267:	a1 2c 0a 45 00       	mov    0x450a2c,%eax
43b26c:	85 c0                	test   %eax,%eax
43b26e:	74 0d                	je     0x43b27d
43b270:	83 80 88 00 00 00 01 	addl   $0x1,0x88(%eax)
43b277:	11 b0 8c 00 00 00    	adc    %esi,0x8c(%eax)
43b27d:	ff 75 f0             	push   -0x10(%ebp)
43b280:	8b 45 1c             	mov    0x1c(%ebp),%eax
43b283:	83 83 50 01 00 00 01 	addl   $0x1,0x150(%ebx)
43b28a:	ff 75 ec             	push   -0x14(%ebp)
43b28d:	11 b3 54 01 00 00    	adc    %esi,0x154(%ebx)
43b293:	8b 30                	mov    (%eax),%esi
43b295:	57                   	push   %edi
43b296:	ff 75 0c             	push   0xc(%ebp)
43b299:	8b 4e 24             	mov    0x24(%esi),%ecx
43b29c:	50                   	push   %eax
43b29d:	ff 15 c4 12 45 00    	call   *0x4512c4
43b2a3:	ff 56 24             	call   *0x24(%esi)
43b2a6:	8b f8                	mov    %eax,%edi
43b2a8:	ff 15 64 30 45 00    	call   *0x453064
43b2ae:	eb 16                	jmp    0x43b2c6
43b2b0:	bf 03 10 04 80       	mov    $0x80041003,%edi
43b2b5:	eb 0f                	jmp    0x43b2c6
43b2b7:	ff 15 c4 12 45 00    	call   *0x4512c4
43b2bd:	8b cf                	mov    %edi,%ecx
43b2bf:	ff d6                	call   *%esi
43b2c1:	bf 06 10 04 80       	mov    $0x80041006,%edi
43b2c6:	85 ff                	test   %edi,%edi
43b2c8:	79 12                	jns    0x43b2dc
43b2ca:	ff 75 f0             	push   -0x10(%ebp)
43b2cd:	57                   	push   %edi
43b2ce:	51                   	push   %ecx
43b2cf:	51                   	push   %ecx
43b2d0:	68 38 b2 40 00       	push   $0x40b238
43b2d5:	8b cb                	mov    %ebx,%ecx
43b2d7:	e8 87 36 fe ff       	call   0x41e963
43b2dc:	8b 4d f0             	mov    -0x10(%ebp),%ecx
43b2df:	51                   	push   %ecx
43b2e0:	8b 01                	mov    (%ecx),%eax
43b2e2:	8b 70 08             	mov    0x8(%eax),%esi
43b2e5:	8b ce                	mov    %esi,%ecx
43b2e7:	ff 15 c4 12 45 00    	call   *0x4512c4
43b2ed:	ff d6                	call   *%esi
43b2ef:	8b 4d ec             	mov    -0x14(%ebp),%ecx
43b2f2:	eb 08                	jmp    0x43b2fc
43b2f4:	8b 4d ec             	mov    -0x14(%ebp),%ecx
43b2f7:	bf 06 10 04 80       	mov    $0x80041006,%edi
43b2fc:	85 c9                	test   %ecx,%ecx
43b2fe:	74 10                	je     0x43b310
43b300:	8b 01                	mov    (%ecx),%eax
43b302:	51                   	push   %ecx
43b303:	8b 70 08             	mov    0x8(%eax),%esi
43b306:	8b ce                	mov    %esi,%ecx
43b308:	ff 15 c4 12 45 00    	call   *0x4512c4
43b30e:	ff d6                	call   *%esi
43b310:	85 ff                	test   %edi,%edi
43b312:	79 0f                	jns    0x43b323
43b314:	57                   	push   %edi
43b315:	ff 15 a0 12 45 00    	call   *0x4512a0
43b31b:	8b c8                	mov    %eax,%ecx
43b31d:	ff 15 a4 12 45 00    	call   *0x4512a4
43b323:	a1 00 f0 44 00       	mov    0x44f000,%eax
43b328:	3d 00 f0 44 00       	cmp    $0x44f000,%eax
43b32d:	74 20                	je     0x43b34f
43b32f:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
43b333:	74 1a                	je     0x43b34f
43b335:	80 78 19 02          	cmpb   $0x2,0x19(%eax)
43b339:	72 14                	jb     0x43b34f
43b33b:	57                   	push   %edi
43b33c:	ff 70 14             	push   0x14(%eax)
43b33f:	ba a8 7b 40 00       	mov    $0x407ba8,%edx
43b344:	ff 70 10             	push   0x10(%eax)
43b347:	6a 55                	push   $0x55
43b349:	59                   	pop    %ecx
43b34a:	e8 77 54 ff ff       	call   0x4307c6
43b34f:	8b c7                	mov    %edi,%eax
43b351:	e8 e5 42 fe ff       	call   0x41f63b
43b356:	c2 18 00             	ret    $0x18
43b359:	6a 10                	push   $0x10
43b35b:	b8 a7 3d 42 00       	mov    $0x423da7,%eax
43b360:	e8 08 43 fe ff       	call   0x41f66d
43b365:	8b d9                	mov    %ecx,%ebx
43b367:	8b 7d 10             	mov    0x10(%ebp),%edi
43b36a:	33 c9                	xor    %ecx,%ecx
43b36c:	8b 55 14             	mov    0x14(%ebp),%edx
43b36f:	89 7d e4             	mov    %edi,-0x1c(%ebp)
43b372:	81 e7 ff fd ff ff    	and    $0xfffffdff,%edi
43b378:	89 7d 10             	mov    %edi,0x10(%ebp)
43b37b:	89 4d ec             	mov    %ecx,-0x14(%ebp)
43b37e:	85 d2                	test   %edx,%edx
43b380:	74 19                	je     0x43b39b
43b382:	8b 02                	mov    (%edx),%eax
43b384:	8d 4d ec             	lea    -0x14(%ebp),%ecx
43b387:	51                   	push   %ecx
43b388:	52                   	push   %edx
43b389:	8b 70 0c             	mov    0xc(%eax),%esi
43b38c:	8b ce                	mov    %esi,%ecx
43b38e:	ff 15 c4 12 45 00    	call   *0x4512c4
43b394:	ff d6                	call   *%esi
43b396:	8b 4d ec             	mov    -0x14(%ebp),%ecx
43b399:	eb 02                	jmp    0x43b39d
43b39b:	33 c0                	xor    %eax,%eax
43b39d:	85 c0                	test   %eax,%eax
43b39f:	0f 88 0a 02 00 00    	js     0x43b5af
43b3a5:	6a 68                	push   $0x68
43b3a7:	e8 2f 2e fe ff       	call   0x41e1db
43b3ac:	8b d0                	mov    %eax,%edx
43b3ae:	59                   	pop    %ecx
43b3af:	89 55 e8             	mov    %edx,-0x18(%ebp)
43b3b2:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
43b3b6:	85 d2                	test   %edx,%edx
43b3b8:	74 28                	je     0x43b3e2
43b3ba:	51                   	push   %ecx
43b3bb:	8b cb                	mov    %ebx,%ecx
43b3bd:	8d 83 84 00 00 00    	lea    0x84(%ebx),%eax
43b3c3:	f7 d9                	neg    %ecx
43b3c5:	1b c9                	sbb    %ecx,%ecx
43b3c7:	23 c8                	and    %eax,%ecx
43b3c9:	51                   	push   %ecx
43b3ca:	53                   	push   %ebx
43b3cb:	ff 75 18             	push   0x18(%ebp)
43b3ce:	53                   	push   %ebx
43b3cf:	ff 75 0c             	push   0xc(%ebp)
43b3d2:	57                   	push   %edi
43b3d3:	51                   	push   %ecx
43b3d4:	8b ca                	mov    %edx,%ecx
43b3d6:	e8 a8 40 00 00       	call   0x43f483
43b3db:	8b f8                	mov    %eax,%edi
43b3dd:	89 45 f0             	mov    %eax,-0x10(%ebp)
43b3e0:	eb 05                	jmp    0x43b3e7
43b3e2:	33 ff                	xor    %edi,%edi
43b3e4:	89 7d f0             	mov    %edi,-0x10(%ebp)
43b3e7:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
43b3eb:	85 ff                	test   %edi,%edi
43b3ed:	0f 84 b9 01 00 00    	je     0x43b5ac
43b3f3:	8b 07                	mov    (%edi),%eax
43b3f5:	57                   	push   %edi
43b3f6:	8b 70 04             	mov    0x4(%eax),%esi
43b3f9:	8b ce                	mov    %esi,%ecx
43b3fb:	ff 15 c4 12 45 00    	call   *0x4512c4
43b401:	ff d6                	call   *%esi
43b403:	8b 07                	mov    (%edi),%eax
43b405:	8b 70 28             	mov    0x28(%eax),%esi
43b408:	8b ce                	mov    %esi,%ecx
43b40a:	ff 15 c4 12 45 00    	call   *0x4512c4
43b410:	8b cf                	mov    %edi,%ecx
43b412:	ff d6                	call   *%esi
43b414:	8b f8                	mov    %eax,%edi
43b416:	85 ff                	test   %edi,%edi
43b418:	0f 88 76 01 00 00    	js     0x43b594
43b41e:	83 65 e8 00          	andl   $0x0,-0x18(%ebp)
43b422:	8d bb 84 00 00 00    	lea    0x84(%ebx),%edi
43b428:	8b 07                	mov    (%edi),%eax
43b42a:	8b 70 18             	mov    0x18(%eax),%esi
43b42d:	8b ce                	mov    %esi,%ecx
43b42f:	ff 15 c4 12 45 00    	call   *0x4512c4
43b435:	8b cf                	mov    %edi,%ecx
43b437:	ff d6                	call   *%esi
43b439:	8b 0f                	mov    (%edi),%ecx
43b43b:	8d 45 e8             	lea    -0x18(%ebp),%eax
43b43e:	50                   	push   %eax
43b43f:	8b 45 f0             	mov    -0x10(%ebp),%eax
43b442:	83 c0 08             	add    $0x8,%eax
43b445:	8b 71 20             	mov    0x20(%ecx),%esi
43b448:	8b ce                	mov    %esi,%ecx
43b44a:	50                   	push   %eax
43b44b:	ff 15 c4 12 45 00    	call   *0x4512c4
43b451:	8b cf                	mov    %edi,%ecx
43b453:	ff d6                	call   *%esi
43b455:	8b 17                	mov    (%edi),%edx
43b457:	8b 72 1c             	mov    0x1c(%edx),%esi
43b45a:	8b ce                	mov    %esi,%ecx
43b45c:	85 c0                	test   %eax,%eax
43b45e:	0f 85 0b 01 00 00    	jne    0x43b56f
43b464:	ff 15 c4 12 45 00    	call   *0x4512c4
43b46a:	8b cf                	mov    %edi,%ecx
43b46c:	ff d6                	call   *%esi
43b46e:	8b 83 34 01 00 00    	mov    0x134(%ebx),%eax
43b474:	33 f6                	xor    %esi,%esi
43b476:	39 b0 a0 06 00 00    	cmp    %esi,0x6a0(%eax)
43b47c:	75 0e                	jne    0x43b48c
43b47e:	8b 7d e4             	mov    -0x1c(%ebp),%edi
43b481:	81 e7 7f fd ff ff    	and    $0xfffffd7f,%edi
43b487:	89 7d 10             	mov    %edi,0x10(%ebp)
43b48a:	eb 03                	jmp    0x43b48f
43b48c:	8b 7d 10             	mov    0x10(%ebp),%edi
43b48f:	39 75 08             	cmp    %esi,0x8(%ebp)
43b492:	74 08                	je     0x43b49c
43b494:	ff 15 60 30 45 00    	call   *0x453060
43b49a:	eb 02                	jmp    0x43b49e
43b49c:	8b c6                	mov    %esi,%eax
43b49e:	85 c0                	test   %eax,%eax
43b4a0:	78 4b                	js     0x43b4ed
43b4a2:	a1 2c 0a 45 00       	mov    0x450a2c,%eax
43b4a7:	85 c0                	test   %eax,%eax
43b4a9:	74 0d                	je     0x43b4b8
43b4ab:	83 80 a0 00 00 00 01 	addl   $0x1,0xa0(%eax)
43b4b2:	11 b0 a4 00 00 00    	adc    %esi,0xa4(%eax)
43b4b8:	ff 75 f0             	push   -0x10(%ebp)
43b4bb:	8b 45 1c             	mov    0x1c(%ebp),%eax
43b4be:	83 83 68 01 00 00 01 	addl   $0x1,0x168(%ebx)
43b4c5:	ff 75 ec             	push   -0x14(%ebp)
43b4c8:	11 b3 6c 01 00 00    	adc    %esi,0x16c(%ebx)
43b4ce:	8b 30                	mov    (%eax),%esi
43b4d0:	57                   	push   %edi
43b4d1:	ff 75 0c             	push   0xc(%ebp)
43b4d4:	8b 4e 3c             	mov    0x3c(%esi),%ecx
43b4d7:	50                   	push   %eax
43b4d8:	ff 15 c4 12 45 00    	call   *0x4512c4
43b4de:	ff 56 3c             	call   *0x3c(%esi)
43b4e1:	8b f8                	mov    %eax,%edi
43b4e3:	ff 15 64 30 45 00    	call   *0x453064
43b4e9:	33 f6                	xor    %esi,%esi
43b4eb:	eb 05                	jmp    0x43b4f2
43b4ed:	bf 03 10 04 80       	mov    $0x80041003,%edi
43b4f2:	81 ff 35 10 04 80    	cmp    $0x80041035,%edi
43b4f8:	74 08                	je     0x43b502
43b4fa:	81 ff 08 10 04 80    	cmp    $0x80041008,%edi
43b500:	75 7c                	jne    0x43b57e
43b502:	8b 7d 10             	mov    0x10(%ebp),%edi
43b505:	81 e7 7f ff ff ff    	and    $0xffffff7f,%edi
43b50b:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
43b50f:	74 08                	je     0x43b519
43b511:	ff 15 60 30 45 00    	call   *0x453060
43b517:	eb 02                	jmp    0x43b51b
43b519:	8b c6                	mov    %esi,%eax
43b51b:	85 c0                	test   %eax,%eax
43b51d:	78 49                	js     0x43b568
43b51f:	a1 2c 0a 45 00       	mov    0x450a2c,%eax
43b524:	85 c0                	test   %eax,%eax
43b526:	74 0d                	je     0x43b535
43b528:	83 80 a0 00 00 00 01 	addl   $0x1,0xa0(%eax)