411b00:	ff 75 08             	push   0x8(%ebp)
411b03:	68 01 10 00 00       	push   $0x1001
411b08:	68 00 04 00 00       	push   $0x400
411b0d:	ff 15 f8 a1 42 00    	call   *0x42a1f8
411b13:	48                   	dec    %eax
411b14:	5f                   	pop    %edi
411b15:	48                   	dec    %eax
411b16:	5e                   	pop    %esi
411b17:	5d                   	pop    %ebp
411b18:	c2 0c 00             	ret    $0xc
411b1b:	ff 74 24 04          	push   0x4(%esp)
411b1f:	e8 69 b6 00 00       	call   0x41d18d
411b24:	59                   	pop    %ecx
411b25:	0f b7 c0             	movzwl %ax,%eax
411b28:	c2 04 00             	ret    $0x4
411b2b:	56                   	push   %esi
411b2c:	8b 74 24 08          	mov    0x8(%esp),%esi
411b30:	0f b7 06             	movzwl (%esi),%eax
411b33:	57                   	push   %edi
411b34:	33 c9                	xor    %ecx,%ecx
411b36:	33 ff                	xor    %edi,%edi
411b38:	66 83 f8 30          	cmp    $0x30,%ax
411b3c:	72 33                	jb     0x411b71
411b3e:	53                   	push   %ebx
411b3f:	55                   	push   %ebp
411b40:	66 83 f8 39          	cmp    $0x39,%ax
411b44:	77 29                	ja     0x411b6f
411b46:	0f b7 c0             	movzwl %ax,%eax
411b49:	6a 00                	push   $0x0
411b4b:	6a 0a                	push   $0xa
411b4d:	83 e8 30             	sub    $0x30,%eax
411b50:	99                   	cltd
411b51:	57                   	push   %edi
411b52:	51                   	push   %ecx
411b53:	8b d8                	mov    %eax,%ebx
411b55:	8b ea                	mov    %edx,%ebp
411b57:	e8 54 8a 00 00       	call   0x41a5b0
411b5c:	03 d8                	add    %eax,%ebx
411b5e:	13 ea                	adc    %edx,%ebp
411b60:	46                   	inc    %esi
411b61:	46                   	inc    %esi
411b62:	0f b7 06             	movzwl (%esi),%eax
411b65:	8b cb                	mov    %ebx,%ecx
411b67:	8b fd                	mov    %ebp,%edi
411b69:	66 83 f8 30          	cmp    $0x30,%ax
411b6d:	73 d1                	jae    0x411b40
411b6f:	5d                   	pop    %ebp
411b70:	5b                   	pop    %ebx
411b71:	8b d7                	mov    %edi,%edx
411b73:	5f                   	pop    %edi
411b74:	8b c1                	mov    %ecx,%eax
411b76:	5e                   	pop    %esi
411b77:	c2 04 00             	ret    $0x4
411b7a:	55                   	push   %ebp
411b7b:	8b ec                	mov    %esp,%ebp
411b7d:	83 ec 14             	sub    $0x14,%esp
411b80:	56                   	push   %esi
411b81:	57                   	push   %edi
411b82:	8d 45 ec             	lea    -0x14(%ebp),%eax
411b85:	50                   	push   %eax
411b86:	33 f6                	xor    %esi,%esi
411b88:	56                   	push   %esi
411b89:	8b f9                	mov    %ecx,%edi
411b8b:	ff 15 30 a1 42 00    	call   *0x42a130
411b91:	83 7d ec 01          	cmpl   $0x1,-0x14(%ebp)
411b95:	0f 97 c0             	seta   %al
411b98:	88 87 00 01 00 00    	mov    %al,0x100(%edi)
411b9e:	56                   	push   %esi
411b9f:	ff 15 2c a1 42 00    	call   *0x42a12c
411ba5:	85 c0                	test   %eax,%eax
411ba7:	0f 95 c0             	setne  %al
411baa:	88 04 3e             	mov    %al,(%esi,%edi,1)
411bad:	46                   	inc    %esi
411bae:	81 fe 00 01 00 00    	cmp    $0x100,%esi
411bb4:	72 e8                	jb     0x411b9e
411bb6:	5f                   	pop    %edi
411bb7:	5e                   	pop    %esi
411bb8:	c9                   	leave
411bb9:	c3                   	ret
411bba:	e9 6c ff ff ff       	jmp    0x411b2b
411bbf:	8b 44 24 0c          	mov    0xc(%esp),%eax
411bc3:	0f b6 54 08 04       	movzbl 0x4(%eax,%ecx,1),%edx
411bc8:	8b 44 24 08          	mov    0x8(%esp),%eax
411bcc:	0f b6 44 08 04       	movzbl 0x4(%eax,%ecx,1),%eax
411bd1:	2b c2                	sub    %edx,%eax
411bd3:	6b d2 0c             	imul   $0xc,%edx,%edx
411bd6:	03 54 24 04          	add    0x4(%esp),%edx
411bda:	56                   	push   %esi
411bdb:	0f b6 74 08 29       	movzbl 0x29(%eax,%ecx,1),%esi
411be0:	57                   	push   %edi
411be1:	0f b6 7c 0e 04       	movzbl 0x4(%esi,%ecx,1),%edi
411be6:	3b f8                	cmp    %eax,%edi
411be8:	74 1e                	je     0x411c08
411bea:	4e                   	dec    %esi
411beb:	8d bc b1 b8 00 00 00 	lea    0xb8(%ecx,%esi,4),%edi
411bf2:	53                   	push   %ebx
411bf3:	8b 1f                	mov    (%edi),%ebx
411bf5:	89 1a                	mov    %ebx,(%edx)
411bf7:	89 17                	mov    %edx,(%edi)
411bf9:	0f b6 74 0e 04       	movzbl 0x4(%esi,%ecx,1),%esi
411bfe:	8b fe                	mov    %esi,%edi
411c00:	6b ff 0c             	imul   $0xc,%edi,%edi
411c03:	03 d7                	add    %edi,%edx
411c05:	2b c6                	sub    %esi,%eax
411c07:	5b                   	pop    %ebx
411c08:	0f b6 44 08 29       	movzbl 0x29(%eax,%ecx,1),%eax
411c0d:	8d 84 81 b8 00 00 00 	lea    0xb8(%ecx,%eax,4),%eax
411c14:	8b 08                	mov    (%eax),%ecx
411c16:	5f                   	pop    %edi
411c17:	89 0a                	mov    %ecx,(%edx)
411c19:	89 10                	mov    %edx,(%eax)
411c1b:	5e                   	pop    %esi
411c1c:	c2 0c 00             	ret    $0xc
411c1f:	83 39 00             	cmpl   $0x0,(%ecx)
411c22:	74 0f                	je     0x411c33
411c24:	ff b1 ac 00 00 00    	push   0xac(%ecx)
411c2a:	83 21 00             	andl   $0x0,(%ecx)
411c2d:	e8 b0 82 00 00       	call   0x419ee2
411c32:	59                   	pop    %ecx
411c33:	c3                   	ret
411c34:	53                   	push   %ebx
411c35:	8b 5c 24 08          	mov    0x8(%esp),%ebx
411c39:	57                   	push   %edi
411c3a:	8b f9                	mov    %ecx,%edi
411c3c:	c1 e3 14             	shl    $0x14,%ebx
411c3f:	39 1f                	cmp    %ebx,(%edi)
411c41:	75 04                	jne    0x411c47
411c43:	b0 01                	mov    $0x1,%al
411c45:	eb 44                	jmp    0x411c8b
411c47:	56                   	push   %esi
411c48:	e8 d2 ff ff ff       	call   0x411c1f
411c4d:	6a 0c                	push   $0xc
411c4f:	33 d2                	xor    %edx,%edx
411c51:	59                   	pop    %ecx
411c52:	8b c3                	mov    %ebx,%eax
411c54:	f7 f1                	div    %ecx
411c56:	8b f0                	mov    %eax,%esi
411c58:	46                   	inc    %esi
411c59:	46                   	inc    %esi
411c5a:	6b f6 0c             	imul   $0xc,%esi,%esi
411c5d:	56                   	push   %esi
411c5e:	e8 fb ac 00 00       	call   0x41c95e
411c63:	59                   	pop    %ecx
411c64:	89 87 ac 00 00 00    	mov    %eax,0xac(%edi)
411c6a:	85 c0                	test   %eax,%eax
411c6c:	75 0e                	jne    0x411c7c
411c6e:	b9 74 2a 43 00       	mov    $0x432a74,%ecx
411c73:	e8 90 48 ff ff       	call   0x406508
411c78:	32 c0                	xor    %al,%al
411c7a:	eb 0e                	jmp    0x411c8a
411c7c:	8d 44 30 f4          	lea    -0xc(%eax,%esi,1),%eax
411c80:	89 87 58 01 00 00    	mov    %eax,0x158(%edi)
411c86:	89 1f                	mov    %ebx,(%edi)
411c88:	b0 01                	mov    $0x1,%al
411c8a:	5e                   	pop    %esi
411c8b:	5f                   	pop    %edi
411c8c:	5b                   	pop    %ebx
411c8d:	c2 04 00             	ret    $0x4
411c90:	55                   	push   %ebp
411c91:	8b ec                	mov    %esp,%ebp
411c93:	51                   	push   %ecx
411c94:	51                   	push   %ecx
411c95:	53                   	push   %ebx
411c96:	56                   	push   %esi
411c97:	57                   	push   %edi
411c98:	8b f1                	mov    %ecx,%esi
411c9a:	68 98 00 00 00       	push   $0x98
411c9f:	8d 86 b8 00 00 00    	lea    0xb8(%esi),%eax
411ca5:	6a 00                	push   $0x0
411ca7:	50                   	push   %eax
411ca8:	e8 53 85 00 00       	call   0x41a200
411cad:	8b 3e                	mov    (%esi),%edi
411caf:	83 c4 0c             	add    $0xc,%esp
411cb2:	8b c7                	mov    %edi,%eax
411cb4:	99                   	cltd
411cb5:	83 e2 07             	and    $0x7,%edx
411cb8:	03 c2                	add    %edx,%eax
411cba:	c1 f8 03             	sar    $0x3,%eax
411cbd:	6a 0c                	push   $0xc
411cbf:	5b                   	pop    %ebx
411cc0:	33 d2                	xor    %edx,%edx
411cc2:	f7 f3                	div    %ebx
411cc4:	6a 0c                	push   $0xc
411cc6:	33 d2                	xor    %edx,%edx
411cc8:	8b 8e ac 00 00 00    	mov    0xac(%esi),%ecx
411cce:	89 8e 50 01 00 00    	mov    %ecx,0x150(%esi)
411cd4:	8b d8                	mov    %eax,%ebx
411cd6:	6b db 54             	imul   $0x54,%ebx,%ebx
411cd9:	2b fb                	sub    %ebx,%edi
411cdb:	8b c7                	mov    %edi,%eax
411cdd:	89 45 f8             	mov    %eax,-0x8(%ebp)
411ce0:	5f                   	pop    %edi
411ce1:	f7 f7                	div    %edi
411ce3:	6a 0c                	push   $0xc
411ce5:	33 d2                	xor    %edx,%edx
411ce7:	40                   	inc    %eax
411ce8:	6b c0 0c             	imul   $0xc,%eax,%eax
411ceb:	8d 3c 08             	lea    (%eax,%ecx,1),%edi
411cee:	8b 45 f8             	mov    -0x8(%ebp),%eax
411cf1:	03 c8                	add    %eax,%ecx
411cf3:	89 8e 5c 01 00 00    	mov    %ecx,0x15c(%esi)
411cf9:	59                   	pop    %ecx
411cfa:	8b c3                	mov    %ebx,%eax
411cfc:	f7 f1                	div    %ecx
411cfe:	6a 04                	push   $0x4
411d00:	5a                   	pop    %edx
411d01:	52                   	push   %edx
411d02:	89 be 54 01 00 00    	mov    %edi,0x154(%esi)
411d08:	89 be b0 00 00 00    	mov    %edi,0xb0(%esi)
411d0e:	59                   	pop    %ecx
411d0f:	6b c0 0c             	imul   $0xc,%eax,%eax
411d12:	03 c7                	add    %edi,%eax
411d14:	89 86 b4 00 00 00    	mov    %eax,0xb4(%esi)
411d1a:	33 c0                	xor    %eax,%eax
411d1c:	40                   	inc    %eax
411d1d:	88 44 06 03          	mov    %al,0x3(%esi,%eax,1)
411d21:	40                   	inc    %eax
411d22:	4a                   	dec    %edx
411d23:	75 f8                	jne    0x411d1d
411d25:	40                   	inc    %eax
411d26:	88 44 0e 04          	mov    %al,0x4(%esi,%ecx,1)
411d2a:	41                   	inc    %ecx
411d2b:	40                   	inc    %eax
411d2c:	40                   	inc    %eax
411d2d:	83 f9 08             	cmp    $0x8,%ecx
411d30:	7c f4                	jl     0x411d26
411d32:	40                   	inc    %eax
411d33:	eb 08                	jmp    0x411d3d
411d35:	88 44 0e 04          	mov    %al,0x4(%esi,%ecx,1)
411d39:	41                   	inc    %ecx
411d3a:	83 c0 03             	add    $0x3,%eax
411d3d:	83 f9 0c             	cmp    $0xc,%ecx
411d40:	7c f3                	jl     0x411d35
411d42:	40                   	inc    %eax
411d43:	eb 08                	jmp    0x411d4d
411d45:	88 44 0e 04          	mov    %al,0x4(%esi,%ecx,1)
411d49:	41                   	inc    %ecx
411d4a:	83 c0 04             	add    $0x4,%eax
411d4d:	83 f9 26             	cmp    $0x26,%ecx
411d50:	7c f3                	jl     0x411d45
411d52:	33 c9                	xor    %ecx,%ecx
411d54:	c7 45 fc d7 ff ff ff 	movl   $0xffffffd7,-0x4(%ebp)
411d5b:	29 75 fc             	sub    %esi,-0x4(%ebp)
411d5e:	88 8e aa 00 00 00    	mov    %cl,0xaa(%esi)
411d64:	8d 46 2a             	lea    0x2a(%esi),%eax
411d67:	c7 45 f8 80 00 00 00 	movl   $0x80,-0x8(%ebp)
411d6e:	0f b6 54 0e 04       	movzbl 0x4(%esi,%ecx,1),%edx
411d73:	8b 7d fc             	mov    -0x4(%ebp),%edi
411d76:	33 db                	xor    %ebx,%ebx
411d78:	03 f8                	add    %eax,%edi
411d7a:	3b d7                	cmp    %edi,%edx
411d7c:	0f 9c c3             	setl   %bl
411d7f:	03 cb                	add    %ebx,%ecx
411d81:	88 08                	mov    %cl,(%eax)
411d83:	40                   	inc    %eax
411d84:	ff 4d f8             	decl   -0x8(%ebp)
411d87:	75 e5                	jne    0x411d6e
411d89:	5f                   	pop    %edi
411d8a:	5e                   	pop    %esi
411d8b:	5b                   	pop    %ebx
411d8c:	c9                   	leave
411d8d:	c3                   	ret
411d8e:	56                   	push   %esi
411d8f:	6a 01                	push   $0x1
411d91:	68 60 f1 42 00       	push   $0x42f160
411d96:	8b f1                	mov    %ecx,%esi
411d98:	e8 56 b4 00 00       	call   0x41d1f3
411d9d:	c7 06 8c b1 42 00    	movl   $0x42b18c,(%esi)
411da3:	8b c6                	mov    %esi,%eax
411da5:	5e                   	pop    %esi
411da6:	c3                   	ret
411da7:	c7 01 8c b1 42 00    	movl   $0x42b18c,(%ecx)
411dad:	e9 bb b4 00 00       	jmp    0x41d26d
411db2:	56                   	push   %esi
411db3:	8b f1                	mov    %ecx,%esi
411db5:	c7 06 8c b1 42 00    	movl   $0x42b18c,(%esi)
411dbb:	e8 ad b4 00 00       	call   0x41d26d
411dc0:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
411dc5:	74 07                	je     0x411dce
411dc7:	56                   	push   %esi
411dc8:	e8 0a 81 00 00       	call   0x419ed7
411dcd:	59                   	pop    %ecx
411dce:	8b c6                	mov    %esi,%eax
411dd0:	5e                   	pop    %esi
411dd1:	c2 04 00             	ret    $0x4
411dd4:	55                   	push   %ebp
411dd5:	8b ec                	mov    %esp,%ebp
411dd7:	8b 45 0c             	mov    0xc(%ebp),%eax
411dda:	53                   	push   %ebx
411ddb:	56                   	push   %esi
411ddc:	8b f1                	mov    %ecx,%esi
411dde:	0f b6 5c 30 29       	movzbl 0x29(%eax,%esi,1),%ebx
411de3:	8b 45 10             	mov    0x10(%ebp),%eax
411de6:	0f b6 54 30 29       	movzbl 0x29(%eax,%esi,1),%edx
411deb:	89 5d 0c             	mov    %ebx,0xc(%ebp)
411dee:	3b da                	cmp    %edx,%ebx
411df0:	75 05                	jne    0x411df7
411df2:	8b 45 08             	mov    0x8(%ebp),%eax
411df5:	eb 47                	jmp    0x411e3e
411df7:	8d 8c 96 b8 00 00 00 	lea    0xb8(%esi,%edx,4),%ecx
411dfe:	57                   	push   %edi
411dff:	8b 39                	mov    (%ecx),%edi
411e01:	85 ff                	test   %edi,%edi
411e03:	74 29                	je     0x411e2e
411e05:	8b 5d 08             	mov    0x8(%ebp),%ebx
411e08:	6b c0 0c             	imul   $0xc,%eax,%eax
411e0b:	8b 17                	mov    (%edi),%edx
411e0d:	50                   	push   %eax
411e0e:	53                   	push   %ebx
411e0f:	57                   	push   %edi
411e10:	89 11                	mov    %edx,(%ecx)
411e12:	e8 59 9e 00 00       	call   0x41bc70
411e17:	8b 45 0c             	mov    0xc(%ebp),%eax
411e1a:	8d 84 86 b8 00 00 00 	lea    0xb8(%esi,%eax,4),%eax
411e21:	8b 08                	mov    (%eax),%ecx
411e23:	89 0b                	mov    %ecx,(%ebx)
411e25:	89 18                	mov    %ebx,(%eax)
411e27:	83 c4 0c             	add    $0xc,%esp
411e2a:	8b c7                	mov    %edi,%eax
411e2c:	eb 0f                	jmp    0x411e3d
411e2e:	52                   	push   %edx
411e2f:	53                   	push   %ebx
411e30:	ff 75 08             	push   0x8(%ebp)
411e33:	8b ce                	mov    %esi,%ecx
411e35:	e8 85 fd ff ff       	call   0x411bbf
411e3a:	8b 45 08             	mov    0x8(%ebp),%eax
411e3d:	5f                   	pop    %edi
411e3e:	5e                   	pop    %esi
411e3f:	5b                   	pop    %ebx
411e40:	5d                   	pop    %ebp
411e41:	c2 0c 00             	ret    $0xc
411e44:	53                   	push   %ebx
411e45:	55                   	push   %ebp
411e46:	56                   	push   %esi
411e47:	8b 74 24 10          	mov    0x10(%esp),%esi
411e4b:	8b 86 50 06 00 00    	mov    0x650(%esi),%eax
411e51:	0f b6 00             	movzbl (%eax),%eax
411e54:	8a 84 30 6c 09 00 00 	mov    0x96c(%eax,%esi,1),%al
411e5b:	88 86 6e 0a 00 00    	mov    %al,0xa6e(%esi)
411e61:	57                   	push   %edi
411e62:	8d 79 02             	lea    0x2(%ecx),%edi
411e65:	8b 49 08             	mov    0x8(%ecx),%ecx
411e68:	0f b7 09             	movzwl (%ecx),%ecx
411e6b:	0f b6 17             	movzbl (%edi),%edx
411e6e:	0f b6 94 32 6c 09 00 	movzbl 0x96c(%edx,%esi,1),%edx
411e75:	00
411e76:	0f b6 5f 01          	movzbl 0x1(%edi),%ebx
411e7a:	0f b6 8c 31 6b 08 00 	movzbl 0x86b(%ecx,%esi,1),%ecx
411e81:	00
411e82:	c1 e3 05             	shl    $0x5,%ebx