409bad:	68 80 2b 40 00       	push   $0x402b80
409bb2:	e9 41 f8 ff ff       	jmp    0x4093f8
409bb7:	85 c0                	test   %eax,%eax
409bb9:	74 23                	je     0x409bde
409bbb:	8b 4e 10             	mov    0x10(%esi),%ecx
409bbe:	ba f4 36 40 00       	mov    $0x4036f4,%edx
409bc3:	e8 4c d7 ff ff       	call   0x407314
409bc8:	ff 37                	push   (%edi)
409bca:	8b ce                	mov    %esi,%ecx
409bcc:	e8 c2 e8 ff ff       	call   0x408493
409bd1:	8b 4e 10             	mov    0x10(%esi),%ecx
409bd4:	ba 0c 37 40 00       	mov    $0x40370c,%edx
409bd9:	e8 36 d7 ff ff       	call   0x407314
409bde:	8d 45 d0             	lea    -0x30(%ebp),%eax
409be1:	50                   	push   %eax
409be2:	8d 45 bc             	lea    -0x44(%ebp),%eax
409be5:	50                   	push   %eax
409be6:	51                   	push   %ecx
409be7:	6a 14                	push   $0x14
409be9:	5a                   	pop    %edx
409bea:	8b cb                	mov    %ebx,%ecx
409bec:	e8 74 e4 ff ff       	call   0x408065
409bf1:	85 c0                	test   %eax,%eax
409bf3:	74 0a                	je     0x409bff
409bf5:	68 ac 2b 40 00       	push   $0x402bac
409bfa:	e9 43 06 00 00       	jmp    0x40a242
409bff:	8b 7d d0             	mov    -0x30(%ebp),%edi
409c02:	8b 47 0c             	mov    0xc(%edi),%eax
409c05:	85 c0                	test   %eax,%eax
409c07:	74 36                	je     0x409c3f
409c09:	83 f8 04             	cmp    $0x4,%eax
409c0c:	74 0a                	je     0x409c18
409c0e:	68 ac 2b 40 00       	push   $0x402bac
409c13:	e9 e0 f7 ff ff       	jmp    0x4093f8
409c18:	85 c0                	test   %eax,%eax
409c1a:	74 23                	je     0x409c3f
409c1c:	8b 4e 10             	mov    0x10(%esi),%ecx
409c1f:	ba 28 37 40 00       	mov    $0x403728,%edx
409c24:	e8 eb d6 ff ff       	call   0x407314
409c29:	ff 37                	push   (%edi)
409c2b:	8b ce                	mov    %esi,%ecx
409c2d:	e8 61 e8 ff ff       	call   0x408493
409c32:	8b 4e 10             	mov    0x10(%esi),%ecx
409c35:	ba 4c 37 40 00       	mov    $0x40374c,%edx
409c3a:	e8 d5 d6 ff ff       	call   0x407314
409c3f:	8b 45 b4             	mov    -0x4c(%ebp),%eax
409c42:	83 f8 01             	cmp    $0x1,%eax
409c45:	0f 85 fd 00 00 00    	jne    0x409d48
409c4b:	8d 45 d0             	lea    -0x30(%ebp),%eax
409c4e:	50                   	push   %eax
409c4f:	8d 45 bc             	lea    -0x44(%ebp),%eax
409c52:	50                   	push   %eax
409c53:	51                   	push   %ecx
409c54:	6a 15                	push   $0x15
409c56:	5a                   	pop    %edx
409c57:	8b cb                	mov    %ebx,%ecx
409c59:	e8 07 e4 ff ff       	call   0x408065
409c5e:	85 c0                	test   %eax,%eax
409c60:	74 0a                	je     0x409c6c
409c62:	68 f0 2b 40 00       	push   $0x402bf0
409c67:	e9 d6 05 00 00       	jmp    0x40a242
409c6c:	8b 55 d0             	mov    -0x30(%ebp),%edx
409c6f:	8b 42 0c             	mov    0xc(%edx),%eax
409c72:	85 c0                	test   %eax,%eax
409c74:	74 47                	je     0x409cbd
409c76:	83 f8 02             	cmp    $0x2,%eax
409c79:	75 16                	jne    0x409c91
409c7b:	85 c0                	test   %eax,%eax
409c7d:	74 3e                	je     0x409cbd
409c7f:	8b 12                	mov    (%edx),%edx
409c81:	b9 60 11 41 00       	mov    $0x411160,%ecx
409c86:	e8 d4 3e 00 00       	call   0x40db5f
409c8b:	8b f8                	mov    %eax,%edi
409c8d:	85 ff                	test   %edi,%edi
409c8f:	75 0a                	jne    0x409c9b
409c91:	68 f0 2b 40 00       	push   $0x402bf0
409c96:	e9 5d f7 ff ff       	jmp    0x4093f8
409c9b:	8b 4e 10             	mov    0x10(%esi),%ecx
409c9e:	ba 74 37 40 00       	mov    $0x403774,%edx
409ca3:	e8 6c d6 ff ff       	call   0x407314
409ca8:	57                   	push   %edi
409ca9:	8b ce                	mov    %esi,%ecx
409cab:	e8 e3 e7 ff ff       	call   0x408493
409cb0:	8b 4e 10             	mov    0x10(%esi),%ecx
409cb3:	ba 9c 37 40 00       	mov    $0x40379c,%edx
409cb8:	e8 57 d6 ff ff       	call   0x407314
409cbd:	8d 45 d0             	lea    -0x30(%ebp),%eax
409cc0:	50                   	push   %eax
409cc1:	8d 45 bc             	lea    -0x44(%ebp),%eax
409cc4:	50                   	push   %eax
409cc5:	51                   	push   %ecx
409cc6:	6a 16                	push   $0x16
409cc8:	5a                   	pop    %edx
409cc9:	8b cb                	mov    %ebx,%ecx
409ccb:	e8 95 e3 ff ff       	call   0x408065
409cd0:	85 c0                	test   %eax,%eax
409cd2:	74 0a                	je     0x409cde
409cd4:	68 3c 2c 40 00       	push   $0x402c3c
409cd9:	e9 64 05 00 00       	jmp    0x40a242
409cde:	8b 7d d0             	mov    -0x30(%ebp),%edi
409ce1:	8b 47 0c             	mov    0xc(%edi),%eax
409ce4:	85 c0                	test   %eax,%eax
409ce6:	74 0f                	je     0x409cf7
409ce8:	83 f8 04             	cmp    $0x4,%eax
409ceb:	74 13                	je     0x409d00
409ced:	68 3c 2c 40 00       	push   $0x402c3c
409cf2:	e9 01 f7 ff ff       	jmp    0x4093f8
409cf7:	83 f8 04             	cmp    $0x4,%eax
409cfa:	0f 85 1f 03 00 00    	jne    0x40a01f
409d00:	8b 07                	mov    (%edi),%eax
409d02:	85 c0                	test   %eax,%eax
409d04:	0f 84 15 03 00 00    	je     0x40a01f
409d0a:	33 c9                	xor    %ecx,%ecx
409d0c:	66 39 08             	cmp    %cx,(%eax)
409d0f:	0f 84 0a 03 00 00    	je     0x40a01f
409d15:	8b 4e 10             	mov    0x10(%esi),%ecx
409d18:	ba c8 37 40 00       	mov    $0x4037c8,%edx
409d1d:	e8 f2 d5 ff ff       	call   0x407314
409d22:	ff 37                	push   (%edi)
409d24:	8b ce                	mov    %esi,%ecx
409d26:	e8 68 e7 ff ff       	call   0x408493
409d2b:	8b 4e 10             	mov    0x10(%esi),%ecx
409d2e:	ba ec 37 40 00       	mov    $0x4037ec,%edx
409d33:	e8 dc d5 ff ff       	call   0x407314
409d38:	8b 4e 10             	mov    0x10(%esi),%ecx
409d3b:	ba 18 38 40 00       	mov    $0x403818,%edx
409d40:	e8 cf d5 ff ff       	call   0x407314
409d45:	8b 45 b4             	mov    -0x4c(%ebp),%eax
409d48:	85 c0                	test   %eax,%eax
409d4a:	0f 85 c6 02 00 00    	jne    0x40a016
409d50:	8b 4e 10             	mov    0x10(%esi),%ecx
409d53:	ba 68 38 40 00       	mov    $0x403868,%edx
409d58:	e8 b7 d5 ff ff       	call   0x407314
409d5d:	33 c0                	xor    %eax,%eax
409d5f:	88 45 cf             	mov    %al,-0x31(%ebp)
409d62:	8d 45 d0             	lea    -0x30(%ebp),%eax
409d65:	50                   	push   %eax
409d66:	8d 45 bc             	lea    -0x44(%ebp),%eax
409d69:	50                   	push   %eax
409d6a:	51                   	push   %ecx
409d6b:	6a 1c                	push   $0x1c
409d6d:	5a                   	pop    %edx
409d6e:	8b cb                	mov    %ebx,%ecx
409d70:	e8 f0 e2 ff ff       	call   0x408065
409d75:	85 c0                	test   %eax,%eax
409d77:	74 0a                	je     0x409d83
409d79:	68 c0 2c 40 00       	push   $0x402cc0
409d7e:	e9 bf 04 00 00       	jmp    0x40a242
409d83:	8b 7d d0             	mov    -0x30(%ebp),%edi
409d86:	8b 47 0c             	mov    0xc(%edi),%eax
409d89:	85 c0                	test   %eax,%eax
409d8b:	0f 84 85 00 00 00    	je     0x409e16
409d91:	3d 84 00 00 00       	cmp    $0x84,%eax
409d96:	74 0a                	je     0x409da2
409d98:	68 c0 2c 40 00       	push   $0x402cc0
409d9d:	e9 56 f6 ff ff       	jmp    0x4093f8
409da2:	85 c0                	test   %eax,%eax
409da4:	74 70                	je     0x409e16
409da6:	8b 4e 10             	mov    0x10(%esi),%ecx
409da9:	ba 90 2e 40 00       	mov    $0x402e90,%edx
409dae:	e8 61 d5 ff ff       	call   0x407314
409db3:	8b 4e 10             	mov    0x10(%esi),%ecx
409db6:	ba b0 38 40 00       	mov    $0x4038b0,%edx
409dbb:	c6 45 cf 01          	movb   $0x1,-0x31(%ebp)
409dbf:	e8 50 d5 ff ff       	call   0x407314
409dc4:	8b 4e 10             	mov    0x10(%esi),%ecx
409dc7:	ba 90 2e 40 00       	mov    $0x402e90,%edx
409dcc:	e8 43 d5 ff ff       	call   0x407314
409dd1:	33 c0                	xor    %eax,%eax
409dd3:	39 47 08             	cmp    %eax,0x8(%edi)
409dd6:	76 31                	jbe    0x409e09
409dd8:	8b d8                	mov    %eax,%ebx
409dda:	8b 4e 10             	mov    0x10(%esi),%ecx
409ddd:	ba e0 38 40 00       	mov    $0x4038e0,%edx
409de2:	e8 2d d5 ff ff       	call   0x407314
409de7:	8b 07                	mov    (%edi),%eax
409de9:	8b ce                	mov    %esi,%ecx
409deb:	ff 34 98             	push   (%eax,%ebx,4)
409dee:	e8 a0 e6 ff ff       	call   0x408493
409df3:	8b 4e 10             	mov    0x10(%esi),%ecx
409df6:	ba fc 38 40 00       	mov    $0x4038fc,%edx
409dfb:	e8 14 d5 ff ff       	call   0x407314
409e00:	43                   	inc    %ebx
409e01:	3b 5f 08             	cmp    0x8(%edi),%ebx
409e04:	72 d4                	jb     0x409dda
409e06:	8b 5d b8             	mov    -0x48(%ebp),%ebx
409e09:	8b 4e 10             	mov    0x10(%esi),%ecx
409e0c:	ba 18 39 40 00       	mov    $0x403918,%edx
409e11:	e8 fe d4 ff ff       	call   0x407314
409e16:	8d 45 d0             	lea    -0x30(%ebp),%eax
409e19:	50                   	push   %eax
409e1a:	8d 45 bc             	lea    -0x44(%ebp),%eax
409e1d:	50                   	push   %eax
409e1e:	51                   	push   %ecx
409e1f:	6a 1d                	push   $0x1d
409e21:	5a                   	pop    %edx
409e22:	8b cb                	mov    %ebx,%ecx
409e24:	e8 3c e2 ff ff       	call   0x408065
409e29:	85 c0                	test   %eax,%eax
409e2b:	74 0a                	je     0x409e37
409e2d:	68 28 2d 40 00       	push   $0x402d28
409e32:	e9 0b 04 00 00       	jmp    0x40a242
409e37:	8b 7d d0             	mov    -0x30(%ebp),%edi
409e3a:	8b 47 0c             	mov    0xc(%edi),%eax
409e3d:	85 c0                	test   %eax,%eax
409e3f:	0f 84 8b 00 00 00    	je     0x409ed0
409e45:	3d 84 00 00 00       	cmp    $0x84,%eax
409e4a:	74 0a                	je     0x409e56
409e4c:	68 28 2d 40 00       	push   $0x402d28
409e51:	e9 a2 f5 ff ff       	jmp    0x4093f8
409e56:	85 c0                	test   %eax,%eax
409e58:	74 76                	je     0x409ed0
409e5a:	80 7d cf 00          	cmpb   $0x0,-0x31(%ebp)
409e5e:	75 11                	jne    0x409e71
409e60:	8b 4e 10             	mov    0x10(%esi),%ecx
409e63:	ba 90 2e 40 00       	mov    $0x402e90,%edx
409e68:	e8 a7 d4 ff ff       	call   0x407314
409e6d:	c6 45 cf 01          	movb   $0x1,-0x31(%ebp)
409e71:	8b 4e 10             	mov    0x10(%esi),%ecx
409e74:	ba 50 39 40 00       	mov    $0x403950,%edx
409e79:	e8 96 d4 ff ff       	call   0x407314
409e7e:	8b 4e 10             	mov    0x10(%esi),%ecx
409e81:	ba 90 2e 40 00       	mov    $0x402e90,%edx
409e86:	e8 89 d4 ff ff       	call   0x407314
409e8b:	33 c0                	xor    %eax,%eax
409e8d:	39 47 08             	cmp    %eax,0x8(%edi)
409e90:	76 31                	jbe    0x409ec3
409e92:	8b d8                	mov    %eax,%ebx
409e94:	8b 4e 10             	mov    0x10(%esi),%ecx
409e97:	ba 80 39 40 00       	mov    $0x403980,%edx
409e9c:	e8 73 d4 ff ff       	call   0x407314
409ea1:	8b 07                	mov    (%edi),%eax
409ea3:	8b ce                	mov    %esi,%ecx
409ea5:	ff 34 98             	push   (%eax,%ebx,4)
409ea8:	e8 e6 e5 ff ff       	call   0x408493
409ead:	8b 4e 10             	mov    0x10(%esi),%ecx
409eb0:	ba 9c 39 40 00       	mov    $0x40399c,%edx
409eb5:	e8 5a d4 ff ff       	call   0x407314
409eba:	43                   	inc    %ebx
409ebb:	3b 5f 08             	cmp    0x8(%edi),%ebx
409ebe:	72 d4                	jb     0x409e94
409ec0:	8b 5d b8             	mov    -0x48(%ebp),%ebx
409ec3:	8b 4e 10             	mov    0x10(%esi),%ecx
409ec6:	ba b8 39 40 00       	mov    $0x4039b8,%edx
409ecb:	e8 44 d4 ff ff       	call   0x407314
409ed0:	8d 45 d0             	lea    -0x30(%ebp),%eax
409ed3:	50                   	push   %eax
409ed4:	8d 45 bc             	lea    -0x44(%ebp),%eax
409ed7:	50                   	push   %eax
409ed8:	51                   	push   %ecx
409ed9:	6a 1e                	push   $0x1e
409edb:	5a                   	pop    %edx
409edc:	8b cb                	mov    %ebx,%ecx
409ede:	e8 82 e1 ff ff       	call   0x408065
409ee3:	85 c0                	test   %eax,%eax
409ee5:	74 0a                	je     0x409ef1
409ee7:	68 7c 2d 40 00       	push   $0x402d7c
409eec:	e9 51 03 00 00       	jmp    0x40a242
409ef1:	8b 7d d0             	mov    -0x30(%ebp),%edi
409ef4:	8b 47 0c             	mov    0xc(%edi),%eax
409ef7:	85 c0                	test   %eax,%eax
409ef9:	0f 84 8b 00 00 00    	je     0x409f8a
409eff:	3d 84 00 00 00       	cmp    $0x84,%eax
409f04:	74 0a                	je     0x409f10
409f06:	68 7c 2d 40 00       	push   $0x402d7c
409f0b:	e9 e8 f4 ff ff       	jmp    0x4093f8
409f10:	85 c0                	test   %eax,%eax
409f12:	74 76                	je     0x409f8a
409f14:	80 7d cf 00          	cmpb   $0x0,-0x31(%ebp)
409f18:	75 11                	jne    0x409f2b
409f1a:	8b 4e 10             	mov    0x10(%esi),%ecx
409f1d:	ba 90 2e 40 00       	mov    $0x402e90,%edx
409f22:	e8 ed d3 ff ff       	call   0x407314
409f27:	c6 45 cf 01          	movb   $0x1,-0x31(%ebp)
409f2b:	8b 4e 10             	mov    0x10(%esi),%ecx
409f2e:	ba ec 39 40 00       	mov    $0x4039ec,%edx
409f33:	e8 dc d3 ff ff       	call   0x407314
409f38:	8b 4e 10             	mov    0x10(%esi),%ecx
409f3b:	ba 90 2e 40 00       	mov    $0x402e90,%edx
409f40:	e8 cf d3 ff ff       	call   0x407314
409f45:	33 c0                	xor    %eax,%eax
409f47:	39 47 08             	cmp    %eax,0x8(%edi)
409f4a:	76 31                	jbe    0x409f7d
409f4c:	8b d8                	mov    %eax,%ebx
409f4e:	8b 4e 10             	mov    0x10(%esi),%ecx
409f51:	ba 80 39 40 00       	mov    $0x403980,%edx
409f56:	e8 b9 d3 ff ff       	call   0x407314
409f5b:	8b 07                	mov    (%edi),%eax
409f5d:	8b ce                	mov    %esi,%ecx
409f5f:	ff 34 98             	push   (%eax,%ebx,4)
409f62:	e8 2c e5 ff ff       	call   0x408493
409f67:	8b 4e 10             	mov    0x10(%esi),%ecx
409f6a:	ba 9c 39 40 00       	mov    $0x40399c,%edx
409f6f:	e8 a0 d3 ff ff       	call   0x407314
409f74:	43                   	inc    %ebx
409f75:	3b 5f 08             	cmp    0x8(%edi),%ebx
409f78:	72 d4                	jb     0x409f4e
409f7a:	8b 5d b8             	mov    -0x48(%ebp),%ebx
409f7d:	8b 4e 10             	mov    0x10(%esi),%ecx
409f80:	ba 18 3a 40 00       	mov    $0x403a18,%edx
409f85:	e8 8a d3 ff ff       	call   0x407314
409f8a:	80 7d cf 00          	cmpb   $0x0,-0x31(%ebp)
409f8e:	74 0d                	je     0x409f9d
409f90:	8b 4e 10             	mov    0x10(%esi),%ecx
409f93:	ba 48 3a 40 00       	mov    $0x403a48,%edx
409f98:	e8 77 d3 ff ff       	call   0x407314
409f9d:	8b 4e 10             	mov    0x10(%esi),%ecx
409fa0:	ba 50 3a 40 00       	mov    $0x403a50,%edx
409fa5:	e8 6a d3 ff ff       	call   0x407314
409faa:	8d 45 d0             	lea    -0x30(%ebp),%eax
409fad:	50                   	push   %eax
409fae:	8d 45 bc             	lea    -0x44(%ebp),%eax
409fb1:	50                   	push   %eax
409fb2:	51                   	push   %ecx
409fb3:	6a 1f                	push   $0x1f
409fb5:	5a                   	pop    %edx
409fb6:	8b cb                	mov    %ebx,%ecx
409fb8:	e8 a8 e0 ff ff       	call   0x408065
409fbd:	85 c0                	test   %eax,%eax
409fbf:	74 0a                	je     0x409fcb
409fc1:	68 cc 2d 40 00       	push   $0x402dcc
409fc6:	e9 77 02 00 00       	jmp    0x40a242
409fcb:	8b 7d d0             	mov    -0x30(%ebp),%edi
409fce:	8b 47 0c             	mov    0xc(%edi),%eax
409fd1:	85 c0                	test   %eax,%eax
409fd3:	0f 84 31 02 00 00    	je     0x40a20a
409fd9:	83 f8 04             	cmp    $0x4,%eax
409fdc:	74 0a                	je     0x409fe8
409fde:	68 cc 2d 40 00       	push   $0x402dcc
409fe3:	e9 10 f4 ff ff       	jmp    0x4093f8
409fe8:	85 c0                	test   %eax,%eax
409fea:	0f 84 1a 02 00 00    	je     0x40a20a
409ff0:	8b 4e 10             	mov    0x10(%esi),%ecx
409ff3:	ba a0 3a 40 00       	mov    $0x403aa0,%edx
409ff8:	e8 17 d3 ff ff       	call   0x407314
409ffd:	ff 37                	push   (%edi)
409fff:	8b ce                	mov    %esi,%ecx
40a001:	e8 8d e4 ff ff       	call   0x408493
40a006:	8b 4e 10             	mov    0x10(%esi),%ecx
40a009:	ba e0 3a 40 00       	mov    $0x403ae0,%edx
40a00e:	e8 01 d3 ff ff       	call   0x407314
40a013:	8b 45 b4             	mov    -0x4c(%ebp),%eax
40a016:	83 f8 01             	cmp    $0x1,%eax
40a019:	0f 85 eb 01 00 00    	jne    0x40a20a
40a01f:	33 c0                	xor    %eax,%eax
40a021:	33 d2                	xor    %edx,%edx
40a023:	89 45 b8             	mov    %eax,-0x48(%ebp)
40a026:	42                   	inc    %edx
40a027:	89 45 c8             	mov    %eax,-0x38(%ebp)
40a02a:	8d 45 d0             	lea    -0x30(%ebp),%eax