4c22bd:	ff 50 48             	call   *0x48(%eax)
4c22c0:	3b 70 04             	cmp    0x4(%eax),%esi
4c22c3:	5e                   	pop    %esi
4c22c4:	75 10                	jne    0x4c22d6
4c22c6:	57                   	push   %edi
4c22c7:	8b cb                	mov    %ebx,%ecx
4c22c9:	e8 22 9f 00 00       	call   0x4cc1f0
4c22ce:	5f                   	pop    %edi
4c22cf:	5b                   	pop    %ebx
4c22d0:	8b e5                	mov    %ebp,%esp
4c22d2:	5d                   	pop    %ebp
4c22d3:	c2 04 00             	ret    $0x4
4c22d6:	53                   	push   %ebx
4c22d7:	57                   	push   %edi
4c22d8:	e8 33 84 fa ff       	call   0x46a710
4c22dd:	83 c4 08             	add    $0x8,%esp
4c22e0:	5f                   	pop    %edi
4c22e1:	5b                   	pop    %ebx
4c22e2:	8b e5                	mov    %ebp,%esp
4c22e4:	5d                   	pop    %ebp
4c22e5:	c2 04 00             	ret    $0x4
4c22e8:	cc                   	int3
4c22e9:	cc                   	int3
4c22ea:	cc                   	int3
4c22eb:	cc                   	int3
4c22ec:	cc                   	int3
4c22ed:	cc                   	int3
4c22ee:	cc                   	int3
4c22ef:	cc                   	int3
4c22f0:	55                   	push   %ebp
4c22f1:	8b ec                	mov    %esp,%ebp
4c22f3:	51                   	push   %ecx
4c22f4:	8b c1                	mov    %ecx,%eax
4c22f6:	53                   	push   %ebx
4c22f7:	89 45 fc             	mov    %eax,-0x4(%ebp)
4c22fa:	8b 58 0c             	mov    0xc(%eax),%ebx
4c22fd:	85 db                	test   %ebx,%ebx
4c22ff:	7e 29                	jle    0x4c232a
4c2301:	56                   	push   %esi
4c2302:	57                   	push   %edi
4c2303:	8b 78 14             	mov    0x14(%eax),%edi
4c2306:	33 f6                	xor    %esi,%esi
4c2308:	0f 1f 84 00 00 00 00 	nopl   0x0(%eax,%eax,1)
4c230f:	00
4c2310:	8b 4c b7 04          	mov    0x4(%edi,%esi,4),%ecx
4c2314:	e8 c7 f8 ff ff       	call   0x4c1be0
4c2319:	46                   	inc    %esi
4c231a:	3b f3                	cmp    %ebx,%esi
4c231c:	7c f2                	jl     0x4c2310
4c231e:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c2321:	5f                   	pop    %edi
4c2322:	5e                   	pop    %esi
4c2323:	c7 40 0c 00 00 00 00 	movl   $0x0,0xc(%eax)
4c232a:	f6 40 04 01          	testb  $0x1,0x4(%eax)
4c232e:	8d 48 04             	lea    0x4(%eax),%ecx
4c2331:	5b                   	pop    %ebx
4c2332:	74 05                	je     0x4c2339
4c2334:	e8 77 e3 f8 ff       	call   0x4506b0
4c2339:	8b e5                	mov    %ebp,%esp
4c233b:	5d                   	pop    %ebp
4c233c:	c3                   	ret
4c233d:	cc                   	int3
4c233e:	cc                   	int3
4c233f:	cc                   	int3
4c2340:	55                   	push   %ebp
4c2341:	8b ec                	mov    %esp,%ebp
4c2343:	83 ec 08             	sub    $0x8,%esp
4c2346:	8b c1                	mov    %ecx,%eax
4c2348:	53                   	push   %ebx
4c2349:	56                   	push   %esi
4c234a:	89 45 fc             	mov    %eax,-0x4(%ebp)
4c234d:	8b 48 14             	mov    0x14(%eax),%ecx
4c2350:	8b 58 0c             	mov    0xc(%eax),%ebx
4c2353:	85 c9                	test   %ecx,%ecx
4c2355:	74 09                	je     0x4c2360
4c2357:	83 c1 04             	add    $0x4,%ecx
4c235a:	8b d1                	mov    %ecx,%edx
4c235c:	8b f1                	mov    %ecx,%esi
4c235e:	eb 06                	jmp    0x4c2366
4c2360:	33 d2                	xor    %edx,%edx
4c2362:	33 f6                	xor    %esi,%esi
4c2364:	33 c9                	xor    %ecx,%ecx
4c2366:	57                   	push   %edi
4c2367:	8d 3c 99             	lea    (%ecx,%ebx,4),%edi
4c236a:	3b d7                	cmp    %edi,%edx
4c236c:	74 2b                	je     0x4c2399
4c236e:	66 90                	xchg   %ax,%ax
4c2370:	8b 0e                	mov    (%esi),%ecx
4c2372:	e8 e9 f8 ff ff       	call   0x4c1c60
4c2377:	8b c8                	mov    %eax,%ecx
4c2379:	83 c6 04             	add    $0x4,%esi
4c237c:	83 c8 01             	or     $0x1,%eax
4c237f:	0f bd c0             	bsr    %eax,%eax
4c2382:	89 45 f8             	mov    %eax,-0x8(%ebp)
4c2385:	8d 04 c0             	lea    (%eax,%eax,8),%eax
4c2388:	83 c0 49             	add    $0x49,%eax
4c238b:	c1 e8 06             	shr    $0x6,%eax
4c238e:	03 c1                	add    %ecx,%eax
4c2390:	03 d8                	add    %eax,%ebx
4c2392:	3b f7                	cmp    %edi,%esi
4c2394:	75 da                	jne    0x4c2370
4c2396:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c2399:	8d 48 04             	lea    0x4(%eax),%ecx
4c239c:	83 c0 18             	add    $0x18,%eax
4c239f:	f6 01 01             	testb  $0x1,(%ecx)
4c23a2:	5f                   	pop    %edi
4c23a3:	74 11                	je     0x4c23b6
4c23a5:	50                   	push   %eax
4c23a6:	53                   	push   %ebx
4c23a7:	51                   	push   %ecx
4c23a8:	e8 03 d1 fa ff       	call   0x46f4b0
4c23ad:	83 c4 0c             	add    $0xc,%esp
4c23b0:	5e                   	pop    %esi
4c23b1:	5b                   	pop    %ebx
4c23b2:	8b e5                	mov    %ebp,%esp
4c23b4:	5d                   	pop    %ebp
4c23b5:	c3                   	ret
4c23b6:	89 18                	mov    %ebx,(%eax)
4c23b8:	8b c3                	mov    %ebx,%eax
4c23ba:	5e                   	pop    %esi
4c23bb:	5b                   	pop    %ebx
4c23bc:	8b e5                	mov    %ebp,%esp
4c23be:	5d                   	pop    %ebp
4c23bf:	c3                   	ret
4c23c0:	55                   	push   %ebp
4c23c1:	8b ec                	mov    %esp,%ebp
4c23c3:	83 ec 28             	sub    $0x28,%esp
4c23c6:	53                   	push   %ebx
4c23c7:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4c23ca:	56                   	push   %esi
4c23cb:	8b 75 08             	mov    0x8(%ebp),%esi
4c23ce:	57                   	push   %edi
4c23cf:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4c23d2:	3b 33                	cmp    (%ebx),%esi
4c23d4:	72 2a                	jb     0x4c2400
4c23d6:	8b c6                	mov    %esi,%eax
4c23d8:	2b 43 04             	sub    0x4(%ebx),%eax
4c23db:	3b 43 10             	cmp    0x10(%ebx),%eax
4c23de:	0f 84 c8 01 00 00    	je     0x4c25ac
4c23e4:	ff 73 48             	push   0x48(%ebx)
4c23e7:	8b cb                	mov    %ebx,%ecx
4c23e9:	50                   	push   %eax
4c23ea:	8d 45 e8             	lea    -0x18(%ebp),%eax
4c23ed:	50                   	push   %eax
4c23ee:	e8 3d cb f9 ff       	call   0x45ef30
4c23f3:	80 7d ec 00          	cmpb   $0x0,-0x14(%ebp)
4c23f7:	8b 75 e8             	mov    -0x18(%ebp),%esi
4c23fa:	0f 85 b8 01 00 00    	jne    0x4c25b8
4c2400:	0f b6 16             	movzbl (%esi),%edx
4c2403:	8d 7e 01             	lea    0x1(%esi),%edi
4c2406:	89 55 fc             	mov    %edx,-0x4(%ebp)
4c2409:	81 fa 80 00 00 00    	cmp    $0x80,%edx
4c240f:	72 34                	jb     0x4c2445
4c2411:	0f b6 0f             	movzbl (%edi),%ecx
4c2414:	83 c2 80             	add    $0xffffff80,%edx
4c2417:	8b c1                	mov    %ecx,%eax
4c2419:	c1 e0 07             	shl    $0x7,%eax
4c241c:	03 d0                	add    %eax,%edx
4c241e:	89 55 fc             	mov    %edx,-0x4(%ebp)
4c2421:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
4c2427:	73 05                	jae    0x4c242e
4c2429:	8d 7e 02             	lea    0x2(%esi),%edi
4c242c:	eb 17                	jmp    0x4c2445
4c242e:	52                   	push   %edx
4c242f:	8d 45 e0             	lea    -0x20(%ebp),%eax
4c2432:	56                   	push   %esi
4c2433:	50                   	push   %eax
4c2434:	e8 a7 d5 f9 ff       	call   0x45f9e0
4c2439:	8b 55 e4             	mov    -0x1c(%ebp),%edx
4c243c:	83 c4 0c             	add    $0xc,%esp
4c243f:	8b 7d e0             	mov    -0x20(%ebp),%edi
4c2442:	89 55 fc             	mov    %edx,-0x4(%ebp)
4c2445:	85 ff                	test   %edi,%edi
4c2447:	0f 84 54 01 00 00    	je     0x4c25a1
4c244d:	8b c2                	mov    %edx,%eax
4c244f:	c1 e8 03             	shr    $0x3,%eax
4c2452:	83 e8 01             	sub    $0x1,%eax
4c2455:	0f 85 05 01 00 00    	jne    0x4c2560
4c245b:	80 fa 0a             	cmp    $0xa,%dl
4c245e:	0f 85 fc 00 00 00    	jne    0x4c2560
4c2464:	8d 77 ff             	lea    -0x1(%edi),%esi
4c2467:	8b 7d f8             	mov    -0x8(%ebp),%edi
4c246a:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
4c2470:	8b 4f 14             	mov    0x14(%edi),%ecx
4c2473:	46                   	inc    %esi
4c2474:	85 c9                	test   %ecx,%ecx
4c2476:	74 1d                	je     0x4c2495
4c2478:	8b 57 0c             	mov    0xc(%edi),%edx
4c247b:	8b 01                	mov    (%ecx),%eax
4c247d:	3b d0                	cmp    %eax,%edx
4c247f:	7d 0f                	jge    0x4c2490
4c2481:	8b 44 91 04          	mov    0x4(%ecx,%edx,4),%eax
4c2485:	89 45 fc             	mov    %eax,-0x4(%ebp)
4c2488:	8d 42 01             	lea    0x1(%edx),%eax
4c248b:	89 47 0c             	mov    %eax,0xc(%edi)
4c248e:	eb 37                	jmp    0x4c24c7
4c2490:	3b 47 10             	cmp    0x10(%edi),%eax
4c2493:	75 12                	jne    0x4c24a7
4c2495:	8b 47 10             	mov    0x10(%edi),%eax
4c2498:	8d 4f 08             	lea    0x8(%edi),%ecx
4c249b:	40                   	inc    %eax
4c249c:	50                   	push   %eax
4c249d:	e8 ee b3 f9 ff       	call   0x45d890
4c24a2:	8b 4f 14             	mov    0x14(%edi),%ecx
4c24a5:	8b 01                	mov    (%ecx),%eax
4c24a7:	40                   	inc    %eax
4c24a8:	89 01                	mov    %eax,(%ecx)
4c24aa:	ff 77 08             	push   0x8(%edi)
4c24ad:	e8 8e 59 00 00       	call   0x4c7e40
4c24b2:	8b 4f 0c             	mov    0xc(%edi),%ecx
4c24b5:	8b d0                	mov    %eax,%edx
4c24b7:	8b 47 14             	mov    0x14(%edi),%eax
4c24ba:	83 c4 04             	add    $0x4,%esp
4c24bd:	89 55 fc             	mov    %edx,-0x4(%ebp)
4c24c0:	89 54 88 04          	mov    %edx,0x4(%eax,%ecx,4)
4c24c4:	ff 47 0c             	incl   0xc(%edi)
4c24c7:	0f b6 06             	movzbl (%esi),%eax
4c24ca:	3d 80 00 00 00       	cmp    $0x80,%eax
4c24cf:	73 03                	jae    0x4c24d4
4c24d1:	46                   	inc    %esi
4c24d2:	eb 14                	jmp    0x4c24e8
4c24d4:	50                   	push   %eax
4c24d5:	8d 45 d8             	lea    -0x28(%ebp),%eax
4c24d8:	56                   	push   %esi
4c24d9:	50                   	push   %eax
4c24da:	e8 91 d3 f9 ff       	call   0x45f870
4c24df:	8b 75 d8             	mov    -0x28(%ebp),%esi
4c24e2:	83 c4 0c             	add    $0xc,%esp
4c24e5:	8b 45 dc             	mov    -0x24(%ebp),%eax
4c24e8:	85 f6                	test   %esi,%esi
4c24ea:	0f 84 b1 00 00 00    	je     0x4c25a1
4c24f0:	2b 43 04             	sub    0x4(%ebx),%eax
4c24f3:	8d 14 30             	lea    (%eax,%esi,1),%edx
4c24f6:	33 c0                	xor    %eax,%eax
4c24f8:	85 d2                	test   %edx,%edx
4c24fa:	89 55 f0             	mov    %edx,-0x10(%ebp)
4c24fd:	0f 48 c2             	cmovs  %edx,%eax
4c2500:	03 43 04             	add    0x4(%ebx),%eax
4c2503:	83 43 44 ff          	addl   $0xffffffff,0x44(%ebx)
4c2507:	89 03                	mov    %eax,(%ebx)
4c2509:	8b 43 10             	mov    0x10(%ebx),%eax
4c250c:	89 45 f4             	mov    %eax,-0xc(%ebp)
4c250f:	89 53 10             	mov    %edx,0x10(%ebx)
4c2512:	0f 88 89 00 00 00    	js     0x4c25a1
4c2518:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4c251b:	53                   	push   %ebx
4c251c:	56                   	push   %esi
4c251d:	e8 8e f8 ff ff       	call   0x4c1db0
4c2522:	8b f0                	mov    %eax,%esi
4c2524:	85 f6                	test   %esi,%esi
4c2526:	74 79                	je     0x4c25a1
4c2528:	ff 43 44             	incl   0x44(%ebx)
4c252b:	83 7b 3c 00          	cmpl   $0x0,0x3c(%ebx)
4c252f:	75 70                	jne    0x4c25a1
4c2531:	8b 45 f4             	mov    -0xc(%ebp),%eax
4c2534:	b9 00 00 00 00       	mov    $0x0,%ecx
4c2539:	2b 45 f0             	sub    -0x10(%ebp),%eax
4c253c:	01 43 10             	add    %eax,0x10(%ebx)
4c253f:	8b 43 04             	mov    0x4(%ebx),%eax
4c2542:	0f 48 4b 10          	cmovs  0x10(%ebx),%ecx
4c2546:	03 c1                	add    %ecx,%eax
4c2548:	89 03                	mov    %eax,(%ebx)
4c254a:	3b f0                	cmp    %eax,%esi
4c254c:	0f 83 80 fe ff ff    	jae    0x4c23d2
4c2552:	80 3e 0a             	cmpb   $0xa,(%esi)
4c2555:	0f 84 15 ff ff ff    	je     0x4c2470
4c255b:	e9 72 fe ff ff       	jmp    0x4c23d2
4c2560:	8b c2                	mov    %edx,%eax
4c2562:	24 07                	and    $0x7,%al
4c2564:	3c 04                	cmp    $0x4,%al
4c2566:	74 5b                	je     0x4c25c3
4c2568:	85 d2                	test   %edx,%edx
4c256a:	74 57                	je     0x4c25c3
4c256c:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4c256f:	83 c1 04             	add    $0x4,%ecx
4c2572:	f6 01 01             	testb  $0x1,(%ecx)
4c2575:	74 0a                	je     0x4c2581
4c2577:	8b 01                	mov    (%ecx),%eax
4c2579:	83 e0 fc             	and    $0xfffffffc,%eax
4c257c:	83 c0 04             	add    $0x4,%eax
4c257f:	eb 08                	jmp    0x4c2589
4c2581:	e8 aa e6 f8 ff       	call   0x450c30
4c2586:	8b 55 fc             	mov    -0x4(%ebp),%edx
4c2589:	53                   	push   %ebx
4c258a:	57                   	push   %edi
4c258b:	50                   	push   %eax
4c258c:	6a 00                	push   $0x0
4c258e:	52                   	push   %edx
4c258f:	e8 1c ea f9 ff       	call   0x460fb0
4c2594:	8b f0                	mov    %eax,%esi
4c2596:	83 c4 14             	add    $0x14,%esp
4c2599:	85 f6                	test   %esi,%esi
4c259b:	0f 85 31 fe ff ff    	jne    0x4c23d2
4c25a1:	33 c0                	xor    %eax,%eax
4c25a3:	5f                   	pop    %edi
4c25a4:	5e                   	pop    %esi
4c25a5:	5b                   	pop    %ebx
4c25a6:	8b e5                	mov    %ebp,%esp
4c25a8:	5d                   	pop    %ebp
4c25a9:	c2 08 00             	ret    $0x8
4c25ac:	85 c0                	test   %eax,%eax
4c25ae:	7e 08                	jle    0x4c25b8
4c25b0:	33 c0                	xor    %eax,%eax
4c25b2:	39 43 08             	cmp    %eax,0x8(%ebx)
4c25b5:	0f 44 f0             	cmove  %eax,%esi
4c25b8:	5f                   	pop    %edi
4c25b9:	8b c6                	mov    %esi,%eax
4c25bb:	5e                   	pop    %esi
4c25bc:	5b                   	pop    %ebx
4c25bd:	8b e5                	mov    %ebp,%esp
4c25bf:	5d                   	pop    %ebp
4c25c0:	c2 08 00             	ret    $0x8
4c25c3:	8b c7                	mov    %edi,%eax
4c25c5:	8d 4a ff             	lea    -0x1(%edx),%ecx
4c25c8:	5f                   	pop    %edi
4c25c9:	5e                   	pop    %esi
4c25ca:	89 4b 3c             	mov    %ecx,0x3c(%ebx)
4c25cd:	5b                   	pop    %ebx
4c25ce:	8b e5                	mov    %ebp,%esp
4c25d0:	5d                   	pop    %ebp
4c25d1:	c2 08 00             	ret    $0x8
4c25d4:	cc                   	int3
4c25d5:	cc                   	int3
4c25d6:	cc                   	int3
4c25d7:	cc                   	int3
4c25d8:	cc                   	int3
4c25d9:	cc                   	int3
4c25da:	cc                   	int3
4c25db:	cc                   	int3
4c25dc:	cc                   	int3
4c25dd:	cc                   	int3
4c25de:	cc                   	int3
4c25df:	cc                   	int3
4c25e0:	55                   	push   %ebp
4c25e1:	8b ec                	mov    %esp,%ebp
4c25e3:	83 ec 08             	sub    $0x8,%esp
4c25e6:	8b 45 08             	mov    0x8(%ebp),%eax
4c25e9:	53                   	push   %ebx
4c25ea:	56                   	push   %esi
4c25eb:	8b f1                	mov    %ecx,%esi
4c25ed:	33 db                	xor    %ebx,%ebx
4c25ef:	57                   	push   %edi
4c25f0:	8b 7d 0c             	mov    0xc(%ebp),%edi
4c25f3:	89 75 fc             	mov    %esi,-0x4(%ebp)
4c25f6:	8b 4e 0c             	mov    0xc(%esi),%ecx
4c25f9:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4c25fc:	85 c9                	test   %ecx,%ecx
4c25fe:	74 3a                	je     0x4c263a
4c2600:	3b 07                	cmp    (%edi),%eax
4c2602:	72 08                	jb     0x4c260c