413b8c:	74 08                	je     0x413b96
413b8e:	50                   	push   %eax
413b8f:	ff 15 e0 a3 44 00    	call   *0x44a3e0
413b95:	59                   	pop    %ecx
413b96:	8b 4d fc             	mov    -0x4(%ebp),%ecx
413b99:	8b c6                	mov    %esi,%eax
413b9b:	5f                   	pop    %edi
413b9c:	5e                   	pop    %esi
413b9d:	33 cd                	xor    %ebp,%ecx
413b9f:	5b                   	pop    %ebx
413ba0:	e8 8b 2f 00 00       	call   0x416b30
413ba5:	c9                   	leave
413ba6:	c2 04 00             	ret    $0x4
413ba9:	8d 8d e0 fd ff ff    	lea    -0x220(%ebp),%ecx
413baf:	eb ad                	jmp    0x413b5e
413bb1:	8d 85 e0 fd ff ff    	lea    -0x220(%ebp),%eax
413bb7:	eb b9                	jmp    0x413b72
413bb9:	33 f6                	xor    %esi,%esi
413bbb:	eb c6                	jmp    0x413b83
413bbd:	8b ff                	mov    %edi,%edi
413bbf:	55                   	push   %ebp
413bc0:	8b ec                	mov    %esp,%ebp
413bc2:	51                   	push   %ecx
413bc3:	51                   	push   %ecx
413bc4:	33 c0                	xor    %eax,%eax
413bc6:	89 55 f8             	mov    %edx,-0x8(%ebp)
413bc9:	53                   	push   %ebx
413bca:	56                   	push   %esi
413bcb:	8b d8                	mov    %eax,%ebx
413bcd:	8b f1                	mov    %ecx,%esi
413bcf:	0f b7 02             	movzwl (%edx),%eax
413bd2:	57                   	push   %edi
413bd3:	8b 7d 08             	mov    0x8(%ebp),%edi
413bd6:	66 85 c0             	test   %ax,%ax
413bd9:	74 64                	je     0x413c3f
413bdb:	c7 45 fc 2e 00 00 00 	movl   $0x2e,-0x4(%ebp)
413be2:	0f b7 c8             	movzwl %ax,%ecx
413be5:	3b 5d 0c             	cmp    0xc(%ebp),%ebx
413be8:	0f 83 db 00 00 00    	jae    0x413cc9
413bee:	83 f9 2a             	cmp    $0x2a,%ecx
413bf1:	74 61                	je     0x413c54
413bf3:	66 3b 4d fc          	cmp    -0x4(%ebp),%cx
413bf7:	0f 84 8f 00 00 00    	je     0x413c8c
413bfd:	83 f9 3a             	cmp    $0x3a,%ecx
413c00:	0f 84 15 be 00 00    	je     0x41fa1b
413c06:	83 f9 3f             	cmp    $0x3f,%ecx
413c09:	0f 84 d3 bd 00 00    	je     0x41f9e2
413c0f:	66 83 f8 5c          	cmp    $0x5c,%ax
413c13:	0f 84 02 be 00 00    	je     0x41fa1b
413c19:	0f b7 0e             	movzwl (%esi),%ecx
413c1c:	66 3b 4d fc          	cmp    -0x4(%ebp),%cx
413c20:	74 08                	je     0x413c2a
413c22:	66 85 c9             	test   %cx,%cx
413c25:	74 03                	je     0x413c2a
413c27:	83 c6 02             	add    $0x2,%esi
413c2a:	66 89 07             	mov    %ax,(%edi)
413c2d:	83 c7 02             	add    $0x2,%edi
413c30:	43                   	inc    %ebx
413c31:	83 c2 02             	add    $0x2,%edx
413c34:	89 55 f8             	mov    %edx,-0x8(%ebp)
413c37:	0f b7 02             	movzwl (%edx),%eax
413c3a:	66 85 c0             	test   %ax,%ax
413c3d:	75 a3                	jne    0x413be2
413c3f:	3b 5d 0c             	cmp    0xc(%ebp),%ebx
413c42:	0f 83 81 00 00 00    	jae    0x413cc9
413c48:	33 c0                	xor    %eax,%eax
413c4a:	66 89 07             	mov    %ax,(%edi)
413c4d:	5f                   	pop    %edi
413c4e:	5e                   	pop    %esi
413c4f:	5b                   	pop    %ebx
413c50:	c9                   	leave
413c51:	c2 08 00             	ret    $0x8
413c54:	0f b7 42 02          	movzwl 0x2(%edx),%eax
413c58:	50                   	push   %eax
413c59:	56                   	push   %esi
413c5a:	ff 15 04 a4 44 00    	call   *0x44a404
413c60:	59                   	pop    %ecx
413c61:	59                   	pop    %ecx
413c62:	8b c8                	mov    %eax,%ecx
413c64:	85 c9                	test   %ecx,%ecx
413c66:	0f 84 9c bd 00 00    	je     0x41fa08
413c6c:	3b f1                	cmp    %ecx,%esi
413c6e:	73 17                	jae    0x413c87
413c70:	3b 5d 0c             	cmp    0xc(%ebp),%ebx
413c73:	73 54                	jae    0x413cc9
413c75:	66 8b 06             	mov    (%esi),%ax
413c78:	83 c6 02             	add    $0x2,%esi
413c7b:	66 89 07             	mov    %ax,(%edi)
413c7e:	83 c7 02             	add    $0x2,%edi
413c81:	43                   	inc    %ebx
413c82:	3b 5d 0c             	cmp    0xc(%ebp),%ebx
413c85:	72 e5                	jb     0x413c6c
413c87:	8b 55 f8             	mov    -0x8(%ebp),%edx
413c8a:	eb a5                	jmp    0x413c31
413c8c:	0f b7 06             	movzwl (%esi),%eax
413c8f:	6a 2e                	push   $0x2e
413c91:	59                   	pop    %ecx
413c92:	66 3b c1             	cmp    %cx,%ax
413c95:	74 15                	je     0x413cac
413c97:	8b c8                	mov    %eax,%ecx
413c99:	66 85 c9             	test   %cx,%cx
413c9c:	74 0e                	je     0x413cac
413c9e:	83 c6 02             	add    $0x2,%esi
413ca1:	0f b7 06             	movzwl (%esi),%eax
413ca4:	8b c8                	mov    %eax,%ecx
413ca6:	66 3b 45 fc          	cmp    -0x4(%ebp),%ax
413caa:	75 ed                	jne    0x413c99
413cac:	6a 2e                	push   $0x2e
413cae:	58                   	pop    %eax
413caf:	66 89 07             	mov    %ax,(%edi)
413cb2:	83 c7 02             	add    $0x2,%edi
413cb5:	33 c0                	xor    %eax,%eax
413cb7:	43                   	inc    %ebx
413cb8:	66 39 06             	cmp    %ax,(%esi)
413cbb:	0f 84 70 ff ff ff    	je     0x413c31
413cc1:	83 c6 02             	add    $0x2,%esi
413cc4:	e9 68 ff ff ff       	jmp    0x413c31
413cc9:	6a 6f                	push   $0x6f
413ccb:	e9 4d bd 00 00       	jmp    0x41fa1d
413cd0:	8b ff                	mov    %edi,%edi
413cd2:	53                   	push   %ebx
413cd3:	8b dc                	mov    %esp,%ebx
413cd5:	51                   	push   %ecx
413cd6:	51                   	push   %ecx
413cd7:	83 e4 f8             	and    $0xfffffff8,%esp
413cda:	83 c4 04             	add    $0x4,%esp
413cdd:	55                   	push   %ebp
413cde:	8b 6b 04             	mov    0x4(%ebx),%ebp
413ce1:	89 6c 24 04          	mov    %ebp,0x4(%esp)
413ce5:	8b ec                	mov    %esp,%ebp
413ce7:	81 ec 38 02 00 00    	sub    $0x238,%esp
413ced:	a1 b4 e0 42 00       	mov    0x42e0b4,%eax
413cf2:	33 c5                	xor    %ebp,%eax
413cf4:	89 45 fc             	mov    %eax,-0x4(%ebp)
413cf7:	56                   	push   %esi
413cf8:	57                   	push   %edi
413cf9:	8b 7b 08             	mov    0x8(%ebx),%edi
413cfc:	b8 04 01 00 00       	mov    $0x104,%eax
413d01:	50                   	push   %eax
413d02:	8b f1                	mov    %ecx,%esi
413d04:	89 45 f0             	mov    %eax,-0x10(%ebp)
413d07:	33 c9                	xor    %ecx,%ecx
413d09:	89 95 c8 fd ff ff    	mov    %edx,-0x238(%ebp)
413d0f:	51                   	push   %ecx
413d10:	8d 85 e0 fd ff ff    	lea    -0x220(%ebp),%eax
413d16:	89 bd d0 fd ff ff    	mov    %edi,-0x230(%ebp)
413d1c:	50                   	push   %eax
413d1d:	89 8d d4 fd ff ff    	mov    %ecx,-0x22c(%ebp)
413d23:	89 8d cc fd ff ff    	mov    %ecx,-0x234(%ebp)
413d29:	89 4d e8             	mov    %ecx,-0x18(%ebp)
413d2c:	c6 45 ec 01          	movb   $0x1,-0x14(%ebp)
413d30:	e8 88 42 00 00       	call   0x417fbd
413d35:	33 c0                	xor    %eax,%eax
413d37:	8d 8d e0 fd ff ff    	lea    -0x220(%ebp),%ecx
413d3d:	83 c4 0c             	add    $0xc,%esp
413d40:	38 45 ec             	cmp    %al,-0x14(%ebp)
413d43:	0f 94 c0             	sete   %al
413d46:	48                   	dec    %eax
413d47:	25 e3 7e 00 00       	and    $0x7ee3,%eax
413d4c:	05 04 01 00 00       	add    $0x104,%eax
413d51:	50                   	push   %eax
413d52:	e8 99 a6 ff ff       	call   0x40e3f0
413d57:	85 c0                	test   %eax,%eax
413d59:	0f 88 47 01 00 00    	js     0x413ea6
413d5f:	8b 85 c8 fd ff ff    	mov    -0x238(%ebp),%eax
413d65:	8b 40 20             	mov    0x20(%eax),%eax
413d68:	89 85 d8 fd ff ff    	mov    %eax,-0x228(%ebp)
413d6e:	85 c0                	test   %eax,%eax
413d70:	0f 84 ad bc 00 00    	je     0x41fa23
413d76:	8b 08                	mov    (%eax),%ecx
413d78:	6a 02                	push   $0x2
413d7a:	5f                   	pop    %edi
413d7b:	0f b7 01             	movzwl (%ecx),%eax
413d7e:	8b d0                	mov    %eax,%edx
413d80:	89 95 dc fd ff ff    	mov    %edx,-0x224(%ebp)
413d86:	66 85 c0             	test   %ax,%ax
413d89:	74 0e                	je     0x413d99
413d8b:	33 d2                	xor    %edx,%edx
413d8d:	8b c1                	mov    %ecx,%eax
413d8f:	03 cf                	add    %edi,%ecx
413d91:	66 39 11             	cmp    %dx,(%ecx)
413d94:	75 f7                	jne    0x413d8d
413d96:	0f b7 10             	movzwl (%eax),%edx
413d99:	6a 3a                	push   $0x3a
413d9b:	58                   	pop    %eax
413d9c:	66 3b d0             	cmp    %ax,%dx
413d9f:	0f 84 08 be 00 00    	je     0x41fbad
413da5:	83 7b 10 00          	cmpl   $0x0,0x10(%ebx)
413da9:	74 60                	je     0x413e0b
413dab:	8b 85 d8 fd ff ff    	mov    -0x228(%ebp),%eax
413db1:	8b 95 dc fd ff ff    	mov    -0x224(%ebp),%edx
413db7:	0f b7 ca             	movzwl %dx,%ecx
413dba:	8b 00                	mov    (%eax),%eax
413dbc:	66 85 d2             	test   %dx,%dx
413dbf:	74 0e                	je     0x413dcf
413dc1:	33 c9                	xor    %ecx,%ecx
413dc3:	8b d0                	mov    %eax,%edx
413dc5:	03 c7                	add    %edi,%eax
413dc7:	66 39 08             	cmp    %cx,(%eax)
413dca:	75 f7                	jne    0x413dc3
413dcc:	0f b7 0a             	movzwl (%edx),%ecx
413dcf:	66 83 f9 2a          	cmp    $0x2a,%cx
413dd3:	75 36                	jne    0x413e0b
413dd5:	8b 85 d8 fd ff ff    	mov    -0x228(%ebp),%eax
413ddb:	8b 08                	mov    (%eax),%ecx
413ddd:	e8 c6 10 00 00       	call   0x414ea8
413de2:	6a 5c                	push   $0x5c
413de4:	5a                   	pop    %edx
413de5:	66 39 10             	cmp    %dx,(%eax)
413de8:	75 21                	jne    0x413e0b
413dea:	8b 4e 04             	mov    0x4(%esi),%ecx
413ded:	e8 03 c4 ff ff       	call   0x4101f5
413df2:	8b c8                	mov    %eax,%ecx
413df4:	85 c9                	test   %ecx,%ecx
413df6:	0f 84 13 bf 00 00    	je     0x41fd0f
413dfc:	03 cf                	add    %edi,%ecx
413dfe:	f7 46 1c 00 02 00 00 	testl  $0x200,0x1c(%esi)
413e05:	0f 85 1c bf 00 00    	jne    0x41fd27
413e0b:	ff 76 04             	push   0x4(%esi)
413e0e:	8b b5 d8 fd ff ff    	mov    -0x228(%ebp),%esi
413e14:	8b bd d0 fd ff ff    	mov    -0x230(%ebp),%edi
413e1a:	8b cf                	mov    %edi,%ecx
413e1c:	8b 53 0c             	mov    0xc(%ebx),%edx
413e1f:	ff 36                	push   (%esi)
413e21:	e8 f3 f8 ff ff       	call   0x413719
413e26:	85 c0                	test   %eax,%eax
413e28:	0f 85 45 bf 00 00    	jne    0x41fd73
413e2e:	8b 45 e8             	mov    -0x18(%ebp),%eax
413e31:	85 c0                	test   %eax,%eax
413e33:	74 76                	je     0x413eab
413e35:	33 c9                	xor    %ecx,%ecx
413e37:	51                   	push   %ecx
413e38:	50                   	push   %eax
413e39:	ff 75 f0             	push   -0x10(%ebp)
413e3c:	57                   	push   %edi
413e3d:	ff 15 a4 a0 44 00    	call   *0x44a0a4
413e43:	3d e7 7f 00 00       	cmp    $0x7fe7,%eax
413e48:	0f 87 3b bf 00 00    	ja     0x41fd89
413e4e:	83 7b 10 00          	cmpl   $0x0,0x10(%ebx)
413e52:	74 21                	je     0x413e75
413e54:	b9 00 20 00 00       	mov    $0x2000,%ecx
413e59:	85 f6                	test   %esi,%esi
413e5b:	74 09                	je     0x413e66
413e5d:	85 4e 1c             	test   %ecx,0x1c(%esi)
413e60:	0f 85 3a bf 00 00    	jne    0x41fda0
413e66:	8b 85 c8 fd ff ff    	mov    -0x238(%ebp),%eax
413e6c:	85 48 1c             	test   %ecx,0x1c(%eax)
413e6f:	0f 85 2b bf 00 00    	jne    0x41fda0
413e75:	8b b5 cc fd ff ff    	mov    -0x234(%ebp),%esi
413e7b:	8b 4d e8             	mov    -0x18(%ebp),%ecx
413e7e:	33 c0                	xor    %eax,%eax
413e80:	89 45 e8             	mov    %eax,-0x18(%ebp)
413e83:	85 c9                	test   %ecx,%ecx
413e85:	74 08                	je     0x413e8f
413e87:	51                   	push   %ecx
413e88:	ff 15 e0 a3 44 00    	call   *0x44a3e0
413e8e:	59                   	pop    %ecx
413e8f:	8b 4d fc             	mov    -0x4(%ebp),%ecx
413e92:	8b c6                	mov    %esi,%eax
413e94:	5f                   	pop    %edi
413e95:	33 cd                	xor    %ebp,%ecx
413e97:	5e                   	pop    %esi
413e98:	e8 93 2c 00 00       	call   0x416b30
413e9d:	8b e5                	mov    %ebp,%esp
413e9f:	5d                   	pop    %ebp
413ea0:	8b e3                	mov    %ebx,%esp
413ea2:	5b                   	pop    %ebx
413ea3:	c2 0c 00             	ret    $0xc
413ea6:	33 f6                	xor    %esi,%esi
413ea8:	46                   	inc    %esi
413ea9:	eb d0                	jmp    0x413e7b
413eab:	8d 85 e0 fd ff ff    	lea    -0x220(%ebp),%eax
413eb1:	eb 82                	jmp    0x413e35
413eb3:	8b ff                	mov    %edi,%edi
413eb5:	55                   	push   %ebp
413eb6:	8b ec                	mov    %esp,%ebp
413eb8:	83 e4 f8             	and    $0xfffffff8,%esp
413ebb:	81 ec d4 08 00 00    	sub    $0x8d4,%esp
413ec1:	a1 b4 e0 42 00       	mov    0x42e0b4,%eax
413ec6:	33 c4                	xor    %esp,%eax
413ec8:	89 84 24 d0 08 00 00 	mov    %eax,0x8d0(%esp)
413ecf:	53                   	push   %ebx
413ed0:	56                   	push   %esi
413ed1:	57                   	push   %edi
413ed2:	8b fa                	mov    %edx,%edi
413ed4:	c7 44 24 54 01 00 00 	movl   $0x1,0x54(%esp)
413edb:	00
413edc:	8b f1                	mov    %ecx,%esi
413ede:	89 7c 24 30          	mov    %edi,0x30(%esp)
413ee2:	33 c9                	xor    %ecx,%ecx
413ee4:	83 cb ff             	or     $0xffffffff,%ebx
413ee7:	8b c1                	mov    %ecx,%eax
413ee9:	89 5c 24 10          	mov    %ebx,0x10(%esp)
413eed:	89 44 24 48          	mov    %eax,0x48(%esp)
413ef1:	89 44 24 28          	mov    %eax,0x28(%esp)
413ef5:	8b 47 20             	mov    0x20(%edi),%eax
413ef8:	89 4c 24 34          	mov    %ecx,0x34(%esp)
413efc:	89 4c 24 38          	mov    %ecx,0x38(%esp)
413f00:	89 4c 24 50          	mov    %ecx,0x50(%esp)
413f04:	89 4c 24 40          	mov    %ecx,0x40(%esp)
413f08:	89 4c 24 5c          	mov    %ecx,0x5c(%esp)
413f0c:	89 4c 24 2c          	mov    %ecx,0x2c(%esp)
413f10:	85 c0                	test   %eax,%eax
413f12:	0f 84 18 bf 00 00    	je     0x41fe30
413f18:	8b 40 1c             	mov    0x1c(%eax),%eax
413f1b:	d1 e8                	shr    $1,%eax
413f1d:	83 e0 08             	and    $0x8,%eax
413f20:	89 4c 24 58          	mov    %ecx,0x58(%esp)
413f24:	89 44 24 4c          	mov    %eax,0x4c(%esp)
413f28:	b8 04 01 00 00       	mov    $0x104,%eax
413f2d:	50                   	push   %eax
413f2e:	89 84 24 8c 02 00 00 	mov    %eax,0x28c(%esp)
413f35:	8d 44 24 7c          	lea    0x7c(%esp),%eax
413f39:	51                   	push   %ecx
413f3a:	50                   	push   %eax
413f3b:	89 4c 24 48          	mov    %ecx,0x48(%esp)
413f3f:	89 8c 24 8c 02 00 00 	mov    %ecx,0x28c(%esp)
413f46:	c6 84 24 90 02 00 00 	movb   $0x1,0x290(%esp)
413f4d:	01
413f4e:	e8 6a 40 00 00       	call   0x417fbd
413f53:	83 c4 0c             	add    $0xc,%esp
413f56:	c6 84 24 cc 08 00 00 	movb   $0x1,0x8cc(%esp)
413f5d:	01
413f5e:	b8 04 01 00 00       	mov    $0x104,%eax
413f63:	33 c9                	xor    %ecx,%ecx
413f65:	89 84 24 d0 08 00 00 	mov    %eax,0x8d0(%esp)
413f6c:	89 8c 24 c8 08 00 00 	mov    %ecx,0x8c8(%esp)
413f73:	50                   	push   %eax
413f74:	51                   	push   %ecx
413f75:	8d 84 24 c8 06 00 00 	lea    0x6c8(%esp),%eax
413f7c:	50                   	push   %eax
413f7d:	e8 3b 40 00 00       	call   0x417fbd
413f82:	83 c4 0c             	add    $0xc,%esp
413f85:	c6 84 24 b4 06 00 00 	movb   $0x1,0x6b4(%esp)
413f8c:	01
413f8d:	b8 04 01 00 00       	mov    $0x104,%eax
413f92:	33 c9                	xor    %ecx,%ecx
413f94:	89 84 24 b8 06 00 00 	mov    %eax,0x6b8(%esp)
413f9b:	89 8c 24 b0 06 00 00 	mov    %ecx,0x6b0(%esp)
413fa2:	50                   	push   %eax
413fa3:	51                   	push   %ecx
413fa4:	8d 84 24 b0 04 00 00 	lea    0x4b0(%esp),%eax
413fab:	50                   	push   %eax
413fac:	e8 0c 40 00 00       	call   0x417fbd
413fb1:	83 c4 0c             	add    $0xc,%esp
413fb4:	c6 84 24 9c 04 00 00 	movb   $0x1,0x49c(%esp)
413fbb:	01
413fbc:	b8 04 01 00 00       	mov    $0x104,%eax
413fc1:	33 c9                	xor    %ecx,%ecx
413fc3:	89 84 24 a0 04 00 00 	mov    %eax,0x4a0(%esp)