4561b6:	e8 d5 fe ff ff       	call   0x456090
4561bb:	59                   	pop    %ecx
4561bc:	59                   	pop    %ecx
4561bd:	5d                   	pop    %ebp
4561be:	c3                   	ret
4561bf:	90                   	nop
4561c0:	53                   	push   %ebx
4561c1:	56                   	push   %esi
4561c2:	8b f2                	mov    %edx,%esi
4561c4:	8b d8                	mov    %eax,%ebx
4561c6:	83 7e 04 02          	cmpl   $0x2,0x4(%esi)
4561ca:	75 75                	jne    0x456241
4561cc:	80 bb 9b 00 00 00 01 	cmpb   $0x1,0x9b(%ebx)
4561d3:	75 6c                	jne    0x456241
4561d5:	f6 43 1c 10          	testb  $0x10,0x1c(%ebx)
4561d9:	75 66                	jne    0x456241
4561db:	8b c3                	mov    %ebx,%eax
4561dd:	e8 7a b2 fe ff       	call   0x44145c
4561e2:	50                   	push   %eax
4561e3:	e8 30 05 fb ff       	call   0x406718
4561e8:	85 c0                	test   %eax,%eax
4561ea:	75 55                	jne    0x456241
4561ec:	6a 07                	push   $0x7
4561ee:	6a 00                	push   $0x0
4561f0:	6a 00                	push   $0x0
4561f2:	6a 00                	push   $0x0
4561f4:	6a 00                	push   $0x0
4561f6:	6a 00                	push   $0x0
4561f8:	8b c3                	mov    %ebx,%eax
4561fa:	e8 5d b2 fe ff       	call   0x44145c
4561ff:	50                   	push   %eax
456200:	e8 9b 06 fb ff       	call   0x4068a0
456205:	8b 46 08             	mov    0x8(%esi),%eax
456208:	50                   	push   %eax
456209:	8b 46 04             	mov    0x4(%esi),%eax
45620c:	50                   	push   %eax
45620d:	68 a2 00 00 00       	push   $0xa2
456212:	8b c3                	mov    %ebx,%eax
456214:	e8 43 b2 fe ff       	call   0x44145c
456219:	50                   	push   %eax
45621a:	e8 89 05 fb ff       	call   0x4067a8
45621f:	80 bb 2e 02 00 00 00 	cmpb   $0x0,0x22e(%ebx)
456226:	74 22                	je     0x45624a
456228:	8b c3                	mov    %ebx,%eax
45622a:	8b 10                	mov    (%eax),%edx
45622c:	ff 52 54             	call   *0x54(%edx)
45622f:	8b d0                	mov    %eax,%edx
456231:	80 f2 01             	xor    $0x1,%dl
456234:	83 c9 ff             	or     $0xffffffff,%ecx
456237:	8b c3                	mov    %ebx,%eax
456239:	e8 de 50 fe ff       	call   0x43b31c
45623e:	5e                   	pop    %esi
45623f:	5b                   	pop    %ebx
456240:	c3                   	ret
456241:	8b d6                	mov    %esi,%edx
456243:	8b c3                	mov    %ebx,%eax
456245:	e8 fa 60 fe ff       	call   0x43c344
45624a:	5e                   	pop    %esi
45624b:	5b                   	pop    %ebx
45624c:	c3                   	ret
45624d:	8d 40 00             	lea    0x0(%eax),%eax
456250:	53                   	push   %ebx
456251:	56                   	push   %esi
456252:	8b f2                	mov    %edx,%esi
456254:	8b d8                	mov    %eax,%ebx
456256:	a1 30 7e 46 00       	mov    0x467e30,%eax
45625b:	80 38 00             	cmpb   $0x0,(%eax)
45625e:	74 16                	je     0x456276
456260:	6a 00                	push   $0x0
456262:	6a 01                	push   $0x1
456264:	68 80 00 00 00       	push   $0x80
456269:	8b c3                	mov    %ebx,%eax
45626b:	e8 ec b1 fe ff       	call   0x44145c
456270:	50                   	push   %eax
456271:	e8 9a 05 fb ff       	call   0x406810
456276:	83 bb 48 02 00 00 00 	cmpl   $0x0,0x248(%ebx)
45627d:	74 25                	je     0x4562a4
45627f:	80 bb 2f 02 00 00 01 	cmpb   $0x1,0x22f(%ebx)
456286:	74 1c                	je     0x4562a4
456288:	6a 00                	push   $0x0
45628a:	8b c3                	mov    %ebx,%eax
45628c:	e8 cb b1 fe ff       	call   0x44145c
456291:	50                   	push   %eax
456292:	e8 b1 05 fb ff       	call   0x406848
456297:	33 d2                	xor    %edx,%edx
456299:	8b 83 48 02 00 00    	mov    0x248(%ebx),%eax
45629f:	e8 20 84 ff ff       	call   0x44e6c4
4562a4:	8b d6                	mov    %esi,%edx
4562a6:	8b c3                	mov    %ebx,%eax
4562a8:	e8 03 a4 fe ff       	call   0x4406b0
4562ad:	5e                   	pop    %esi
4562ae:	5b                   	pop    %ebx
4562af:	c3                   	ret
4562b0:	53                   	push   %ebx
4562b1:	56                   	push   %esi
4562b2:	8b f2                	mov    %edx,%esi
4562b4:	8b d8                	mov    %eax,%ebx
4562b6:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
4562ba:	75 1c                	jne    0x4562d8
4562bc:	83 bb 48 02 00 00 00 	cmpl   $0x0,0x248(%ebx)
4562c3:	74 13                	je     0x4562d8
4562c5:	66 8b 56 04          	mov    0x4(%esi),%dx
4562c9:	8b 83 48 02 00 00    	mov    0x248(%ebx),%eax
4562cf:	e8 04 7e ff ff       	call   0x44e0d8
4562d4:	84 c0                	test   %al,%al
4562d6:	75 09                	jne    0x4562e1
4562d8:	8b d6                	mov    %esi,%edx
4562da:	8b c3                	mov    %ebx,%eax
4562dc:	e8 6b 94 fe ff       	call   0x43f74c
4562e1:	5e                   	pop    %esi
4562e2:	5b                   	pop    %ebx
4562e3:	c3                   	ret
4562e4:	8b 88 48 02 00 00    	mov    0x248(%eax),%ecx
4562ea:	85 c9                	test   %ecx,%ecx
4562ec:	74 0a                	je     0x4562f8
4562ee:	8b 52 04             	mov    0x4(%edx),%edx
4562f1:	8b c1                	mov    %ecx,%eax
4562f3:	e8 fc 7d ff ff       	call   0x44e0f4
4562f8:	c3                   	ret
4562f9:	8d 40 00             	lea    0x0(%eax),%eax
4562fc:	53                   	push   %ebx
4562fd:	56                   	push   %esi
4562fe:	8b f2                	mov    %edx,%esi
456300:	8b d8                	mov    %eax,%ebx
456302:	8b 83 48 02 00 00    	mov    0x248(%ebx),%eax
456308:	85 c0                	test   %eax,%eax
45630a:	74 19                	je     0x456325
45630c:	8b d6                	mov    %esi,%edx
45630e:	e8 25 86 ff ff       	call   0x44e938
456313:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
456317:	75 15                	jne    0x45632e
456319:	8b d6                	mov    %esi,%edx
45631b:	8b c3                	mov    %ebx,%eax
45631d:	8b 08                	mov    (%eax),%ecx
45631f:	ff 51 f0             	call   *-0x10(%ecx)
456322:	5e                   	pop    %esi
456323:	5b                   	pop    %ebx
456324:	c3                   	ret
456325:	8b d6                	mov    %esi,%edx
456327:	8b c3                	mov    %ebx,%eax
456329:	8b 08                	mov    (%eax),%ecx
45632b:	ff 51 f0             	call   *-0x10(%ecx)
45632e:	5e                   	pop    %esi
45632f:	5b                   	pop    %ebx
456330:	c3                   	ret
456331:	8d 40 00             	lea    0x0(%eax),%eax
456334:	55                   	push   %ebp
456335:	8b ec                	mov    %esp,%ebp
456337:	6a 00                	push   $0x0
456339:	53                   	push   %ebx
45633a:	56                   	push   %esi
45633b:	57                   	push   %edi
45633c:	8b f8                	mov    %eax,%edi
45633e:	33 c0                	xor    %eax,%eax
456340:	55                   	push   %ebp
456341:	68 cf 63 45 00       	push   $0x4563cf
456346:	64 ff 30             	push   %fs:(%eax)
456349:	64 89 20             	mov    %esp,%fs:(%eax)
45634c:	83 bf 48 02 00 00 00 	cmpl   $0x0,0x248(%edi)
456353:	74 64                	je     0x4563b9
456355:	33 f6                	xor    %esi,%esi
456357:	66 81 7a 06 ff ff    	cmpw   $0xffff,0x6(%edx)
45635d:	75 07                	jne    0x456366
45635f:	66 83 7a 04 00       	cmpw   $0x0,0x4(%edx)
456364:	74 29                	je     0x45638f
456366:	33 db                	xor    %ebx,%ebx
456368:	0f b7 42 04          	movzwl 0x4(%edx),%eax
45636c:	f6 42 06 10          	testb  $0x10,0x6(%edx)
456370:	74 0c                	je     0x45637e
456372:	b3 01                	mov    $0x1,%bl
456374:	50                   	push   %eax
456375:	8b 42 08             	mov    0x8(%edx),%eax
456378:	50                   	push   %eax
456379:	e8 f2 02 fb ff       	call   0x406670
45637e:	8b cb                	mov    %ebx,%ecx
456380:	8b d0                	mov    %eax,%edx
456382:	8b 87 48 02 00 00    	mov    0x248(%edi),%eax
456388:	e8 ab 7c ff ff       	call   0x44e038
45638d:	8b f0                	mov    %eax,%esi
45638f:	85 f6                	test   %esi,%esi
456391:	74 1a                	je     0x4563ad
456393:	8d 55 fc             	lea    -0x4(%ebp),%edx
456396:	8b 46 58             	mov    0x58(%esi),%eax
456399:	e8 f2 19 fe ff       	call   0x437d90
45639e:	8b 55 fc             	mov    -0x4(%ebp),%edx
4563a1:	a1 b8 9b 46 00       	mov    0x469bb8,%eax
4563a6:	e8 45 4d 00 00       	call   0x45b0f0
4563ab:	eb 0c                	jmp    0x4563b9
4563ad:	33 d2                	xor    %edx,%edx
4563af:	a1 b8 9b 46 00       	mov    0x469bb8,%eax
4563b4:	e8 37 4d 00 00       	call   0x45b0f0
4563b9:	33 c0                	xor    %eax,%eax
4563bb:	5a                   	pop    %edx
4563bc:	59                   	pop    %ecx
4563bd:	59                   	pop    %ecx
4563be:	64 89 10             	mov    %edx,%fs:(%eax)
4563c1:	68 d6 63 45 00       	push   $0x4563d6
4563c6:	8d 45 fc             	lea    -0x4(%ebp),%eax
4563c9:	e8 ee db fa ff       	call   0x403fbc
4563ce:	c3                   	ret
4563cf:	e9 ec d5 fa ff       	jmp    0x4039c0
4563d4:	eb f0                	jmp    0x4563c6
4563d6:	5f                   	pop    %edi
4563d7:	5e                   	pop    %esi
4563d8:	5b                   	pop    %ebx
4563d9:	59                   	pop    %ecx
4563da:	5d                   	pop    %ebp
4563db:	c3                   	ret
4563dc:	80 b8 2f 02 00 00 02 	cmpb   $0x2,0x22f(%eax)
4563e3:	75 06                	jne    0x4563eb
4563e5:	f6 40 1c 10          	testb  $0x10,0x1c(%eax)
4563e9:	74 0d                	je     0x4563f8
4563eb:	66 83 7a 04 00       	cmpw   $0x0,0x4(%edx)
4563f0:	0f 95 c2             	setne  %dl
4563f3:	e8 cc f7 ff ff       	call   0x455bc4
4563f8:	c3                   	ret
4563f9:	8d 40 00             	lea    0x0(%eax),%eax
4563fc:	53                   	push   %ebx
4563fd:	56                   	push   %esi
4563fe:	8b d8                	mov    %eax,%ebx
456400:	f6 43 1c 10          	testb  $0x10,0x1c(%ebx)
456404:	75 06                	jne    0x45640c
456406:	88 93 2b 02 00 00    	mov    %dl,0x22b(%ebx)
45640c:	80 fa 01             	cmp    $0x1,%dl
45640f:	74 0b                	je     0x45641c
456411:	8b c3                	mov    %ebx,%eax
456413:	66 be d0 ff          	mov    $0xffd0,%si
456417:	e8 4c d0 fa ff       	call   0x403468
45641c:	83 bb 64 02 00 00 00 	cmpl   $0x0,0x264(%ebx)
456423:	74 0b                	je     0x456430
456425:	8b 83 64 02 00 00    	mov    0x264(%ebx),%eax
45642b:	8b 10                	mov    (%eax),%edx
45642d:	ff 52 10             	call   *0x10(%edx)
456430:	5e                   	pop    %esi
456431:	5b                   	pop    %ebx
456432:	c3                   	ret
456433:	90                   	nop
456434:	e8 23 0d 00 00       	call   0x45715c
456439:	c3                   	ret
45643a:	8b c0                	mov    %eax,%eax
45643c:	53                   	push   %ebx
45643d:	56                   	push   %esi
45643e:	8b f2                	mov    %edx,%esi
456440:	8b d8                	mov    %eax,%ebx
456442:	8b c3                	mov    %ebx,%eax
456444:	8b 10                	mov    (%eax),%edx
456446:	ff 92 e4 00 00 00    	call   *0xe4(%edx)
45644c:	84 c0                	test   %al,%al
45644e:	74 09                	je     0x456459
456450:	e8 3f 68 fb ff       	call   0x40cc94
456455:	84 c0                	test   %al,%al
456457:	75 04                	jne    0x45645d
456459:	33 c0                	xor    %eax,%eax
45645b:	eb 02                	jmp    0x45645f
45645d:	b0 01                	mov    $0x1,%al
45645f:	83 e0 7f             	and    $0x7f,%eax
456462:	89 46 0c             	mov    %eax,0xc(%esi)
456465:	5e                   	pop    %esi
456466:	5b                   	pop    %ebx
456467:	c3                   	ret
456468:	53                   	push   %ebx
456469:	56                   	push   %esi
45646a:	8b da                	mov    %edx,%ebx
45646c:	33 d2                	xor    %edx,%edx
45646e:	89 53 0c             	mov    %edx,0xc(%ebx)
456471:	f6 40 1c 10          	testb  $0x10,0x1c(%eax)
456475:	75 1e                	jne    0x456495
456477:	80 b8 2f 02 00 00 01 	cmpb   $0x1,0x22f(%eax)
45647e:	74 15                	je     0x456495
456480:	83 b8 48 02 00 00 00 	cmpl   $0x0,0x248(%eax)
456487:	74 0c                	je     0x456495
456489:	8b 90 48 02 00 00    	mov    0x248(%eax),%edx
45648f:	80 7a 5c 00          	cmpb   $0x0,0x5c(%edx)
456493:	74 26                	je     0x4564bb
456495:	8b 73 08             	mov    0x8(%ebx),%esi
456498:	33 d2                	xor    %edx,%edx
45649a:	e8 89 f7 ff ff       	call   0x455c28
45649f:	0f b7 4e 08          	movzwl 0x8(%esi),%ecx
4564a3:	8b 56 04             	mov    0x4(%esi),%edx
4564a6:	b8 17 b0 00 00       	mov    $0xb017,%eax
4564ab:	e8 b8 16 fe ff       	call   0x437b68
4564b0:	85 c0                	test   %eax,%eax
4564b2:	74 07                	je     0x4564bb
4564b4:	c7 43 0c 01 00 00 00 	movl   $0x1,0xc(%ebx)
4564bb:	5e                   	pop    %esi
4564bc:	5b                   	pop    %ebx
4564bd:	c3                   	ret
4564be:	8b c0                	mov    %eax,%eax
4564c0:	53                   	push   %ebx
4564c1:	56                   	push   %esi
4564c2:	8b f2                	mov    %edx,%esi
4564c4:	8b d8                	mov    %eax,%ebx
4564c6:	8b 46 04             	mov    0x4(%esi),%eax
4564c9:	25 f0 ff 00 00       	and    $0xfff0,%eax
4564ce:	3d 20 f0 00 00       	cmp    $0xf020,%eax
4564d3:	75 18                	jne    0x4564ed
4564d5:	a1 b8 9b 46 00       	mov    0x469bb8,%eax
4564da:	3b 58 44             	cmp    0x44(%eax),%ebx
4564dd:	75 0e                	jne    0x4564ed
4564df:	8b d6                	mov    %esi,%edx
4564e1:	a1 b8 9b 46 00       	mov    0x469bb8,%eax
4564e6:	e8 b9 35 00 00       	call   0x459aa4
4564eb:	eb 2d                	jmp    0x45651a
4564ed:	8b 46 04             	mov    0x4(%esi),%eax
4564f0:	25 f0 ff 00 00       	and    $0xfff0,%eax
4564f5:	3d 10 f0 00 00       	cmp    $0xf010,%eax
4564fa:	75 15                	jne    0x456511
4564fc:	f6 43 1c 10          	testb  $0x10,0x1c(%ebx)
456500:	75 0f                	jne    0x456511
456502:	80 7b 5b 00          	cmpb   $0x0,0x5b(%ebx)
456506:	74 09                	je     0x456511
456508:	80 bb 2b 02 00 00 01 	cmpb   $0x1,0x22b(%ebx)
45650f:	75 09                	jne    0x45651a
456511:	8b d6                	mov    %esi,%edx
456513:	8b c3                	mov    %ebx,%eax
456515:	e8 7a a0 fe ff       	call   0x440594
45651a:	8b 46 04             	mov    0x4(%esi),%eax
45651d:	25 f0 ff 00 00       	and    $0xfff0,%eax
456522:	3d 20 f0 00 00       	cmp    $0xf020,%eax
456527:	74 07                	je     0x456530
456529:	3d 20 f1 00 00       	cmp    $0xf120,%eax
45652e:	75 17                	jne    0x456547
456530:	f6 43 1c 10          	testb  $0x10,0x1c(%ebx)
456534:	75 11                	jne    0x456547
456536:	80 7b 5b 00          	cmpb   $0x0,0x5b(%ebx)
45653a:	74 0b                	je     0x456547
45653c:	8b c3                	mov    %ebx,%eax
45653e:	66 be d0 ff          	mov    $0xffd0,%si
456542:	e8 21 cf fa ff       	call   0x403468
456547:	5e                   	pop    %esi
456548:	5b                   	pop    %ebx
456549:	c3                   	ret
45654a:	8b c0                	mov    %eax,%eax
45654c:	53                   	push   %ebx
45654d:	56                   	push   %esi
45654e:	8b f2                	mov    %edx,%esi
456550:	8b d8                	mov    %eax,%ebx
456552:	8b 46 08             	mov    0x8(%esi),%eax
456555:	48                   	dec    %eax
456556:	74 07                	je     0x45655f
456558:	83 e8 02             	sub    $0x2,%eax
45655b:	74 49                	je     0x4565a6
45655d:	eb 77                	jmp    0x4565d6
45655f:	8b c3                	mov    %ebx,%eax
456561:	e8 f6 ae fe ff       	call   0x44145c
456566:	50                   	push   %eax
456567:	e8 ac 01 fb ff       	call   0x406718
45656c:	85 c0                	test   %eax,%eax
45656e:	74 09                	je     0x456579
456570:	c6 83 2c 02 00 00 02 	movb   $0x2,0x22c(%ebx)