4247ae:	25 ff 7f ff ff       	and    $0xffff7fff,%eax
4247b3:	8b d7                	mov    %edi,%edx
4247b5:	8b ce                	mov    %esi,%ecx
4247b7:	ff 75 08             	push   0x8(%ebp)
4247ba:	83 f8 02             	cmp    $0x2,%eax
4247bd:	75 07                	jne    0x4247c6
4247bf:	e8 cd f9 ff ff       	call   0x424191
4247c4:	eb 05                	jmp    0x4247cb
4247c6:	e8 2e fe ff ff       	call   0x4245f9
4247cb:	5f                   	pop    %edi
4247cc:	5e                   	pop    %esi
4247cd:	5d                   	pop    %ebp
4247ce:	c2 08 00             	ret    $0x8
4247d1:	cc                   	int3
4247d2:	cc                   	int3
4247d3:	cc                   	int3
4247d4:	cc                   	int3
4247d5:	cc                   	int3
4247d6:	cc                   	int3
4247d7:	cc                   	int3
4247d8:	cc                   	int3
4247d9:	cc                   	int3
4247da:	cc                   	int3
4247db:	cc                   	int3
4247dc:	cc                   	int3
4247dd:	cc                   	int3
4247de:	cc                   	int3
4247df:	cc                   	int3
4247e0:	8b ff                	mov    %edi,%edi
4247e2:	55                   	push   %ebp
4247e3:	8b ec                	mov    %esp,%ebp
4247e5:	8b 45 08             	mov    0x8(%ebp),%eax
4247e8:	6a 0a                	push   $0xa
4247ea:	6a 00                	push   $0x0
4247ec:	ff 70 3c             	push   0x3c(%eax)
4247ef:	ff 15 38 a4 44 00    	call   *0x44a438
4247f5:	33 c9                	xor    %ecx,%ecx
4247f7:	83 c4 0c             	add    $0xc,%esp
4247fa:	83 f8 02             	cmp    $0x2,%eax
4247fd:	0f 9e c1             	setle  %cl
424800:	8b c1                	mov    %ecx,%eax
424802:	5d                   	pop    %ebp
424803:	c2 04 00             	ret    $0x4
424806:	cc                   	int3
424807:	cc                   	int3
424808:	cc                   	int3
424809:	cc                   	int3
42480a:	cc                   	int3
42480b:	cc                   	int3
42480c:	cc                   	int3
42480d:	cc                   	int3
42480e:	cc                   	int3
42480f:	cc                   	int3
424810:	8b ff                	mov    %edi,%edi
424812:	55                   	push   %ebp
424813:	8b ec                	mov    %esp,%ebp
424815:	8b 45 08             	mov    0x8(%ebp),%eax
424818:	6a 0a                	push   $0xa
42481a:	6a 00                	push   $0x0
42481c:	ff 70 3c             	push   0x3c(%eax)
42481f:	ff 15 38 a4 44 00    	call   *0x44a438
424825:	33 c9                	xor    %ecx,%ecx
424827:	83 c4 0c             	add    $0xc,%esp
42482a:	3b 05 dc 65 43 00    	cmp    0x4365dc,%eax
424830:	0f 9e c1             	setle  %cl
424833:	8b c1                	mov    %ecx,%eax
424835:	5d                   	pop    %ebp
424836:	c2 04 00             	ret    $0x4
424839:	cc                   	int3
42483a:	cc                   	int3
42483b:	cc                   	int3
42483c:	cc                   	int3
42483d:	cc                   	int3
42483e:	cc                   	int3
42483f:	cc                   	int3
424840:	8b ff                	mov    %edi,%edi
424842:	55                   	push   %ebp
424843:	8b ec                	mov    %esp,%ebp
424845:	51                   	push   %ecx
424846:	51                   	push   %ecx
424847:	56                   	push   %esi
424848:	6a f6                	push   $0xfffffff6
42484a:	ff 15 bc a1 44 00    	call   *0x44a1bc
424850:	6a 00                	push   $0x0
424852:	68 2b 23 00 00       	push   $0x232b
424857:	8b f0                	mov    %eax,%esi
424859:	e8 5f 1b fe ff       	call   0x4063bd
42485e:	59                   	pop    %ecx
42485f:	59                   	pop    %ecx
424860:	85 f6                	test   %esi,%esi
424862:	74 61                	je     0x4248c5
424864:	33 c9                	xor    %ecx,%ecx
424866:	e8 2d 95 fe ff       	call   0x40dd98
42486b:	85 c0                	test   %eax,%eax
42486d:	74 46                	je     0x4248b5
42486f:	f6 05 1c 67 43 00 01 	testb  $0x1,0x43671c
424876:	74 3d                	je     0x4248b5
424878:	56                   	push   %esi
424879:	ff 15 30 a0 44 00    	call   *0x44a030
42487f:	ff 15 a8 a3 44 00    	call   *0x44a3a8
424885:	0f b7 c0             	movzwl %ax,%eax
424888:	66 89 45 fc          	mov    %ax,-0x4(%ebp)
42488c:	83 f8 03             	cmp    $0x3,%eax
42488f:	75 34                	jne    0x4248c5
424891:	ff 35 a4 25 43 00    	push   0x4325a4
424897:	ff 15 9c a2 44 00    	call   *0x44a29c
42489d:	ff 35 a4 25 43 00    	push   0x4325a4
4248a3:	c7 05 9c 25 43 00 01 	movl   $0x1,0x43259c
4248aa:	00 00 00
4248ad:	ff 15 a8 a2 44 00    	call   *0x44a2a8
4248b3:	eb 10                	jmp    0x4248c5
4248b5:	8d 45 f8             	lea    -0x8(%ebp),%eax
4248b8:	8b ce                	mov    %esi,%ecx
4248ba:	50                   	push   %eax
4248bb:	6a 01                	push   $0x1
4248bd:	8d 55 fc             	lea    -0x4(%ebp),%edx
4248c0:	e8 d4 fe ff ff       	call   0x424799
4248c5:	68 8c 1f 40 00       	push   $0x401f8c
4248ca:	e8 81 50 fe ff       	call   0x409950
4248cf:	59                   	pop    %ecx
4248d0:	33 c0                	xor    %eax,%eax
4248d2:	5e                   	pop    %esi
4248d3:	c9                   	leave
4248d4:	c2 04 00             	ret    $0x4
4248d7:	8b ff                	mov    %edi,%edi
4248d9:	55                   	push   %ebp
4248da:	8b ec                	mov    %esp,%ebp
4248dc:	83 ec 14             	sub    $0x14,%esp
4248df:	a1 b4 e0 42 00       	mov    0x42e0b4,%eax
4248e4:	33 c5                	xor    %ebp,%eax
4248e6:	89 45 fc             	mov    %eax,-0x4(%ebp)
4248e9:	56                   	push   %esi
4248ea:	8b f2                	mov    %edx,%esi
4248ec:	85 c9                	test   %ecx,%ecx
4248ee:	75 0c                	jne    0x4248fc
4248f0:	8d 45 ec             	lea    -0x14(%ebp),%eax
4248f3:	50                   	push   %eax
4248f4:	ff 15 c4 a2 44 00    	call   *0x44a2c4
4248fa:	eb 3f                	jmp    0x42493b
4248fc:	66 8b 41 14          	mov    0x14(%ecx),%ax
424900:	66 89 45 ec          	mov    %ax,-0x14(%ebp)
424904:	66 8b 41 10          	mov    0x10(%ecx),%ax
424908:	66 40                	inc    %ax
42490a:	66 89 45 ee          	mov    %ax,-0x12(%ebp)
42490e:	66 8b 41 0c          	mov    0xc(%ecx),%ax
424912:	66 89 45 f2          	mov    %ax,-0xe(%ebp)
424916:	66 8b 41 08          	mov    0x8(%ecx),%ax
42491a:	66 89 45 f4          	mov    %ax,-0xc(%ebp)
42491e:	66 8b 41 04          	mov    0x4(%ecx),%ax
424922:	66 89 45 f6          	mov    %ax,-0xa(%ebp)
424926:	66 8b 01             	mov    (%ecx),%ax
424929:	66 89 45 f8          	mov    %ax,-0x8(%ebp)
42492d:	66 8b 41 18          	mov    0x18(%ecx),%ax
424931:	66 89 45 f0          	mov    %ax,-0x10(%ebp)
424935:	33 c0                	xor    %eax,%eax
424937:	66 89 45 fa          	mov    %ax,-0x6(%ebp)
42493b:	56                   	push   %esi
42493c:	8d 45 ec             	lea    -0x14(%ebp),%eax
42493f:	50                   	push   %eax
424940:	ff 15 f0 a2 44 00    	call   *0x44a2f0
424946:	8b 4d fc             	mov    -0x4(%ebp),%ecx
424949:	33 cd                	xor    %ebp,%ecx
42494b:	5e                   	pop    %esi
42494c:	e8 df 21 ff ff       	call   0x416b30
424951:	c9                   	leave
424952:	c3                   	ret
424953:	8b ff                	mov    %edi,%edi
424955:	55                   	push   %ebp
424956:	8b ec                	mov    %esp,%ebp
424958:	81 ec 6c 02 00 00    	sub    $0x26c,%esp
42495e:	a1 b4 e0 42 00       	mov    0x42e0b4,%eax
424963:	33 c5                	xor    %ebp,%eax
424965:	89 45 fc             	mov    %eax,-0x4(%ebp)
424968:	53                   	push   %ebx
424969:	56                   	push   %esi
42496a:	57                   	push   %edi
42496b:	8b f2                	mov    %edx,%esi
42496d:	8b d9                	mov    %ecx,%ebx
42496f:	6a 0d                	push   $0xd
424971:	59                   	pop    %ecx
424972:	85 f6                	test   %esi,%esi
424974:	75 4b                	jne    0x4249c1
424976:	8d 4d dc             	lea    -0x24(%ebp),%ecx
424979:	bf 1c 3a 40 00       	mov    $0x403a1c,%edi
42497e:	6a 10                	push   $0x10
424980:	8b c1                	mov    %ecx,%eax
424982:	5a                   	pop    %edx
424983:	2b f8                	sub    %eax,%edi
424985:	8d 82 ee ff ff 7f    	lea    0x7fffffee(%edx),%eax
42498b:	85 c0                	test   %eax,%eax
42498d:	74 14                	je     0x4249a3
42498f:	0f b7 04 0f          	movzwl (%edi,%ecx,1),%eax
424993:	66 85 c0             	test   %ax,%ax
424996:	74 0b                	je     0x4249a3
424998:	66 89 01             	mov    %ax,(%ecx)
42499b:	83 c1 02             	add    $0x2,%ecx
42499e:	83 ea 01             	sub    $0x1,%edx
4249a1:	75 e2                	jne    0x424985
4249a3:	85 d2                	test   %edx,%edx
4249a5:	75 03                	jne    0x4249aa
4249a7:	83 e9 02             	sub    $0x2,%ecx
4249aa:	68 d0 c9 43 00       	push   $0x43c9d0
4249af:	33 c0                	xor    %eax,%eax
4249b1:	6a 10                	push   $0x10
4249b3:	66 89 01             	mov    %ax,(%ecx)
4249b6:	8d 4d dc             	lea    -0x24(%ebp),%ecx
4249b9:	5a                   	pop    %edx
4249ba:	e8 81 b2 fe ff       	call   0x40fc40
4249bf:	eb 27                	jmp    0x4249e8
4249c1:	6a 3a                	push   $0x3a
4249c3:	58                   	pop    %eax
4249c4:	6a 2e                	push   $0x2e
4249c6:	66 89 45 dc          	mov    %ax,-0x24(%ebp)
4249ca:	8b d1                	mov    %ecx,%edx
4249cc:	58                   	pop    %eax
4249cd:	66 89 45 de          	mov    %ax,-0x22(%ebp)
4249d1:	8d 4d e2             	lea    -0x1e(%ebp),%ecx
4249d4:	66 a1 e0 c9 43 00    	mov    0x43c9e0,%ax
4249da:	68 c0 c9 43 00       	push   $0x43c9c0
4249df:	66 89 45 e0          	mov    %ax,-0x20(%ebp)
4249e3:	e8 b8 a9 fe ff       	call   0x40f3a0
4249e8:	33 ff                	xor    %edi,%edi
4249ea:	85 db                	test   %ebx,%ebx
4249ec:	74 3b                	je     0x424a29
4249ee:	66 39 3b             	cmp    %di,(%ebx)
4249f1:	74 36                	je     0x424a29
4249f3:	8b cb                	mov    %ebx,%ecx
4249f5:	8d 51 02             	lea    0x2(%ecx),%edx
4249f8:	66 8b 01             	mov    (%ecx),%ax
4249fb:	83 c1 02             	add    $0x2,%ecx
4249fe:	66 3b c7             	cmp    %di,%ax
424a01:	75 f5                	jne    0x4249f8
424a03:	2b ca                	sub    %edx,%ecx
424a05:	d1 f9                	sar    $1,%ecx
424a07:	81 f9 04 01 00 00    	cmp    $0x104,%ecx
424a0d:	0f 83 f4 01 00 00    	jae    0x424c07
424a13:	53                   	push   %ebx
424a14:	ba 05 01 00 00       	mov    $0x105,%edx
424a19:	8d 8d a8 fd ff ff    	lea    -0x258(%ebp),%ecx
424a1f:	e8 7c a9 fe ff       	call   0x40f3a0
424a24:	e9 db 00 00 00       	jmp    0x424b04
424a29:	a1 8c e5 42 00       	mov    0x42e58c,%eax
424a2e:	2b c7                	sub    %edi,%eax
424a30:	74 14                	je     0x424a46
424a32:	48                   	dec    %eax
424a33:	83 e8 01             	sub    $0x1,%eax
424a36:	74 07                	je     0x424a3f
424a38:	b8 1e 27 00 40       	mov    $0x4000271e,%eax
424a3d:	eb 0c                	jmp    0x424a4b
424a3f:	b8 1d 27 00 40       	mov    $0x4000271d,%eax
424a44:	eb 05                	jmp    0x424a4b
424a46:	b8 42 23 00 00       	mov    $0x2342,%eax
424a4b:	85 f6                	test   %esi,%esi
424a4d:	75 12                	jne    0x424a61
424a4f:	68 d0 c9 43 00       	push   $0x43c9d0
424a54:	6a 01                	push   $0x1
424a56:	50                   	push   %eax
424a57:	e8 61 19 fe ff       	call   0x4063bd
424a5c:	83 c4 0c             	add    $0xc,%esp
424a5f:	eb 0d                	jmp    0x424a6e
424a61:	57                   	push   %edi
424a62:	68 43 23 00 00       	push   $0x2343
424a67:	e8 51 19 fe ff       	call   0x4063bd
424a6c:	59                   	pop    %ecx
424a6d:	59                   	pop    %ecx
424a6e:	8d 85 94 fd ff ff    	lea    -0x26c(%ebp),%eax
424a74:	50                   	push   %eax
424a75:	68 04 01 00 00       	push   $0x104
424a7a:	57                   	push   %edi
424a7b:	ff 15 2c a4 44 00    	call   *0x44a42c
424a81:	59                   	pop    %ecx
424a82:	8d 95 a8 fd ff ff    	lea    -0x258(%ebp),%edx
424a88:	8b c8                	mov    %eax,%ecx
424a8a:	e8 0a fd ff ff       	call   0x424799
424a8f:	85 c0                	test   %eax,%eax
424a91:	0f 84 86 01 00 00    	je     0x424c1d
424a97:	8b 85 94 fd ff ff    	mov    -0x26c(%ebp),%eax
424a9d:	85 c0                	test   %eax,%eax
424a9f:	0f 84 78 01 00 00    	je     0x424c1d
424aa5:	33 c9                	xor    %ecx,%ecx
424aa7:	66 89 8c 45 a8 fd ff 	mov    %cx,-0x258(%ebp,%eax,2)
424aae:	ff
424aaf:	8d 8d a8 fd ff ff    	lea    -0x258(%ebp),%ecx
424ab5:	66 8b 85 a8 fd ff ff 	mov    -0x258(%ebp),%ax
424abc:	66 85 c0             	test   %ax,%ax
424abf:	74 25                	je     0x424ae6
424ac1:	0f b7 d0             	movzwl %ax,%edx
424ac4:	66 83 fa 0a          	cmp    $0xa,%dx
424ac8:	74 17                	je     0x424ae1
424aca:	6a 0d                	push   $0xd
424acc:	58                   	pop    %eax
424acd:	66 3b d0             	cmp    %ax,%dx
424ad0:	74 0f                	je     0x424ae1
424ad2:	83 c1 02             	add    $0x2,%ecx
424ad5:	0f b7 01             	movzwl (%ecx),%eax
424ad8:	8b d0                	mov    %eax,%edx
424ada:	66 85 c0             	test   %ax,%ax
424add:	75 e5                	jne    0x424ac4
424adf:	eb 05                	jmp    0x424ae6
424ae1:	33 c0                	xor    %eax,%eax
424ae3:	66 89 01             	mov    %ax,(%ecx)
424ae6:	33 c9                	xor    %ecx,%ecx
424ae8:	e8 ab 92 fe ff       	call   0x40dd98
424aed:	85 c0                	test   %eax,%eax
424aef:	75 13                	jne    0x424b04
424af1:	8d 85 a8 fd ff ff    	lea    -0x258(%ebp),%eax
424af7:	50                   	push   %eax
424af8:	68 80 22 40 00       	push   $0x402280
424afd:	e8 4e 4e fe ff       	call   0x409950
424b02:	59                   	pop    %ecx
424b03:	59                   	pop    %ecx
424b04:	8d 45 dc             	lea    -0x24(%ebp),%eax
424b07:	50                   	push   %eax
424b08:	6a 10                	push   $0x10
424b0a:	5b                   	pop    %ebx
424b0b:	8b d3                	mov    %ebx,%edx
424b0d:	8d 4d bc             	lea    -0x44(%ebp),%ecx
424b10:	e8 8b a8 fe ff       	call   0x40f3a0
424b15:	8b d3                	mov    %ebx,%edx
424b17:	8d 45 bc             	lea    -0x44(%ebp),%eax
424b1a:	66 39 38             	cmp    %di,(%eax)
424b1d:	74 08                	je     0x424b27
424b1f:	83 c0 02             	add    $0x2,%eax
424b22:	83 ea 01             	sub    $0x1,%edx
424b25:	75 f3                	jne    0x424b1a
424b27:	8b c3                	mov    %ebx,%eax
424b29:	8b ca                	mov    %edx,%ecx
424b2b:	2b c2                	sub    %edx,%eax
424b2d:	f7 d9                	neg    %ecx
424b2f:	1b c9                	sbb    %ecx,%ecx
424b31:	23 c8                	and    %eax,%ecx
424b33:	85 d2                	test   %edx,%edx
424b35:	74 3d                	je     0x424b74
424b37:	8b d3                	mov    %ebx,%edx
424b39:	8d 45 bc             	lea    -0x44(%ebp),%eax
424b3c:	8d 04 48             	lea    (%eax,%ecx,2),%eax
424b3f:	2b d1                	sub    %ecx,%edx
424b41:	74 29                	je     0x424b6c
424b43:	bb 2c 24 40 00       	mov    $0x40242c,%ebx
424b48:	b9 fe ff ff 7f       	mov    $0x7ffffffe,%ecx
424b4d:	2b d8                	sub    %eax,%ebx
424b4f:	85 c9                	test   %ecx,%ecx
424b51:	74 15                	je     0x424b68
424b53:	0f b7 3c 03          	movzwl (%ebx,%eax,1),%edi
424b57:	66 85 ff             	test   %di,%di
424b5a:	74 0c                	je     0x424b68
424b5c:	66 89 38             	mov    %di,(%eax)
424b5f:	83 c0 02             	add    $0x2,%eax
424b62:	49                   	dec    %ecx
424b63:	83 ea 01             	sub    $0x1,%edx