4a326c:	52                   	push   %edx
4a326d:	e8 4e f1 ff ff       	call   0x4a23c0
4a3272:	89 46 04             	mov    %eax,0x4(%esi)
4a3275:	8b 44 24 20          	mov    0x20(%esp),%eax
4a3279:	83 c4 18             	add    $0x18,%esp
4a327c:	8b 08                	mov    (%eax),%ecx
4a327e:	50                   	push   %eax
4a327f:	ff 51 08             	call   *0x8(%ecx)
4a3282:	8b 44 24 10          	mov    0x10(%esp),%eax
4a3286:	25 ff ff 00 00       	and    $0xffff,%eax
4a328b:	3d 09 40 00 00       	cmp    $0x4009,%eax
4a3290:	7f 2a                	jg     0x4a32bc
4a3292:	74 1a                	je     0x4a32ae
4a3294:	83 f8 09             	cmp    $0x9,%eax
4a3297:	74 05                	je     0x4a329e
4a3299:	83 f8 0d             	cmp    $0xd,%eax
4a329c:	75 37                	jne    0x4a32d5
4a329e:	8b 54 24 18          	mov    0x18(%esp),%edx
4a32a2:	89 17                	mov    %edx,(%edi)
4a32a4:	8b 44 24 18          	mov    0x18(%esp),%eax
4a32a8:	85 c0                	test   %eax,%eax
4a32aa:	74 29                	je     0x4a32d5
4a32ac:	eb 21                	jmp    0x4a32cf
4a32ae:	8b 54 24 18          	mov    0x18(%esp),%edx
4a32b2:	8b 02                	mov    (%edx),%eax
4a32b4:	85 c0                	test   %eax,%eax
4a32b6:	89 07                	mov    %eax,(%edi)
4a32b8:	74 1b                	je     0x4a32d5
4a32ba:	eb 13                	jmp    0x4a32cf
4a32bc:	3d 0d 40 00 00       	cmp    $0x400d,%eax
4a32c1:	75 12                	jne    0x4a32d5
4a32c3:	8b 54 24 18          	mov    0x18(%esp),%edx
4a32c7:	8b 02                	mov    (%edx),%eax
4a32c9:	85 c0                	test   %eax,%eax
4a32cb:	89 07                	mov    %eax,(%edi)
4a32cd:	74 06                	je     0x4a32d5
4a32cf:	8b 08                	mov    (%eax),%ecx
4a32d1:	50                   	push   %eax
4a32d2:	ff 51 04             	call   *0x4(%ecx)
4a32d5:	8d 54 24 10          	lea    0x10(%esp),%edx
4a32d9:	52                   	push   %edx
4a32da:	ff 15 cc 31 4b 00    	call   *0x4b31cc
4a32e0:	8b c7                	mov    %edi,%eax
4a32e2:	5f                   	pop    %edi
4a32e3:	5e                   	pop    %esi
4a32e4:	83 c4 18             	add    $0x18,%esp
4a32e7:	c3                   	ret
4a32e8:	90                   	nop
4a32e9:	90                   	nop
4a32ea:	90                   	nop
4a32eb:	90                   	nop
4a32ec:	90                   	nop
4a32ed:	90                   	nop
4a32ee:	90                   	nop
4a32ef:	90                   	nop
4a32f0:	83 ec 08             	sub    $0x8,%esp
4a32f3:	56                   	push   %esi
4a32f4:	57                   	push   %edi
4a32f5:	6a 10                	push   $0x10
4a32f7:	e8 f4 d9 ff ff       	call   0x4a0cf0
4a32fc:	8b f8                	mov    %eax,%edi
4a32fe:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4a3302:	83 c4 04             	add    $0x4,%esp
4a3305:	8b f0                	mov    %eax,%esi
4a3307:	83 38 00             	cmpl   $0x0,(%eax)
4a330a:	75 0f                	jne    0x4a331b
4a330c:	c7 40 04 03 40 00 80 	movl   $0x80004003,0x4(%eax)
4a3313:	8b c7                	mov    %edi,%eax
4a3315:	5f                   	pop    %edi
4a3316:	5e                   	pop    %esi
4a3317:	83 c4 08             	add    $0x8,%esp
4a331a:	c3                   	ret
4a331b:	c7 44 24 08 00 00 00 	movl   $0x0,0x8(%esp)
4a3322:	00
4a3323:	8b 00                	mov    (%eax),%eax
4a3325:	8d 54 24 08          	lea    0x8(%esp),%edx
4a3329:	8b 08                	mov    (%eax),%ecx
4a332b:	52                   	push   %edx
4a332c:	68 b0 35 4b 00       	push   $0x4b35b0
4a3331:	50                   	push   %eax
4a3332:	ff 11                	call   *(%ecx)
4a3334:	85 c0                	test   %eax,%eax
4a3336:	89 46 04             	mov    %eax,0x4(%esi)
4a3339:	74 08                	je     0x4a3343
4a333b:	8b c7                	mov    %edi,%eax
4a333d:	5f                   	pop    %edi
4a333e:	5e                   	pop    %esi
4a333f:	83 c4 08             	add    $0x8,%esp
4a3342:	c3                   	ret
4a3343:	8b 4c 24 24          	mov    0x24(%esp),%ecx
4a3347:	8b 54 24 08          	mov    0x8(%esp),%edx
4a334b:	8d 44 24 0c          	lea    0xc(%esp),%eax
4a334f:	50                   	push   %eax
4a3350:	51                   	push   %ecx
4a3351:	52                   	push   %edx
4a3352:	e8 19 f0 ff ff       	call   0x4a2370
4a3357:	83 c4 0c             	add    $0xc,%esp
4a335a:	89 46 04             	mov    %eax,0x4(%esi)
4a335d:	85 c0                	test   %eax,%eax
4a335f:	74 08                	je     0x4a3369
4a3361:	8b c7                	mov    %edi,%eax
4a3363:	5f                   	pop    %edi
4a3364:	5e                   	pop    %esi
4a3365:	83 c4 08             	add    $0x8,%esp
4a3368:	c3                   	ret
4a3369:	8b 44 24 14          	mov    0x14(%esp),%eax
4a336d:	8d 48 fe             	lea    -0x2(%eax),%ecx
4a3370:	48                   	dec    %eax
4a3371:	83 f8 02             	cmp    $0x2,%eax
4a3374:	7c 16                	jl     0x4a338c
4a3376:	8d 14 40             	lea    (%eax,%eax,2),%edx
4a3379:	8d 54 94 20          	lea    0x20(%esp,%edx,4),%edx
4a337d:	83 3a 00             	cmpl   $0x0,(%edx)
4a3380:	75 0a                	jne    0x4a338c
4a3382:	49                   	dec    %ecx
4a3383:	48                   	dec    %eax
4a3384:	83 ea 0c             	sub    $0xc,%edx
4a3387:	83 f8 02             	cmp    $0x2,%eax
4a338a:	7d f1                	jge    0x4a337d
4a338c:	8b 54 24 08          	mov    0x8(%esp),%edx
4a3390:	8d 44 24 30          	lea    0x30(%esp),%eax
4a3394:	50                   	push   %eax
4a3395:	51                   	push   %ecx
4a3396:	8b 4c 24 14          	mov    0x14(%esp),%ecx
4a339a:	57                   	push   %edi
4a339b:	6a 02                	push   $0x2
4a339d:	51                   	push   %ecx
4a339e:	52                   	push   %edx
4a339f:	e8 1c f0 ff ff       	call   0x4a23c0
4a33a4:	89 46 04             	mov    %eax,0x4(%esi)
4a33a7:	8b 44 24 20          	mov    0x20(%esp),%eax
4a33ab:	83 c4 18             	add    $0x18,%esp
4a33ae:	8b 08                	mov    (%eax),%ecx
4a33b0:	50                   	push   %eax
4a33b1:	ff 51 08             	call   *0x8(%ecx)
4a33b4:	8b c7                	mov    %edi,%eax
4a33b6:	5f                   	pop    %edi
4a33b7:	5e                   	pop    %esi
4a33b8:	83 c4 08             	add    $0x8,%esp
4a33bb:	c3                   	ret
4a33bc:	90                   	nop
4a33bd:	90                   	nop
4a33be:	90                   	nop
4a33bf:	90                   	nop
4a33c0:	8b 44 24 08          	mov    0x8(%esp),%eax
4a33c4:	83 ec 08             	sub    $0x8,%esp
4a33c7:	8b 08                	mov    (%eax),%ecx
4a33c9:	56                   	push   %esi
4a33ca:	85 c9                	test   %ecx,%ecx
4a33cc:	8b f0                	mov    %eax,%esi
4a33ce:	75 0e                	jne    0x4a33de
4a33d0:	c7 40 04 03 40 00 80 	movl   $0x80004003,0x4(%eax)
4a33d7:	33 c0                	xor    %eax,%eax
4a33d9:	5e                   	pop    %esi
4a33da:	83 c4 08             	add    $0x8,%esp
4a33dd:	c3                   	ret
4a33de:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
4a33e5:	00
4a33e6:	8b 00                	mov    (%eax),%eax
4a33e8:	8d 54 24 04          	lea    0x4(%esp),%edx
4a33ec:	8b 08                	mov    (%eax),%ecx
4a33ee:	52                   	push   %edx
4a33ef:	68 b0 35 4b 00       	push   $0x4b35b0
4a33f4:	50                   	push   %eax
4a33f5:	ff 11                	call   *(%ecx)
4a33f7:	85 c0                	test   %eax,%eax
4a33f9:	89 46 04             	mov    %eax,0x4(%esi)
4a33fc:	74 07                	je     0x4a3405
4a33fe:	33 c0                	xor    %eax,%eax
4a3400:	5e                   	pop    %esi
4a3401:	83 c4 08             	add    $0x8,%esp
4a3404:	c3                   	ret
4a3405:	8b 4c 24 20          	mov    0x20(%esp),%ecx
4a3409:	8b 54 24 04          	mov    0x4(%esp),%edx
4a340d:	8d 44 24 08          	lea    0x8(%esp),%eax
4a3411:	50                   	push   %eax
4a3412:	51                   	push   %ecx
4a3413:	52                   	push   %edx
4a3414:	e8 57 ef ff ff       	call   0x4a2370
4a3419:	83 c4 0c             	add    $0xc,%esp
4a341c:	89 46 04             	mov    %eax,0x4(%esi)
4a341f:	85 c0                	test   %eax,%eax
4a3421:	74 07                	je     0x4a342a
4a3423:	33 c0                	xor    %eax,%eax
4a3425:	5e                   	pop    %esi
4a3426:	83 c4 08             	add    $0x8,%esp
4a3429:	c3                   	ret
4a342a:	8b 44 24 10          	mov    0x10(%esp),%eax
4a342e:	8d 48 fe             	lea    -0x2(%eax),%ecx
4a3431:	48                   	dec    %eax
4a3432:	83 f8 02             	cmp    $0x2,%eax
4a3435:	7c 16                	jl     0x4a344d
4a3437:	8d 14 40             	lea    (%eax,%eax,2),%edx
4a343a:	8d 54 94 1c          	lea    0x1c(%esp,%edx,4),%edx
4a343e:	83 3a 00             	cmpl   $0x0,(%edx)
4a3441:	75 0a                	jne    0x4a344d
4a3443:	49                   	dec    %ecx
4a3444:	48                   	dec    %eax
4a3445:	83 ea 0c             	sub    $0xc,%edx
4a3448:	83 f8 02             	cmp    $0x2,%eax
4a344b:	7d f1                	jge    0x4a343e
4a344d:	8b 54 24 04          	mov    0x4(%esp),%edx
4a3451:	8d 44 24 2c          	lea    0x2c(%esp),%eax
4a3455:	50                   	push   %eax
4a3456:	51                   	push   %ecx
4a3457:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4a345b:	6a 00                	push   $0x0
4a345d:	6a 04                	push   $0x4
4a345f:	51                   	push   %ecx
4a3460:	52                   	push   %edx
4a3461:	e8 5a ef ff ff       	call   0x4a23c0
4a3466:	89 46 04             	mov    %eax,0x4(%esi)
4a3469:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4a346d:	83 c4 18             	add    $0x18,%esp
4a3470:	8b 08                	mov    (%eax),%ecx
4a3472:	50                   	push   %eax
4a3473:	ff 51 08             	call   *0x8(%ecx)
4a3476:	8b 4e 04             	mov    0x4(%esi),%ecx
4a3479:	33 c0                	xor    %eax,%eax
4a347b:	85 c9                	test   %ecx,%ecx
4a347d:	5e                   	pop    %esi
4a347e:	0f 94 c0             	sete   %al
4a3481:	83 c4 08             	add    $0x8,%esp
4a3484:	c3                   	ret
4a3485:	90                   	nop
4a3486:	90                   	nop
4a3487:	90                   	nop
4a3488:	90                   	nop
4a3489:	90                   	nop
4a348a:	90                   	nop
4a348b:	90                   	nop
4a348c:	90                   	nop
4a348d:	90                   	nop
4a348e:	90                   	nop
4a348f:	90                   	nop
4a3490:	8b 44 24 08          	mov    0x8(%esp),%eax
4a3494:	83 ec 18             	sub    $0x18,%esp
4a3497:	8b 08                	mov    (%eax),%ecx
4a3499:	56                   	push   %esi
4a349a:	85 c9                	test   %ecx,%ecx
4a349c:	8b f0                	mov    %eax,%esi
4a349e:	75 0c                	jne    0x4a34ac
4a34a0:	c7 40 04 03 40 00 80 	movl   $0x80004003,0x4(%eax)
4a34a7:	5e                   	pop    %esi
4a34a8:	83 c4 18             	add    $0x18,%esp
4a34ab:	c3                   	ret
4a34ac:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
4a34b3:	00
4a34b4:	8b 00                	mov    (%eax),%eax
4a34b6:	8d 54 24 04          	lea    0x4(%esp),%edx
4a34ba:	8b 08                	mov    (%eax),%ecx
4a34bc:	52                   	push   %edx
4a34bd:	68 b0 35 4b 00       	push   $0x4b35b0
4a34c2:	50                   	push   %eax
4a34c3:	ff 11                	call   *(%ecx)
4a34c5:	85 c0                	test   %eax,%eax
4a34c7:	89 46 04             	mov    %eax,0x4(%esi)
4a34ca:	0f 85 92 00 00 00    	jne    0x4a3562
4a34d0:	8b 4c 24 30          	mov    0x30(%esp),%ecx
4a34d4:	8b 54 24 04          	mov    0x4(%esp),%edx
4a34d8:	8d 44 24 08          	lea    0x8(%esp),%eax
4a34dc:	50                   	push   %eax
4a34dd:	51                   	push   %ecx
4a34de:	52                   	push   %edx
4a34df:	e8 8c ee ff ff       	call   0x4a2370
4a34e4:	83 c4 0c             	add    $0xc,%esp
4a34e7:	89 46 04             	mov    %eax,0x4(%esi)
4a34ea:	85 c0                	test   %eax,%eax
4a34ec:	75 74                	jne    0x4a3562
4a34ee:	8b 44 24 20          	mov    0x20(%esp),%eax
4a34f2:	8d 50 fe             	lea    -0x2(%eax),%edx
4a34f5:	48                   	dec    %eax
4a34f6:	83 f8 02             	cmp    $0x2,%eax
4a34f9:	7c 16                	jl     0x4a3511
4a34fb:	8d 0c 40             	lea    (%eax,%eax,2),%ecx
4a34fe:	8d 4c 8c 2c          	lea    0x2c(%esp,%ecx,4),%ecx
4a3502:	83 39 00             	cmpl   $0x0,(%ecx)
4a3505:	75 0a                	jne    0x4a3511
4a3507:	4a                   	dec    %edx
4a3508:	48                   	dec    %eax
4a3509:	83 e9 0c             	sub    $0xc,%ecx
4a350c:	83 f8 02             	cmp    $0x2,%eax
4a350f:	7d f1                	jge    0x4a3502
4a3511:	33 c0                	xor    %eax,%eax
4a3513:	8d 4c 24 3c          	lea    0x3c(%esp),%ecx
4a3517:	89 44 24 0c          	mov    %eax,0xc(%esp)
4a351b:	51                   	push   %ecx
4a351c:	8b 4c 24 08          	mov    0x8(%esp),%ecx
4a3520:	89 44 24 14          	mov    %eax,0x14(%esp)
4a3524:	89 44 24 18          	mov    %eax,0x18(%esp)
4a3528:	52                   	push   %edx
4a3529:	8d 54 24 14          	lea    0x14(%esp),%edx
4a352d:	89 44 24 20          	mov    %eax,0x20(%esp)
4a3531:	8b 44 24 10          	mov    0x10(%esp),%eax
4a3535:	52                   	push   %edx
4a3536:	6a 01                	push   $0x1
4a3538:	50                   	push   %eax
4a3539:	51                   	push   %ecx
4a353a:	e8 81 ee ff ff       	call   0x4a23c0
4a353f:	89 46 04             	mov    %eax,0x4(%esi)
4a3542:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4a3546:	83 c4 18             	add    $0x18,%esp
4a3549:	8b 10                	mov    (%eax),%edx
4a354b:	50                   	push   %eax
4a354c:	ff 52 08             	call   *0x8(%edx)
4a354f:	66 83 7c 24 0c 00    	cmpw   $0x0,0xc(%esp)
4a3555:	74 0b                	je     0x4a3562
4a3557:	8d 44 24 0c          	lea    0xc(%esp),%eax
4a355b:	50                   	push   %eax
4a355c:	ff 15 cc 31 4b 00    	call   *0x4b31cc
4a3562:	5e                   	pop    %esi
4a3563:	83 c4 18             	add    $0x18,%esp
4a3566:	c3                   	ret
4a3567:	90                   	nop
4a3568:	90                   	nop
4a3569:	90                   	nop
4a356a:	90                   	nop
4a356b:	90                   	nop
4a356c:	90                   	nop
4a356d:	90                   	nop
4a356e:	90                   	nop
4a356f:	90                   	nop
4a3570:	8b 44 24 08          	mov    0x8(%esp),%eax
4a3574:	83 ec 28             	sub    $0x28,%esp
4a3577:	8b 08                	mov    (%eax),%ecx
4a3579:	56                   	push   %esi
4a357a:	85 c9                	test   %ecx,%ecx
4a357c:	8b f0                	mov    %eax,%esi
4a357e:	75 0e                	jne    0x4a358e
4a3580:	c7 40 04 03 40 00 80 	movl   $0x80004003,0x4(%eax)
4a3587:	33 c0                	xor    %eax,%eax
4a3589:	5e                   	pop    %esi
4a358a:	83 c4 28             	add    $0x28,%esp
4a358d:	c3                   	ret
4a358e:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
4a3595:	00
4a3596:	8b 00                	mov    (%eax),%eax
4a3598:	8d 54 24 04          	lea    0x4(%esp),%edx
4a359c:	8b 08                	mov    (%eax),%ecx
4a359e:	52                   	push   %edx
4a359f:	68 b0 35 4b 00       	push   $0x4b35b0
4a35a4:	50                   	push   %eax
4a35a5:	ff 11                	call   *(%ecx)
4a35a7:	85 c0                	test   %eax,%eax
4a35a9:	89 46 04             	mov    %eax,0x4(%esi)
4a35ac:	74 07                	je     0x4a35b5
4a35ae:	33 c0                	xor    %eax,%eax
4a35b0:	5e                   	pop    %esi
4a35b1:	83 c4 28             	add    $0x28,%esp
4a35b4:	c3                   	ret