4415c7:	33 c9                	xor    %ecx,%ecx
4415c9:	66 89 48 1a          	mov    %cx,0x1a(%eax)
4415cd:	8b 46 0c             	mov    0xc(%esi),%eax
4415d0:	59                   	pop    %ecx
4415d1:	89 50 1c             	mov    %edx,0x1c(%eax)
4415d4:	8b 46 0c             	mov    0xc(%esi),%eax
4415d7:	6a 13                	push   $0x13
4415d9:	89 50 20             	mov    %edx,0x20(%eax)
4415dc:	8b 46 0c             	mov    0xc(%esi),%eax
4415df:	89 4d 08             	mov    %ecx,0x8(%ebp)
4415e2:	89 50 24             	mov    %edx,0x24(%eax)
4415e5:	8b 46 0c             	mov    0xc(%esi),%eax
4415e8:	83 48 28 ff          	orl    $0xffffffff,0x28(%eax)
4415ec:	8b 46 0c             	mov    0xc(%esi),%eax
4415ef:	89 78 2c             	mov    %edi,0x2c(%eax)
4415f2:	8b 46 0c             	mov    0xc(%esi),%eax
4415f5:	5f                   	pop    %edi
4415f6:	89 50 30             	mov    %edx,0x30(%eax)
4415f9:	8b 46 0c             	mov    0xc(%esi),%eax
4415fc:	66 89 48 34          	mov    %cx,0x34(%eax)
441600:	8b 46 0c             	mov    0xc(%esi),%eax
441603:	66 89 78 36          	mov    %di,0x36(%eax)
441607:	8b 46 08             	mov    0x8(%esi),%eax
44160a:	8b f9                	mov    %ecx,%edi
44160c:	89 10                	mov    %edx,(%eax)
44160e:	8b 46 08             	mov    0x8(%esi),%eax
441611:	89 50 04             	mov    %edx,0x4(%eax)
441614:	39 56 24             	cmp    %edx,0x24(%esi)
441617:	0f 84 30 01 00 00    	je     0x44174d
44161d:	8b 46 0c             	mov    0xc(%esi),%eax
441620:	6a 05                	push   $0x5
441622:	c7 40 38 0c 32 4b 00 	movl   $0x4b320c,0x38(%eax)
441629:	8b 46 0c             	mov    0xc(%esi),%eax
44162c:	5f                   	pop    %edi
44162d:	c7 40 40 01 00 00 00 	movl   $0x1,0x40(%eax)
441634:	8b 46 0c             	mov    0xc(%esi),%eax
441637:	6a 03                	push   $0x3
441639:	89 50 44             	mov    %edx,0x44(%eax)
44163c:	8b 46 0c             	mov    0xc(%esi),%eax
44163f:	89 7d 08             	mov    %edi,0x8(%ebp)
441642:	c7 40 48 04 00 00 00 	movl   $0x4,0x48(%eax)
441649:	8b 46 0c             	mov    0xc(%esi),%eax
44164c:	89 48 4c             	mov    %ecx,0x4c(%eax)
44164f:	8b 46 0c             	mov    0xc(%esi),%eax
441652:	33 c9                	xor    %ecx,%ecx
441654:	41                   	inc    %ecx
441655:	66 89 48 50          	mov    %cx,0x50(%eax)
441659:	8b 46 0c             	mov    0xc(%esi),%eax
44165c:	59                   	pop    %ecx
44165d:	6a 10                	push   $0x10
44165f:	66 89 48 52          	mov    %cx,0x52(%eax)
441663:	e8 82 de fd ff       	call   0x41f4ea
441668:	59                   	pop    %ecx
441669:	8b 4e 08             	mov    0x8(%esi),%ecx
44166c:	6a 48                	push   $0x48
44166e:	89 41 08             	mov    %eax,0x8(%ecx)
441671:	8b 46 08             	mov    0x8(%esi),%eax
441674:	59                   	pop    %ecx
441675:	8b 40 08             	mov    0x8(%eax),%eax
441678:	33 d2                	xor    %edx,%edx
44167a:	66 89 48 04          	mov    %cx,0x4(%eax)
44167e:	8b 46 08             	mov    0x8(%esi),%eax
441681:	b9 13 40 00 00       	mov    $0x4013,%ecx
441686:	8b 40 08             	mov    0x8(%eax),%eax
441689:	6a 13                	push   $0x13
44168b:	66 89 48 0c          	mov    %cx,0xc(%eax)
44168f:	8b 46 08             	mov    0x8(%esi),%eax
441692:	8b 40 08             	mov    0x8(%eax),%eax
441695:	89 10                	mov    %edx,(%eax)
441697:	8b 46 08             	mov    0x8(%esi),%eax
44169a:	8b 40 08             	mov    0x8(%eax),%eax
44169d:	89 50 08             	mov    %edx,0x8(%eax)
4416a0:	8b 46 08             	mov    0x8(%esi),%eax
4416a3:	8b 4e 0c             	mov    0xc(%esi),%ecx
4416a6:	8b 40 08             	mov    0x8(%eax),%eax
4416a9:	89 41 3c             	mov    %eax,0x3c(%ecx)
4416ac:	8b 46 0c             	mov    0xc(%esi),%eax
4416af:	33 c9                	xor    %ecx,%ecx
4416b1:	c7 40 54 2c 32 4b 00 	movl   $0x4b322c,0x54(%eax)
4416b8:	8b 46 0c             	mov    0xc(%esi),%eax
4416bb:	41                   	inc    %ecx
4416bc:	89 50 58             	mov    %edx,0x58(%eax)
4416bf:	8b 46 0c             	mov    0xc(%esi),%eax
4416c2:	c7 40 5c 02 00 00 00 	movl   $0x2,0x5c(%eax)
4416c9:	8b 46 0c             	mov    0xc(%esi),%eax
4416cc:	89 48 60             	mov    %ecx,0x60(%eax)
4416cf:	8b 46 0c             	mov    0xc(%esi),%eax
4416d2:	c7 40 64 04 00 00 00 	movl   $0x4,0x64(%eax)
4416d9:	8b 46 0c             	mov    0xc(%esi),%eax
4416dc:	89 50 68             	mov    %edx,0x68(%eax)
4416df:	8b 46 0c             	mov    0xc(%esi),%eax
4416e2:	66 89 48 6c          	mov    %cx,0x6c(%eax)
4416e6:	8b 46 0c             	mov    0xc(%esi),%eax
4416e9:	59                   	pop    %ecx
4416ea:	66 89 48 6e          	mov    %cx,0x6e(%eax)
4416ee:	8b 46 08             	mov    0x8(%esi),%eax
4416f1:	6a 03                	push   $0x3
4416f3:	89 50 0c             	mov    %edx,0xc(%eax)
4416f6:	8b 46 0c             	mov    0xc(%esi),%eax
4416f9:	59                   	pop    %ecx
4416fa:	c7 40 70 3c 32 4b 00 	movl   $0x4b323c,0x70(%eax)
441701:	8b 46 0c             	mov    0xc(%esi),%eax
441704:	89 50 74             	mov    %edx,0x74(%eax)
441707:	8b 46 0c             	mov    0xc(%esi),%eax
44170a:	89 48 78             	mov    %ecx,0x78(%eax)
44170d:	8b 46 0c             	mov    0xc(%esi),%eax
441710:	c7 40 7c 02 00 00 00 	movl   $0x2,0x7c(%eax)
441717:	8b 46 0c             	mov    0xc(%esi),%eax
44171a:	c7 80 80 00 00 00 04 	movl   $0x4,0x80(%eax)
441721:	00 00 00
441724:	8b 46 0c             	mov    0xc(%esi),%eax
441727:	89 90 84 00 00 00    	mov    %edx,0x84(%eax)
44172d:	8b 46 0c             	mov    0xc(%esi),%eax
441730:	33 c9                	xor    %ecx,%ecx
441732:	41                   	inc    %ecx
441733:	66 89 88 88 00 00 00 	mov    %cx,0x88(%eax)
44173a:	8b 46 0c             	mov    0xc(%esi),%eax
44173d:	6a 13                	push   $0x13
44173f:	59                   	pop    %ecx
441740:	66 89 88 8a 00 00 00 	mov    %cx,0x8a(%eax)
441747:	8b 46 08             	mov    0x8(%esi),%eax
44174a:	89 50 10             	mov    %edx,0x10(%eax)
44174d:	8b 46 04             	mov    0x4(%esi),%eax
441750:	89 45 dc             	mov    %eax,-0x24(%ebp)
441753:	89 45 e4             	mov    %eax,-0x1c(%ebp)
441756:	33 c0                	xor    %eax,%eax
441758:	8b c8                	mov    %eax,%ecx
44175a:	6a 08                	push   $0x8
44175c:	89 55 d8             	mov    %edx,-0x28(%ebp)
44175f:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
441762:	58                   	pop    %eax
441763:	85 db                	test   %ebx,%ebx
441765:	0f 8e 2b 02 00 00    	jle    0x441996
44176b:	8b 45 08             	mov    0x8(%ebp),%eax
44176e:	6b ff 1c             	imul   $0x1c,%edi,%edi
441771:	c1 e0 02             	shl    $0x2,%eax
441774:	89 45 f4             	mov    %eax,-0xc(%ebp)
441777:	8b 45 08             	mov    0x8(%ebp),%eax
44177a:	83 c0 fe             	add    $0xfffffffe,%eax
44177d:	89 45 e0             	mov    %eax,-0x20(%ebp)
441780:	8b 45 dc             	mov    -0x24(%ebp),%eax
441783:	89 7d ec             	mov    %edi,-0x14(%ebp)
441786:	0f b7 1c 48          	movzwl (%eax,%ecx,2),%ebx
44178a:	66 3b 5d d0          	cmp    -0x30(%ebp),%bx
44178e:	89 5d 08             	mov    %ebx,0x8(%ebp)
441791:	8b 5d fc             	mov    -0x4(%ebp),%ebx
441794:	75 14                	jne    0x4417aa
441796:	33 d2                	xor    %edx,%edx
441798:	66 89 14 48          	mov    %dx,(%eax,%ecx,2)
44179c:	8d 51 01             	lea    0x1(%ecx),%edx
44179f:	8d 14 50             	lea    (%eax,%edx,2),%edx
4417a2:	89 55 d8             	mov    %edx,-0x28(%ebp)
4417a5:	e9 dd 01 00 00       	jmp    0x441987
4417aa:	6a 0a                	push   $0xa
4417ac:	5e                   	pop    %esi
4417ad:	66 39 75 08          	cmp    %si,0x8(%ebp)
4417b1:	8b 75 e8             	mov    -0x18(%ebp),%esi
4417b4:	74 0b                	je     0x4417c1
4417b6:	66 83 7d 08 00       	cmpw   $0x0,0x8(%ebp)
4417bb:	0f 85 c6 01 00 00    	jne    0x441987
4417c1:	33 db                	xor    %ebx,%ebx
4417c3:	66 89 1c 48          	mov    %bx,(%eax,%ecx,2)
4417c7:	8b 46 0c             	mov    0xc(%esi),%eax
4417ca:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
4417cd:	89 0c 07             	mov    %ecx,(%edi,%eax,1)
4417d0:	8b 4d e0             	mov    -0x20(%ebp),%ecx
4417d3:	8d 41 01             	lea    0x1(%ecx),%eax
4417d6:	89 45 e0             	mov    %eax,-0x20(%ebp)
4417d9:	8b 46 0c             	mov    0xc(%esi),%eax
4417dc:	8b 5d e0             	mov    -0x20(%ebp),%ebx
4417df:	89 5c 07 08          	mov    %ebx,0x8(%edi,%eax,1)
4417e3:	8b 46 0c             	mov    0xc(%esi),%eax
4417e6:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4417e9:	89 4c 07 0c          	mov    %ecx,0xc(%edi,%eax,1)
4417ed:	8b 46 0c             	mov    0xc(%esi),%eax
4417f0:	33 c9                	xor    %ecx,%ecx
4417f2:	41                   	inc    %ecx
4417f3:	66 89 4c 07 18       	mov    %cx,0x18(%edi,%eax,1)
4417f8:	33 c0                	xor    %eax,%eax
4417fa:	89 45 08             	mov    %eax,0x8(%ebp)
4417fd:	8b c8                	mov    %eax,%ecx
4417ff:	66 39 02             	cmp    %ax,(%edx)
441802:	74 33                	je     0x441837
441804:	6a 3b                	push   $0x3b
441806:	8b c2                	mov    %edx,%eax
441808:	8b d9                	mov    %ecx,%ebx
44180a:	33 ff                	xor    %edi,%edi
44180c:	5e                   	pop    %esi
44180d:	66 39 30             	cmp    %si,(%eax)
441810:	75 0e                	jne    0x441820
441812:	66 39 78 02          	cmp    %di,0x2(%eax)
441816:	74 03                	je     0x44181b
441818:	43                   	inc    %ebx
441819:	eb 05                	jmp    0x441820
44181b:	33 ff                	xor    %edi,%edi
44181d:	66 89 38             	mov    %di,(%eax)
441820:	41                   	inc    %ecx
441821:	8d 04 4a             	lea    (%edx,%ecx,2),%eax
441824:	66 39 38             	cmp    %di,(%eax)
441827:	75 e4                	jne    0x44180d
441829:	8b 75 e8             	mov    -0x18(%ebp),%esi
44182c:	8b 7d ec             	mov    -0x14(%ebp),%edi
44182f:	89 5d 08             	mov    %ebx,0x8(%ebp)
441832:	8b 5d fc             	mov    -0x4(%ebp),%ebx
441835:	33 c0                	xor    %eax,%eax
441837:	89 45 f0             	mov    %eax,-0x10(%ebp)
44183a:	33 c0                	xor    %eax,%eax
44183c:	85 c9                	test   %ecx,%ecx
44183e:	7e 25                	jle    0x441865
441840:	6a 3b                	push   $0x3b
441842:	5b                   	pop    %ebx
441843:	66 39 1c 42          	cmp    %bx,(%edx,%eax,2)
441847:	8b 5d fc             	mov    -0x4(%ebp),%ebx
44184a:	74 07                	je     0x441853
44184c:	40                   	inc    %eax
44184d:	3b c1                	cmp    %ecx,%eax
44184f:	7c ef                	jl     0x441840
441851:	eb 12                	jmp    0x441865
441853:	33 c9                	xor    %ecx,%ecx
441855:	66 89 0c 42          	mov    %cx,(%edx,%eax,2)
441859:	40                   	inc    %eax
44185a:	8d 04 42             	lea    (%edx,%eax,2),%eax
44185d:	66 39 08             	cmp    %cx,(%eax)
441860:	74 03                	je     0x441865
441862:	89 45 f0             	mov    %eax,-0x10(%ebp)
441865:	8b 4e 0c             	mov    0xc(%esi),%ecx
441868:	8d 41 1a             	lea    0x1a(%ecx),%eax
44186b:	03 c7                	add    %edi,%eax
44186d:	83 c1 10             	add    $0x10,%ecx
441870:	50                   	push   %eax
441871:	03 cf                	add    %edi,%ecx
441873:	51                   	push   %ecx
441874:	52                   	push   %edx
441875:	e8 2c f2 ff ff       	call   0x440aa6
44187a:	8b 4e 0c             	mov    0xc(%esi),%ecx
44187d:	8b 45 08             	mov    0x8(%ebp),%eax
441880:	89 44 0f 14          	mov    %eax,0x14(%edi,%ecx,1)
441884:	33 c9                	xor    %ecx,%ecx
441886:	85 c0                	test   %eax,%eax
441888:	0f 84 c5 00 00 00    	je     0x441953
44188e:	6a 08                	push   $0x8
441890:	5a                   	pop    %edx
441891:	f7 e2                	mul    %edx
441893:	0f 90 c1             	seto   %cl
441896:	f7 d9                	neg    %ecx
441898:	0b c8                	or     %eax,%ecx
44189a:	51                   	push   %ecx
44189b:	e8 4a dc fd ff       	call   0x41f4ea
4418a0:	8b 55 f4             	mov    -0xc(%ebp),%edx
4418a3:	59                   	pop    %ecx
4418a4:	8b 4e 08             	mov    0x8(%esi),%ecx
4418a7:	89 04 0a             	mov    %eax,(%edx,%ecx,1)
4418aa:	8b 45 f0             	mov    -0x10(%ebp),%eax
4418ad:	85 c0                	test   %eax,%eax
4418af:	0f 84 8f 00 00 00    	je     0x441944
4418b5:	33 c9                	xor    %ecx,%ecx
4418b7:	33 db                	xor    %ebx,%ebx
4418b9:	66 39 18             	cmp    %bx,(%eax)
4418bc:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4418bf:	89 4d 08             	mov    %ecx,0x8(%ebp)
4418c2:	8b d0                	mov    %eax,%edx
4418c4:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
4418c7:	74 54                	je     0x44191d
4418c9:	8b d8                	mov    %eax,%ebx
4418cb:	6a 3b                	push   $0x3b
4418cd:	5f                   	pop    %edi
4418ce:	66 39 3b             	cmp    %di,(%ebx)
4418d1:	6a 00                	push   $0x0
4418d3:	5f                   	pop    %edi
4418d4:	75 38                	jne    0x44190e
4418d6:	33 c0                	xor    %eax,%eax
4418d8:	52                   	push   %edx
4418d9:	66 89 03             	mov    %ax,(%ebx)
4418dc:	e8 87 05 00 00       	call   0x441e68
4418e1:	8b 4e 08             	mov    0x8(%esi),%ecx
4418e4:	8b 55 f4             	mov    -0xc(%ebp),%edx
4418e7:	8b 7d 08             	mov    0x8(%ebp),%edi
4418ea:	8b 0c 11             	mov    (%ecx,%edx,1),%ecx
4418ed:	66 89 44 f9 04       	mov    %ax,0x4(%ecx,%edi,8)
4418f2:	8b 46 08             	mov    0x8(%esi),%eax
4418f5:	8b cf                	mov    %edi,%ecx
4418f7:	8b 04 10             	mov    (%eax,%edx,1),%eax
4418fa:	33 d2                	xor    %edx,%edx
4418fc:	89 14 c8             	mov    %edx,(%eax,%ecx,8)
4418ff:	8b 45 f0             	mov    -0x10(%ebp),%eax
441902:	41                   	inc    %ecx
441903:	89 4d 08             	mov    %ecx,0x8(%ebp)
441906:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
441909:	8d 53 02             	lea    0x2(%ebx),%edx
44190c:	33 ff                	xor    %edi,%edi
44190e:	41                   	inc    %ecx
44190f:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
441912:	8d 1c 48             	lea    (%eax,%ecx,2),%ebx
441915:	66 39 3b             	cmp    %di,(%ebx)
441918:	75 b1                	jne    0x4418cb
44191a:	8b 5d fc             	mov    -0x4(%ebp),%ebx
44191d:	52                   	push   %edx
44191e:	e8 45 05 00 00       	call   0x441e68
441923:	8b 4e 08             	mov    0x8(%esi),%ecx
441926:	8b 55 f4             	mov    -0xc(%ebp),%edx
441929:	8b 7d 08             	mov    0x8(%ebp),%edi
44192c:	8b 0c 11             	mov    (%ecx,%edx,1),%ecx
44192f:	66 89 44 f9 04       	mov    %ax,0x4(%ecx,%edi,8)
441934:	8b 46 08             	mov    0x8(%esi),%eax
441937:	8b cf                	mov    %edi,%ecx
441939:	8b 04 10             	mov    (%eax,%edx,1),%eax
44193c:	33 ff                	xor    %edi,%edi
44193e:	89 3c c8             	mov    %edi,(%eax,%ecx,8)
441941:	8b 7d ec             	mov    -0x14(%ebp),%edi
441944:	8b 46 08             	mov    0x8(%esi),%eax
441947:	8b 4e 0c             	mov    0xc(%esi),%ecx
44194a:	8b 04 02             	mov    (%edx,%eax,1),%eax
44194d:	89 44 0f 04          	mov    %eax,0x4(%edi,%ecx,1)
441951:	eb 10                	jmp    0x441963
441953:	8b 46 08             	mov    0x8(%esi),%eax
441956:	8b 55 f4             	mov    -0xc(%ebp),%edx
441959:	89 0c 02             	mov    %ecx,(%edx,%eax,1)
44195c:	8b 46 0c             	mov    0xc(%esi),%eax
44195f:	89 4c 07 04          	mov    %ecx,0x4(%edi,%eax,1)
441963:	8b 45 e0             	mov    -0x20(%ebp),%eax
441966:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
441969:	83 c2 04             	add    $0x4,%edx
44196c:	89 55 f4             	mov    %edx,-0xc(%ebp)
44196f:	89 45 e0             	mov    %eax,-0x20(%ebp)
441972:	8b 45 dc             	mov    -0x24(%ebp),%eax
441975:	8d 51 01             	lea    0x1(%ecx),%edx
441978:	83 c7 1c             	add    $0x1c,%edi
44197b:	8d 14 50             	lea    (%eax,%edx,2),%edx
44197e:	89 55 e4             	mov    %edx,-0x1c(%ebp)
441981:	8b 55 d8             	mov    -0x28(%ebp),%edx
441984:	89 7d ec             	mov    %edi,-0x14(%ebp)
441987:	41                   	inc    %ecx
441988:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
44198b:	3b cb                	cmp    %ebx,%ecx
44198d:	0f 8c f3 fd ff ff    	jl     0x441786
441993:	6a 08                	push   $0x8
441995:	58                   	pop    %eax
441996:	50                   	push   %eax
441997:	e8 4e db fd ff       	call   0x41f4ea
44199c:	59                   	pop    %ecx
44199d:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4419a0:	89 46 10             	mov    %eax,0x10(%esi)
4419a3:	89 48 04             	mov    %ecx,0x4(%eax)
4419a6:	8b 4e 10             	mov    0x10(%esi),%ecx
4419a9:	8b 46 0c             	mov    0xc(%esi),%eax
4419ac:	5f                   	pop    %edi
4419ad:	5e                   	pop    %esi
4419ae:	89 01                	mov    %eax,(%ecx)
4419b0:	5b                   	pop    %ebx
4419b1:	c9                   	leave