a7aafe:	8b c8                	mov    %eax,%ecx
a7ab00:	e8 99 15 9a ff       	call   0x41c09e
a7ab05:	8b 45 e8             	mov    -0x18(%ebp),%eax
a7ab08:	8d 4d b8             	lea    -0x48(%ebp),%ecx
a7ab0b:	89 45 b8             	mov    %eax,-0x48(%ebp)
a7ab0e:	8b 45 ec             	mov    -0x14(%ebp),%eax
a7ab11:	6a 2c                	push   $0x2c
a7ab13:	89 45 bc             	mov    %eax,-0x44(%ebp)
a7ab16:	e8 cc 4c 9c ff       	call   0x43f7e7
a7ab1b:	8b 45 b8             	mov    -0x48(%ebp),%eax
a7ab1e:	8d 4d e8             	lea    -0x18(%ebp),%ecx
a7ab21:	89 45 e8             	mov    %eax,-0x18(%ebp)
a7ab24:	8b 45 bc             	mov    -0x44(%ebp),%eax
a7ab27:	89 45 ec             	mov    %eax,-0x14(%ebp)
a7ab2a:	8d 45 b0             	lea    -0x50(%ebp),%eax
a7ab2d:	50                   	push   %eax
a7ab2e:	e8 c1 ff 9a ff       	call   0x42aaf4
a7ab33:	8b 45 e8             	mov    -0x18(%ebp),%eax
a7ab36:	8d 4d b0             	lea    -0x50(%ebp),%ecx
a7ab39:	89 45 b0             	mov    %eax,-0x50(%ebp)
a7ab3c:	8b 45 ec             	mov    -0x14(%ebp),%eax
a7ab3f:	6a 2c                	push   $0x2c
a7ab41:	89 45 b4             	mov    %eax,-0x4c(%ebp)
a7ab44:	e8 9e 4c 9c ff       	call   0x43f7e7
a7ab49:	8b 45 b0             	mov    -0x50(%ebp),%eax
a7ab4c:	8d 4d b8             	lea    -0x48(%ebp),%ecx
a7ab4f:	89 45 b8             	mov    %eax,-0x48(%ebp)
a7ab52:	8b 45 b4             	mov    -0x4c(%ebp),%eax
a7ab55:	89 45 bc             	mov    %eax,-0x44(%ebp)
a7ab58:	8d 45 c8             	lea    -0x38(%ebp),%eax
a7ab5b:	50                   	push   %eax
a7ab5c:	e8 93 ff 9a ff       	call   0x42aaf4
a7ab61:	eb 2e                	jmp    0xa7ab91
a7ab63:	85 c9                	test   %ecx,%ecx
a7ab65:	74 4e                	je     0xa7abb5
a7ab67:	8b c3                	mov    %ebx,%eax
a7ab69:	25 00 07 00 00       	and    $0x700,%eax
a7ab6e:	3d 00 05 00 00       	cmp    $0x500,%eax
a7ab73:	75 40                	jne    0xa7abb5
a7ab75:	8d 45 c8             	lea    -0x38(%ebp),%eax
a7ab78:	50                   	push   %eax
a7ab79:	8d 45 b8             	lea    -0x48(%ebp),%eax
a7ab7c:	50                   	push   %eax
a7ab7d:	68 84 e1 c7 00       	push   $0xc7e184
a7ab82:	8d 4d a0             	lea    -0x60(%ebp),%ecx
a7ab85:	e8 45 4d 9a ff       	call   0x41f8cf
a7ab8a:	8b c8                	mov    %eax,%ecx
a7ab8c:	e8 0d 15 9a ff       	call   0x41c09e
a7ab91:	8b 45 b8             	mov    -0x48(%ebp),%eax
a7ab94:	8d 4d b0             	lea    -0x50(%ebp),%ecx
a7ab97:	89 45 b0             	mov    %eax,-0x50(%ebp)
a7ab9a:	8b 45 bc             	mov    -0x44(%ebp),%eax
a7ab9d:	6a 2c                	push   $0x2c
a7ab9f:	89 45 b4             	mov    %eax,-0x4c(%ebp)
a7aba2:	e8 40 4c 9c ff       	call   0x43f7e7
a7aba7:	8d 45 b0             	lea    -0x50(%ebp),%eax
a7abaa:	50                   	push   %eax
a7abab:	8d 4d d0             	lea    -0x30(%ebp),%ecx
a7abae:	e8 41 ff 9a ff       	call   0x42aaf4
a7abb3:	eb 0d                	jmp    0xa7abc2
a7abb5:	68 94 e1 c7 00       	push   $0xc7e194
a7abba:	8d 4d d0             	lea    -0x30(%ebp),%ecx
a7abbd:	e8 e2 39 9c ff       	call   0x43e5a4
a7abc2:	8b 45 e4             	mov    -0x1c(%ebp),%eax
a7abc5:	8d 4d b0             	lea    -0x50(%ebp),%ecx
a7abc8:	89 45 b0             	mov    %eax,-0x50(%ebp)
a7abcb:	8b 45 e0             	mov    -0x20(%ebp),%eax
a7abce:	68 6c e1 c7 00       	push   $0xc7e16c
a7abd3:	89 45 b4             	mov    %eax,-0x4c(%ebp)
a7abd6:	e8 c9 39 9c ff       	call   0x43e5a4
a7abdb:	8d 45 b0             	lea    -0x50(%ebp),%eax
a7abde:	50                   	push   %eax
a7abdf:	8d 4d d0             	lea    -0x30(%ebp),%ecx
a7abe2:	e8 0d ff 9a ff       	call   0x42aaf4
a7abe7:	8d 45 a0             	lea    -0x60(%ebp),%eax
a7abea:	50                   	push   %eax
a7abeb:	e8 40 f7 98 ff       	call   0x40a330
a7abf0:	59                   	pop    %ecx
a7abf1:	50                   	push   %eax
a7abf2:	8d 45 b8             	lea    -0x48(%ebp),%eax
a7abf5:	50                   	push   %eax
a7abf6:	6a 28                	push   $0x28
a7abf8:	8d 4d a8             	lea    -0x58(%ebp),%ecx
a7abfb:	e8 08 8c 9a ff       	call   0x423808
a7ac00:	8b c8                	mov    %eax,%ecx
a7ac02:	e8 97 14 9a ff       	call   0x41c09e
a7ac07:	8b 45 b8             	mov    -0x48(%ebp),%eax
a7ac0a:	8d 4d b0             	lea    -0x50(%ebp),%ecx
a7ac0d:	89 45 b0             	mov    %eax,-0x50(%ebp)
a7ac10:	8b 45 bc             	mov    -0x44(%ebp),%eax
a7ac13:	6a 29                	push   $0x29
a7ac15:	89 45 b4             	mov    %eax,-0x4c(%ebp)
a7ac18:	e8 ca 4b 9c ff       	call   0x43f7e7
a7ac1d:	8d 45 b0             	lea    -0x50(%ebp),%eax
a7ac20:	50                   	push   %eax
a7ac21:	8d 4d d0             	lea    -0x30(%ebp),%ecx
a7ac24:	e8 cb fe 9a ff       	call   0x42aaf4
a7ac29:	8b 45 f8             	mov    -0x8(%ebp),%eax
a7ac2c:	85 c0                	test   %eax,%eax
a7ac2e:	74 1a                	je     0xa7ac4a
a7ac30:	8b c3                	mov    %ebx,%eax
a7ac32:	25 00 07 00 00       	and    $0x700,%eax
a7ac37:	3d 00 02 00 00       	cmp    $0x200,%eax
a7ac3c:	74 0c                	je     0xa7ac4a
a7ac3e:	8d 45 c0             	lea    -0x40(%ebp),%eax
a7ac41:	50                   	push   %eax
a7ac42:	8d 4d d0             	lea    -0x30(%ebp),%ecx
a7ac45:	e8 aa fe 9a ff       	call   0x42aaf4
a7ac4a:	a1 60 18 d8 00       	mov    0xd81860,%eax
a7ac4f:	c1 e8 13             	shr    $0x13,%eax
a7ac52:	f7 d0                	not    %eax
a7ac54:	a8 01                	test   $0x1,%al
a7ac56:	8d 45 a0             	lea    -0x60(%ebp),%eax
a7ac59:	50                   	push   %eax
a7ac5a:	74 11                	je     0xa7ac6d
a7ac5c:	e8 1b 72 9a ff       	call   0x421e7c
a7ac61:	59                   	pop    %ecx
a7ac62:	50                   	push   %eax
a7ac63:	8d 4d d0             	lea    -0x30(%ebp),%ecx
a7ac66:	e8 89 fe 9a ff       	call   0x42aaf4
a7ac6b:	eb 0f                	jmp    0xa7ac7c
a7ac6d:	e8 0a 72 9a ff       	call   0x421e7c
a7ac72:	59                   	pop    %ecx
a7ac73:	50                   	push   %eax
a7ac74:	8d 4d d0             	lea    -0x30(%ebp),%ecx
a7ac77:	e8 bc 18 9c ff       	call   0x43c538
a7ac7c:	a1 60 18 d8 00       	mov    0xd81860,%eax
a7ac81:	c1 e8 08             	shr    $0x8,%eax
a7ac84:	f7 d0                	not    %eax
a7ac86:	a8 01                	test   $0x1,%al
a7ac88:	8d 45 a0             	lea    -0x60(%ebp),%eax
a7ac8b:	50                   	push   %eax
a7ac8c:	74 11                	je     0xa7ac9f
a7ac8e:	e8 b5 28 9a ff       	call   0x41d548
a7ac93:	59                   	pop    %ecx
a7ac94:	50                   	push   %eax
a7ac95:	8d 4d d0             	lea    -0x30(%ebp),%ecx
a7ac98:	e8 57 fe 9a ff       	call   0x42aaf4
a7ac9d:	eb 0f                	jmp    0xa7acae
a7ac9f:	e8 a4 28 9a ff       	call   0x41d548
a7aca4:	59                   	pop    %ecx
a7aca5:	50                   	push   %eax
a7aca6:	8d 4d d0             	lea    -0x30(%ebp),%ecx
a7aca9:	e8 8a 18 9c ff       	call   0x43c538
a7acae:	8d 45 a0             	lea    -0x60(%ebp),%eax
a7acb1:	50                   	push   %eax
a7acb2:	e8 c7 a1 9a ff       	call   0x424e7e
a7acb7:	59                   	pop    %ecx
a7acb8:	50                   	push   %eax
a7acb9:	8d 4d d0             	lea    -0x30(%ebp),%ecx
a7acbc:	e8 77 18 9c ff       	call   0x43c538
a7acc1:	a1 60 18 d8 00       	mov    0xd81860,%eax
a7acc6:	c1 e8 02             	shr    $0x2,%eax
a7acc9:	f7 d0                	not    %eax
a7accb:	a8 01                	test   $0x1,%al
a7accd:	74 1a                	je     0xa7ace9
a7accf:	8b 4d f4             	mov    -0xc(%ebp),%ecx
a7acd2:	85 c9                	test   %ecx,%ecx
a7acd4:	74 13                	je     0xa7ace9
a7acd6:	8b 45 d0             	mov    -0x30(%ebp),%eax
a7acd9:	89 01                	mov    %eax,(%ecx)
a7acdb:	8b 45 d4             	mov    -0x2c(%ebp),%eax
a7acde:	89 41 04             	mov    %eax,0x4(%ecx)
a7ace1:	89 75 d0             	mov    %esi,-0x30(%ebp)
a7ace4:	e9 84 02 00 00       	jmp    0xa7af6d
a7ace9:	8b 45 d0             	mov    -0x30(%ebp),%eax
a7acec:	8b 7d d4             	mov    -0x2c(%ebp),%edi
a7acef:	89 45 fc             	mov    %eax,-0x4(%ebp)
a7acf2:	e9 79 02 00 00       	jmp    0xa7af70
a7acf7:	57                   	push   %edi
a7acf8:	8d 4d d0             	lea    -0x30(%ebp),%ecx
a7acfb:	e8 f4 fd 9a ff       	call   0x42aaf4
a7ad00:	b9 00 7c 00 00       	mov    $0x7c00,%ecx
a7ad05:	85 f6                	test   %esi,%esi
a7ad07:	75 7d                	jne    0xa7ad86
a7ad09:	8b c3                	mov    %ebx,%eax
a7ad0b:	23 c1                	and    %ecx,%eax
a7ad0d:	3d 00 68 00 00       	cmp    $0x6800,%eax
a7ad12:	74 0f                	je     0xa7ad23
a7ad14:	85 f6                	test   %esi,%esi
a7ad16:	75 6e                	jne    0xa7ad86
a7ad18:	8b c3                	mov    %ebx,%eax
a7ad1a:	23 c1                	and    %ecx,%eax
a7ad1c:	3d 00 70 00 00       	cmp    $0x7000,%eax
a7ad21:	75 0e                	jne    0xa7ad31
a7ad23:	8d 45 d0             	lea    -0x30(%ebp),%eax
a7ad26:	50                   	push   %eax
a7ad27:	ff 75 08             	push   0x8(%ebp)
a7ad2a:	e8 4c cd 99 ff       	call   0x417a7b
a7ad2f:	eb 6c                	jmp    0xa7ad9d
a7ad31:	3d 00 60 00 00       	cmp    $0x6000,%eax
a7ad36:	75 4e                	jne    0xa7ad86
a7ad38:	33 f6                	xor    %esi,%esi
a7ad3a:	8d 45 c0             	lea    -0x40(%ebp),%eax
a7ad3d:	56                   	push   %esi
a7ad3e:	50                   	push   %eax
a7ad3f:	e8 36 7f 98 ff       	call   0x402c7a
a7ad44:	8b 45 d0             	mov    -0x30(%ebp),%eax
a7ad47:	59                   	pop    %ecx
a7ad48:	59                   	pop    %ecx
a7ad49:	89 45 b0             	mov    %eax,-0x50(%ebp)
a7ad4c:	8d 4d b0             	lea    -0x50(%ebp),%ecx
a7ad4f:	8b 45 d4             	mov    -0x2c(%ebp),%eax
a7ad52:	6a 7b                	push   $0x7b
a7ad54:	89 45 b4             	mov    %eax,-0x4c(%ebp)
a7ad57:	e8 8b 4a 9c ff       	call   0x43f7e7
a7ad5c:	8b 45 b0             	mov    -0x50(%ebp),%eax
a7ad5f:	8d 4d b8             	lea    -0x48(%ebp),%ecx
a7ad62:	89 45 b8             	mov    %eax,-0x48(%ebp)
a7ad65:	8b 45 b4             	mov    -0x4c(%ebp),%eax
a7ad68:	89 45 bc             	mov    %eax,-0x44(%ebp)
a7ad6b:	8d 45 c0             	lea    -0x40(%ebp),%eax
a7ad6e:	50                   	push   %eax
a7ad6f:	e8 80 fd 9a ff       	call   0x42aaf4
a7ad74:	68 70 e1 c7 00       	push   $0xc7e170
a7ad79:	ff 75 08             	push   0x8(%ebp)
a7ad7c:	8d 4d b8             	lea    -0x48(%ebp),%ecx
a7ad7f:	e8 16 26 9a ff       	call   0x41d39a
a7ad84:	eb 19                	jmp    0xa7ad9f
a7ad86:	8b c3                	mov    %ebx,%eax
a7ad88:	25 00 fc 00 00       	and    $0xfc00,%eax
a7ad8d:	3b c1                	cmp    %ecx,%eax
a7ad8f:	75 16                	jne    0xa7ada7
a7ad91:	8d 45 d0             	lea    -0x30(%ebp),%eax
a7ad94:	50                   	push   %eax
a7ad95:	ff 75 08             	push   0x8(%ebp)
a7ad98:	e8 9d 8e 9b ff       	call   0x433c3a
a7ad9d:	59                   	pop    %ecx
a7ad9e:	59                   	pop    %ecx
a7ad9f:	8b 45 08             	mov    0x8(%ebp),%eax
a7ada2:	e9 19 05 00 00       	jmp    0xa7b2c0
a7ada7:	8b c3                	mov    %ebx,%eax
a7ada9:	bf 00 18 00 00       	mov    $0x1800,%edi
a7adae:	85 f6                	test   %esi,%esi
a7adb0:	74 09                	je     0xa7adbb
a7adb2:	23 c7                	and    %edi,%eax
a7adb4:	2d 00 08 00 00       	sub    $0x800,%eax
a7adb9:	eb 05                	jmp    0xa7adc0
a7adbb:	25 00 60 00 00       	and    $0x6000,%eax
a7adc0:	f7 d8                	neg    %eax
a7adc2:	ba 00 10 00 00       	mov    $0x1000,%edx
a7adc7:	1b c0                	sbb    %eax,%eax
a7adc9:	40                   	inc    %eax
a7adca:	85 c0                	test   %eax,%eax
a7adcc:	8b c3                	mov    %ebx,%eax
a7adce:	74 07                	je     0xa7add7
a7add0:	25 00 04 00 00       	and    $0x400,%eax
a7add5:	eb 02                	jmp    0xa7add9
a7add7:	23 c2                	and    %edx,%eax
a7add9:	85 c0                	test   %eax,%eax
a7addb:	74 22                	je     0xa7adff
a7addd:	8b c3                	mov    %ebx,%eax
a7addf:	8b ce                	mov    %esi,%ecx
a7ade1:	25 00 1b 00 00       	and    $0x1b00,%eax
a7ade6:	2b c2                	sub    %edx,%eax
a7ade8:	f7 d8                	neg    %eax
a7adea:	1b c0                	sbb    %eax,%eax
a7adec:	40                   	inc    %eax
a7aded:	f7 d9                	neg    %ecx
a7adef:	1b c9                	sbb    %ecx,%ecx
a7adf1:	85 c8                	test   %ecx,%eax
a7adf3:	74 0a                	je     0xa7adff
a7adf5:	68 a4 e1 c7 00       	push   $0xc7e1a4
a7adfa:	e9 9a 00 00 00       	jmp    0xa7ae99
a7adff:	8b c3                	mov    %ebx,%eax
a7ae01:	85 f6                	test   %esi,%esi
a7ae03:	74 09                	je     0xa7ae0e
a7ae05:	23 c7                	and    %edi,%eax
a7ae07:	2d 00 08 00 00       	sub    $0x800,%eax
a7ae0c:	eb 05                	jmp    0xa7ae13
a7ae0e:	25 00 60 00 00       	and    $0x6000,%eax
a7ae13:	f7 d8                	neg    %eax
a7ae15:	1b c0                	sbb    %eax,%eax
a7ae17:	40                   	inc    %eax
a7ae18:	85 c0                	test   %eax,%eax
a7ae1a:	8b c3                	mov    %ebx,%eax
a7ae1c:	74 07                	je     0xa7ae25
a7ae1e:	25 00 04 00 00       	and    $0x400,%eax
a7ae23:	eb 02                	jmp    0xa7ae27
a7ae25:	23 c2                	and    %edx,%eax
a7ae27:	85 c0                	test   %eax,%eax
a7ae29:	74 22                	je     0xa7ae4d
a7ae2b:	8b c3                	mov    %ebx,%eax
a7ae2d:	8b ce                	mov    %esi,%ecx
a7ae2f:	25 00 1b 00 00       	and    $0x1b00,%eax
a7ae34:	2d 00 11 00 00       	sub    $0x1100,%eax
a7ae39:	f7 d8                	neg    %eax
a7ae3b:	1b c0                	sbb    %eax,%eax
a7ae3d:	40                   	inc    %eax
a7ae3e:	f7 d9                	neg    %ecx
a7ae40:	1b c9                	sbb    %ecx,%ecx
a7ae42:	85 c8                	test   %ecx,%eax
a7ae44:	74 07                	je     0xa7ae4d
a7ae46:	68 cc e1 c7 00       	push   $0xc7e1cc
a7ae4b:	eb 4c                	jmp    0xa7ae99
a7ae4d:	8b c3                	mov    %ebx,%eax
a7ae4f:	85 f6                	test   %esi,%esi
a7ae51:	74 09                	je     0xa7ae5c
a7ae53:	23 c7                	and    %edi,%eax
a7ae55:	2d 00 08 00 00       	sub    $0x800,%eax
a7ae5a:	eb 05                	jmp    0xa7ae61
a7ae5c:	25 00 60 00 00       	and    $0x6000,%eax
a7ae61:	f7 d8                	neg    %eax
a7ae63:	1b c0                	sbb    %eax,%eax
a7ae65:	40                   	inc    %eax
a7ae66:	85 c0                	test   %eax,%eax
a7ae68:	8b c3                	mov    %ebx,%eax
a7ae6a:	74 07                	je     0xa7ae73
a7ae6c:	25 00 04 00 00       	and    $0x400,%eax
a7ae71:	eb 02                	jmp    0xa7ae75
a7ae73:	23 c2                	and    %edx,%eax
a7ae75:	85 c0                	test   %eax,%eax
a7ae77:	74 37                	je     0xa7aeb0
a7ae79:	8b c3                	mov    %ebx,%eax
a7ae7b:	8b ce                	mov    %esi,%ecx
a7ae7d:	25 00 1b 00 00       	and    $0x1b00,%eax
a7ae82:	2d 00 12 00 00       	sub    $0x1200,%eax
a7ae87:	f7 d8                	neg    %eax
a7ae89:	1b c0                	sbb    %eax,%eax
a7ae8b:	40                   	inc    %eax
a7ae8c:	f7 d9                	neg    %ecx
a7ae8e:	1b c9                	sbb    %ecx,%ecx
a7ae90:	85 c8                	test   %ecx,%eax
a7ae92:	74 1c                	je     0xa7aeb0
a7ae94:	68 08 e2 c7 00       	push   $0xc7e208
a7ae99:	8d 4d d0             	lea    -0x30(%ebp),%ecx
a7ae9c:	e8 03 37 9c ff       	call   0x43e5a4
a7aea1:	85 f6                	test   %esi,%esi
a7aea3:	74 30                	je     0xa7aed5
a7aea5:	8b c3                	mov    %ebx,%eax
a7aea7:	23 c7                	and    %edi,%eax
a7aea9:	2d 00 08 00 00       	sub    $0x800,%eax
a7aeae:	eb 2c                	jmp    0xa7aedc
a7aeb0:	85 f6                	test   %esi,%esi
a7aeb2:	75 f1                	jne    0xa7aea5
a7aeb4:	8b c3                	mov    %ebx,%eax
a7aeb6:	25 00 7c 00 00       	and    $0x7c00,%eax
a7aebb:	3d 00 78 00 00       	cmp    $0x7800,%eax
a7aec0:	75 df                	jne    0xa7aea1
a7aec2:	8b 45 08             	mov    0x8(%ebp),%eax
a7aec5:	8b 4d d0             	mov    -0x30(%ebp),%ecx
a7aec8:	89 08                	mov    %ecx,(%eax)
a7aeca:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
a7aecd:	89 48 04             	mov    %ecx,0x4(%eax)
a7aed0:	e9 eb 03 00 00       	jmp    0xa7b2c0
a7aed5:	8b c3                	mov    %ebx,%eax
a7aed7:	25 00 60 00 00       	and    $0x6000,%eax
a7aedc:	f7 d8                	neg    %eax
a7aede:	1b c0                	sbb    %eax,%eax
a7aee0:	40                   	inc    %eax