4166bf:	0f b7 01             	movzwl (%ecx),%eax
4166c2:	50                   	push   %eax
4166c3:	51                   	push   %ecx
4166c4:	6a 02                	push   $0x2
4166c6:	ff 35 2c 01 4a 00    	push   0x4a012c
4166cc:	ff 35 28 01 4a 00    	push   0x4a0128
4166d2:	ff 15 9c 7f 4a 00    	call   *0x4a7f9c
4166d8:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4166db:	8b c6                	mov    %esi,%eax
4166dd:	5f                   	pop    %edi
4166de:	33 cd                	xor    %ebp,%ecx
4166e0:	5e                   	pop    %esi
4166e1:	e8 1a 98 07 00       	call   0x48ff00
4166e6:	c9                   	leave
4166e7:	c2 04 00             	ret    $0x4
4166ea:	8b ff                	mov    %edi,%edi
4166ec:	55                   	push   %ebp
4166ed:	8b ec                	mov    %esp,%ebp
4166ef:	83 ec 14             	sub    $0x14,%esp
4166f2:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4166f5:	56                   	push   %esi
4166f6:	8b 75 08             	mov    0x8(%ebp),%esi
4166f9:	0f b6 01             	movzbl (%ecx),%eax
4166fc:	8d 51 01             	lea    0x1(%ecx),%edx
4166ff:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
416702:	c1 e0 18             	shl    $0x18,%eax
416705:	89 45 ec             	mov    %eax,-0x14(%ebp)
416708:	0f b7 02             	movzwl (%edx),%eax
41670b:	89 45 f0             	mov    %eax,-0x10(%ebp)
41670e:	8b 42 02             	mov    0x2(%edx),%eax
416711:	89 45 f4             	mov    %eax,-0xc(%ebp)
416714:	8b 42 06             	mov    0x6(%edx),%eax
416717:	83 c2 0a             	add    $0xa,%edx
41671a:	89 45 f8             	mov    %eax,-0x8(%ebp)
41671d:	8b 46 04             	mov    0x4(%esi),%eax
416720:	83 61 04 00          	andl   $0x0,0x4(%ecx)
416724:	89 01                	mov    %eax,(%ecx)
416726:	8b 46 04             	mov    0x4(%esi),%eax
416729:	51                   	push   %ecx
41672a:	ff 75 18             	push   0x18(%ebp)
41672d:	0f b7 00             	movzwl (%eax),%eax
416730:	83 61 14 00          	andl   $0x0,0x14(%ecx)
416734:	ff 75 14             	push   0x14(%ebp)
416737:	89 41 08             	mov    %eax,0x8(%ecx)
41673a:	ff 75 10             	push   0x10(%ebp)
41673d:	c7 41 0c 02 00 00 00 	movl   $0x2,0xc(%ecx)
416744:	89 51 10             	mov    %edx,0x10(%ecx)
416747:	0f b7 02             	movzwl (%edx),%eax
41674a:	89 41 18             	mov    %eax,0x18(%ecx)
41674d:	b8 80 61 41 00       	mov    $0x416180,%eax
416752:	c7 41 1c 01 00 00 00 	movl   $0x1,0x1c(%ecx)
416759:	2d c0 4d 41 00       	sub    $0x414dc0,%eax
41675e:	89 45 fc             	mov    %eax,-0x4(%ebp)
416761:	8d 45 ec             	lea    -0x14(%ebp),%eax
416764:	50                   	push   %eax
416765:	ff 76 1c             	push   0x1c(%esi)
416768:	ff 76 18             	push   0x18(%esi)
41676b:	ff 15 18 70 4a 00    	call   *0x4a7018
416771:	5e                   	pop    %esi
416772:	c9                   	leave
416773:	c2 18 00             	ret    $0x18
416776:	8b ff                	mov    %edi,%edi
416778:	55                   	push   %ebp
416779:	8b ec                	mov    %esp,%ebp
41677b:	8b 0d 18 01 4a 00    	mov    0x4a0118,%ecx
416781:	a1 1c 01 4a 00       	mov    0x4a011c,%eax
416786:	23 4d 08             	and    0x8(%ebp),%ecx
416789:	23 45 0c             	and    0xc(%ebp),%eax
41678c:	0b c8                	or     %eax,%ecx
41678e:	74 25                	je     0x4167b5
416790:	a1 20 01 4a 00       	mov    0x4a0120,%eax
416795:	8b 15 24 01 4a 00    	mov    0x4a0124,%edx
41679b:	23 45 08             	and    0x8(%ebp),%eax
41679e:	23 55 0c             	and    0xc(%ebp),%edx
4167a1:	3b 05 20 01 4a 00    	cmp    0x4a0120,%eax
4167a7:	75 0c                	jne    0x4167b5
4167a9:	3b 15 24 01 4a 00    	cmp    0x4a0124,%edx
4167af:	75 04                	jne    0x4167b5
4167b1:	b0 01                	mov    $0x1,%al
4167b3:	eb 02                	jmp    0x4167b7
4167b5:	32 c0                	xor    %al,%al
4167b7:	5d                   	pop    %ebp
4167b8:	c2 08 00             	ret    $0x8
4167bb:	8b ff                	mov    %edi,%edi
4167bd:	55                   	push   %ebp
4167be:	8b ec                	mov    %esp,%ebp
4167c0:	83 ec 64             	sub    $0x64,%esp
4167c3:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
4167c8:	33 c5                	xor    %ebp,%eax
4167ca:	89 45 fc             	mov    %eax,-0x4(%ebp)
4167cd:	8b 45 18             	mov    0x18(%ebp),%eax
4167d0:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
4167d3:	56                   	push   %esi
4167d4:	57                   	push   %edi
4167d5:	8b 00                	mov    (%eax),%eax
4167d7:	33 ff                	xor    %edi,%edi
4167d9:	89 45 dc             	mov    %eax,-0x24(%ebp)
4167dc:	8b f2                	mov    %edx,%esi
4167de:	8b 45 14             	mov    0x14(%ebp),%eax
4167e1:	89 7d e0             	mov    %edi,-0x20(%ebp)
4167e4:	c7 45 e4 08 00 00 00 	movl   $0x8,-0x1c(%ebp)
4167eb:	89 7d e8             	mov    %edi,-0x18(%ebp)
4167ee:	8b 00                	mov    (%eax),%eax
4167f0:	89 45 cc             	mov    %eax,-0x34(%ebp)
4167f3:	8b 45 10             	mov    0x10(%ebp),%eax
4167f6:	89 45 bc             	mov    %eax,-0x44(%ebp)
4167f9:	8d 45 ec             	lea    -0x14(%ebp),%eax
4167fc:	50                   	push   %eax
4167fd:	89 7d d0             	mov    %edi,-0x30(%ebp)
416800:	c7 45 d4 10 00 00 00 	movl   $0x10,-0x2c(%ebp)
416807:	89 7d d8             	mov    %edi,-0x28(%ebp)
41680a:	89 7d c0             	mov    %edi,-0x40(%ebp)
41680d:	c7 45 c4 04 00 00 00 	movl   $0x4,-0x3c(%ebp)
416814:	89 7d c8             	mov    %edi,-0x38(%ebp)
416817:	e8 9c 02 00 00       	call   0x416ab8
41681c:	8d 45 9c             	lea    -0x64(%ebp),%eax
41681f:	50                   	push   %eax
416820:	6a 06                	push   $0x6
416822:	57                   	push   %edi
416823:	57                   	push   %edi
416824:	56                   	push   %esi
416825:	68 10 01 4a 00       	push   $0x4a0110
41682a:	e8 bb fe ff ff       	call   0x4166ea
41682f:	8b 4d fc             	mov    -0x4(%ebp),%ecx
416832:	5f                   	pop    %edi
416833:	33 cd                	xor    %ebp,%ecx
416835:	5e                   	pop    %esi
416836:	e8 c5 96 07 00       	call   0x48ff00
41683b:	c9                   	leave
41683c:	c2 18 00             	ret    $0x18
41683f:	8b ff                	mov    %edi,%edi
416841:	55                   	push   %ebp
416842:	8b ec                	mov    %esp,%ebp
416844:	83 ec 54             	sub    $0x54,%esp
416847:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
41684c:	33 c5                	xor    %ebp,%eax
41684e:	89 45 fc             	mov    %eax,-0x4(%ebp)
416851:	8b 45 18             	mov    0x18(%ebp),%eax
416854:	33 c9                	xor    %ecx,%ecx
416856:	89 4d f0             	mov    %ecx,-0x10(%ebp)
416859:	c7 45 f4 08 00 00 00 	movl   $0x8,-0xc(%ebp)
416860:	89 4d f8             	mov    %ecx,-0x8(%ebp)
416863:	8b 00                	mov    (%eax),%eax
416865:	89 45 ec             	mov    %eax,-0x14(%ebp)
416868:	8b 45 14             	mov    0x14(%ebp),%eax
41686b:	89 4d e0             	mov    %ecx,-0x20(%ebp)
41686e:	c7 45 e4 10 00 00 00 	movl   $0x10,-0x1c(%ebp)
416875:	89 4d e8             	mov    %ecx,-0x18(%ebp)
416878:	8b 00                	mov    (%eax),%eax
41687a:	89 45 dc             	mov    %eax,-0x24(%ebp)
41687d:	8b 45 10             	mov    0x10(%ebp),%eax
416880:	89 45 cc             	mov    %eax,-0x34(%ebp)
416883:	8d 45 ac             	lea    -0x54(%ebp),%eax
416886:	50                   	push   %eax
416887:	6a 05                	push   $0x5
416889:	51                   	push   %ecx
41688a:	51                   	push   %ecx
41688b:	52                   	push   %edx
41688c:	68 10 01 4a 00       	push   $0x4a0110
416891:	89 4d d0             	mov    %ecx,-0x30(%ebp)
416894:	c7 45 d4 04 00 00 00 	movl   $0x4,-0x2c(%ebp)
41689b:	89 4d d8             	mov    %ecx,-0x28(%ebp)
41689e:	e8 47 fe ff ff       	call   0x4166ea
4168a3:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4168a6:	33 cd                	xor    %ebp,%ecx
4168a8:	e8 53 96 07 00       	call   0x48ff00
4168ad:	c9                   	leave
4168ae:	c2 14 00             	ret    $0x14
4168b1:	8b ff                	mov    %edi,%edi
4168b3:	55                   	push   %ebp
4168b4:	8b ec                	mov    %esp,%ebp
4168b6:	81 ec c4 00 00 00    	sub    $0xc4,%esp
4168bc:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
4168c1:	33 c5                	xor    %ebp,%eax
4168c3:	89 45 fc             	mov    %eax,-0x4(%ebp)
4168c6:	8b 45 34             	mov    0x34(%ebp),%eax
4168c9:	89 45 ec             	mov    %eax,-0x14(%ebp)
4168cc:	8b 45 30             	mov    0x30(%ebp),%eax
4168cf:	89 45 dc             	mov    %eax,-0x24(%ebp)
4168d2:	8b 45 2c             	mov    0x2c(%ebp),%eax
4168d5:	89 45 cc             	mov    %eax,-0x34(%ebp)
4168d8:	8b 45 28             	mov    0x28(%ebp),%eax
4168db:	89 45 bc             	mov    %eax,-0x44(%ebp)
4168de:	8b 45 24             	mov    0x24(%ebp),%eax
4168e1:	89 45 ac             	mov    %eax,-0x54(%ebp)
4168e4:	8b 45 20             	mov    0x20(%ebp),%eax
4168e7:	89 45 9c             	mov    %eax,-0x64(%ebp)
4168ea:	8b 45 1c             	mov    0x1c(%ebp),%eax
4168ed:	89 45 8c             	mov    %eax,-0x74(%ebp)
4168f0:	8b 45 18             	mov    0x18(%ebp),%eax
4168f3:	56                   	push   %esi
4168f4:	33 f6                	xor    %esi,%esi
4168f6:	c7 45 84 08 00 00 00 	movl   $0x8,-0x7c(%ebp)
4168fd:	6a 02                	push   $0x2
4168ff:	8b 00                	mov    (%eax),%eax
416901:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
416907:	8b 45 14             	mov    0x14(%ebp),%eax
41690a:	59                   	pop    %ecx
41690b:	89 75 f0             	mov    %esi,-0x10(%ebp)
41690e:	89 4d f4             	mov    %ecx,-0xc(%ebp)
416911:	8b 00                	mov    (%eax),%eax
416913:	89 85 6c ff ff ff    	mov    %eax,-0x94(%ebp)
416919:	8b 45 10             	mov    0x10(%ebp),%eax
41691c:	89 85 5c ff ff ff    	mov    %eax,-0xa4(%ebp)
416922:	8d 85 3c ff ff ff    	lea    -0xc4(%ebp),%eax
416928:	50                   	push   %eax
416929:	6a 0c                	push   $0xc
41692b:	56                   	push   %esi
41692c:	56                   	push   %esi
41692d:	52                   	push   %edx
41692e:	68 10 01 4a 00       	push   $0x4a0110
416933:	89 75 f8             	mov    %esi,-0x8(%ebp)
416936:	89 75 e0             	mov    %esi,-0x20(%ebp)
416939:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
41693c:	89 75 e8             	mov    %esi,-0x18(%ebp)
41693f:	89 75 d0             	mov    %esi,-0x30(%ebp)
416942:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
416945:	89 75 d8             	mov    %esi,-0x28(%ebp)
416948:	89 75 c0             	mov    %esi,-0x40(%ebp)
41694b:	89 4d c4             	mov    %ecx,-0x3c(%ebp)
41694e:	89 75 c8             	mov    %esi,-0x38(%ebp)
416951:	89 75 b0             	mov    %esi,-0x50(%ebp)
416954:	89 4d b4             	mov    %ecx,-0x4c(%ebp)
416957:	89 75 b8             	mov    %esi,-0x48(%ebp)
41695a:	89 75 a0             	mov    %esi,-0x60(%ebp)
41695d:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
416960:	89 75 a8             	mov    %esi,-0x58(%ebp)
416963:	89 75 90             	mov    %esi,-0x70(%ebp)
416966:	89 4d 94             	mov    %ecx,-0x6c(%ebp)
416969:	89 75 98             	mov    %esi,-0x68(%ebp)
41696c:	89 75 80             	mov    %esi,-0x80(%ebp)
41696f:	89 75 88             	mov    %esi,-0x78(%ebp)
416972:	89 b5 70 ff ff ff    	mov    %esi,-0x90(%ebp)
416978:	c7 85 74 ff ff ff 10 	movl   $0x10,-0x8c(%ebp)
41697f:	00 00 00
416982:	89 b5 78 ff ff ff    	mov    %esi,-0x88(%ebp)
416988:	89 b5 60 ff ff ff    	mov    %esi,-0xa0(%ebp)
41698e:	c7 85 64 ff ff ff 04 	movl   $0x4,-0x9c(%ebp)
416995:	00 00 00
416998:	89 b5 68 ff ff ff    	mov    %esi,-0x98(%ebp)
41699e:	e8 47 fd ff ff       	call   0x4166ea
4169a3:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4169a6:	33 cd                	xor    %ebp,%ecx
4169a8:	5e                   	pop    %esi
4169a9:	e8 52 95 07 00       	call   0x48ff00
4169ae:	c9                   	leave
4169af:	c2 30 00             	ret    $0x30
4169b2:	8b ff                	mov    %edi,%edi
4169b4:	55                   	push   %ebp
4169b5:	8b ec                	mov    %esp,%ebp
4169b7:	83 ec 64             	sub    $0x64,%esp
4169ba:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
4169bf:	33 c5                	xor    %ebp,%eax
4169c1:	89 45 fc             	mov    %eax,-0x4(%ebp)
4169c4:	8b 45 1c             	mov    0x1c(%ebp),%eax
4169c7:	56                   	push   %esi
4169c8:	6a 08                	push   $0x8
4169ca:	59                   	pop    %ecx
4169cb:	8b 00                	mov    (%eax),%eax
4169cd:	33 f6                	xor    %esi,%esi
4169cf:	89 45 ec             	mov    %eax,-0x14(%ebp)
4169d2:	8b 45 18             	mov    0x18(%ebp),%eax
4169d5:	89 75 f0             	mov    %esi,-0x10(%ebp)
4169d8:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4169db:	89 75 f8             	mov    %esi,-0x8(%ebp)
4169de:	8b 00                	mov    (%eax),%eax
4169e0:	89 45 dc             	mov    %eax,-0x24(%ebp)
4169e3:	8b 45 14             	mov    0x14(%ebp),%eax
4169e6:	89 75 e0             	mov    %esi,-0x20(%ebp)
4169e9:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
4169ec:	89 75 e8             	mov    %esi,-0x18(%ebp)
4169ef:	8b 00                	mov    (%eax),%eax
4169f1:	89 45 cc             	mov    %eax,-0x34(%ebp)
4169f4:	8b 45 10             	mov    0x10(%ebp),%eax
4169f7:	89 45 bc             	mov    %eax,-0x44(%ebp)
4169fa:	8d 45 9c             	lea    -0x64(%ebp),%eax
4169fd:	50                   	push   %eax
4169fe:	6a 06                	push   $0x6
416a00:	56                   	push   %esi
416a01:	56                   	push   %esi
416a02:	52                   	push   %edx
416a03:	68 10 01 4a 00       	push   $0x4a0110
416a08:	89 75 d0             	mov    %esi,-0x30(%ebp)
416a0b:	c7 45 d4 10 00 00 00 	movl   $0x10,-0x2c(%ebp)
416a12:	89 75 d8             	mov    %esi,-0x28(%ebp)
416a15:	89 75 c0             	mov    %esi,-0x40(%ebp)
416a18:	c7 45 c4 04 00 00 00 	movl   $0x4,-0x3c(%ebp)
416a1f:	89 75 c8             	mov    %esi,-0x38(%ebp)
416a22:	e8 c3 fc ff ff       	call   0x4166ea
416a27:	8b 4d fc             	mov    -0x4(%ebp),%ecx
416a2a:	33 cd                	xor    %ebp,%ecx
416a2c:	5e                   	pop    %esi
416a2d:	e8 ce 94 07 00       	call   0x48ff00
416a32:	c9                   	leave
416a33:	c2 18 00             	ret    $0x18
416a36:	8b ff                	mov    %edi,%edi
416a38:	55                   	push   %ebp
416a39:	8b ec                	mov    %esp,%ebp
416a3b:	83 ec 64             	sub    $0x64,%esp
416a3e:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
416a43:	33 c5                	xor    %ebp,%eax
416a45:	89 45 fc             	mov    %eax,-0x4(%ebp)
416a48:	8b 45 1c             	mov    0x1c(%ebp),%eax
416a4b:	89 45 ec             	mov    %eax,-0x14(%ebp)
416a4e:	8b 45 18             	mov    0x18(%ebp),%eax
416a51:	56                   	push   %esi
416a52:	6a 04                	push   $0x4
416a54:	59                   	pop    %ecx
416a55:	8b 00                	mov    (%eax),%eax
416a57:	33 f6                	xor    %esi,%esi
416a59:	89 45 dc             	mov    %eax,-0x24(%ebp)
416a5c:	8b 45 14             	mov    0x14(%ebp),%eax
416a5f:	89 75 f0             	mov    %esi,-0x10(%ebp)
416a62:	89 4d f4             	mov    %ecx,-0xc(%ebp)
416a65:	89 75 f8             	mov    %esi,-0x8(%ebp)
416a68:	8b 00                	mov    (%eax),%eax
416a6a:	89 45 cc             	mov    %eax,-0x34(%ebp)
416a6d:	8b 45 10             	mov    0x10(%ebp),%eax
416a70:	89 45 bc             	mov    %eax,-0x44(%ebp)
416a73:	8d 45 9c             	lea    -0x64(%ebp),%eax
416a76:	50                   	push   %eax
416a77:	6a 06                	push   $0x6
416a79:	56                   	push   %esi
416a7a:	56                   	push   %esi
416a7b:	52                   	push   %edx
416a7c:	68 10 01 4a 00       	push   $0x4a0110
416a81:	89 75 e0             	mov    %esi,-0x20(%ebp)
416a84:	c7 45 e4 08 00 00 00 	movl   $0x8,-0x1c(%ebp)
416a8b:	89 75 e8             	mov    %esi,-0x18(%ebp)
416a8e:	89 75 d0             	mov    %esi,-0x30(%ebp)
416a91:	c7 45 d4 10 00 00 00 	movl   $0x10,-0x2c(%ebp)
416a98:	89 75 d8             	mov    %esi,-0x28(%ebp)
416a9b:	89 75 c0             	mov    %esi,-0x40(%ebp)
416a9e:	89 4d c4             	mov    %ecx,-0x3c(%ebp)
416aa1:	89 75 c8             	mov    %esi,-0x38(%ebp)
416aa4:	e8 41 fc ff ff       	call   0x4166ea
416aa9:	8b 4d fc             	mov    -0x4(%ebp),%ecx
416aac:	33 cd                	xor    %ebp,%ecx
416aae:	5e                   	pop    %esi
416aaf:	e8 4c 94 07 00       	call   0x48ff00
416ab4:	c9                   	leave
416ab5:	c2 18 00             	ret    $0x18
416ab8:	8b ff                	mov    %edi,%edi
416aba:	55                   	push   %ebp
416abb:	8b ec                	mov    %esp,%ebp
416abd:	8b 11                	mov    (%ecx),%edx
416abf:	57                   	push   %edi
416ac0:	33 ff                	xor    %edi,%edi
416ac2:	85 d2                	test   %edx,%edx
416ac4:	74 1f                	je     0x416ae5