408b68:	8b cb                	mov    %ebx,%ecx
408b6a:	e8 f6 f4 ff ff       	call   0x408065
408b6f:	85 c0                	test   %eax,%eax
408b71:	74 0a                	je     0x408b7d
408b73:	68 dc 29 40 00       	push   $0x4029dc
408b78:	e9 7d 07 00 00       	jmp    0x4092fa
408b7d:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
408b80:	8b 41 0c             	mov    0xc(%ecx),%eax
408b83:	85 c0                	test   %eax,%eax
408b85:	74 23                	je     0x408baa
408b87:	83 f8 04             	cmp    $0x4,%eax
408b8a:	74 0a                	je     0x408b96
408b8c:	68 dc 29 40 00       	push   $0x4029dc
408b91:	e9 fe fb ff ff       	jmp    0x408794
408b96:	85 c0                	test   %eax,%eax
408b98:	74 10                	je     0x408baa
408b9a:	ff 31                	push   (%ecx)
408b9c:	68 e8 29 40 00       	push   $0x4029e8
408ba1:	56                   	push   %esi
408ba2:	e8 a1 f7 ff ff       	call   0x408348
408ba7:	83 c4 0c             	add    $0xc,%esp
408baa:	8d 45 d4             	lea    -0x2c(%ebp),%eax
408bad:	50                   	push   %eax
408bae:	8d 45 c8             	lea    -0x38(%ebp),%eax
408bb1:	50                   	push   %eax
408bb2:	51                   	push   %ecx
408bb3:	6a 1a                	push   $0x1a
408bb5:	5a                   	pop    %edx
408bb6:	8b cb                	mov    %ebx,%ecx
408bb8:	e8 a8 f4 ff ff       	call   0x408065
408bbd:	85 c0                	test   %eax,%eax
408bbf:	74 0a                	je     0x408bcb
408bc1:	68 00 2a 40 00       	push   $0x402a00
408bc6:	e9 2f 07 00 00       	jmp    0x4092fa
408bcb:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
408bce:	8b 41 0c             	mov    0xc(%ecx),%eax
408bd1:	85 c0                	test   %eax,%eax
408bd3:	74 23                	je     0x408bf8
408bd5:	83 f8 04             	cmp    $0x4,%eax
408bd8:	74 0a                	je     0x408be4
408bda:	68 00 2a 40 00       	push   $0x402a00
408bdf:	e9 b0 fb ff ff       	jmp    0x408794
408be4:	85 c0                	test   %eax,%eax
408be6:	74 10                	je     0x408bf8
408be8:	ff 31                	push   (%ecx)
408bea:	68 10 2a 40 00       	push   $0x402a10
408bef:	56                   	push   %esi
408bf0:	e8 53 f7 ff ff       	call   0x408348
408bf5:	83 c4 0c             	add    $0xc,%esp
408bf8:	8d 45 d4             	lea    -0x2c(%ebp),%eax
408bfb:	50                   	push   %eax
408bfc:	8d 45 c8             	lea    -0x38(%ebp),%eax
408bff:	50                   	push   %eax
408c00:	51                   	push   %ecx
408c01:	6a 19                	push   $0x19
408c03:	5a                   	pop    %edx
408c04:	8b cb                	mov    %ebx,%ecx
408c06:	e8 5a f4 ff ff       	call   0x408065
408c0b:	85 c0                	test   %eax,%eax
408c0d:	74 0a                	je     0x408c19
408c0f:	68 2c 2a 40 00       	push   $0x402a2c
408c14:	e9 e1 06 00 00       	jmp    0x4092fa
408c19:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
408c1c:	8b 41 0c             	mov    0xc(%ecx),%eax
408c1f:	85 c0                	test   %eax,%eax
408c21:	74 30                	je     0x408c53
408c23:	83 f8 01             	cmp    $0x1,%eax
408c26:	74 0a                	je     0x408c32
408c28:	68 2c 2a 40 00       	push   $0x402a2c
408c2d:	e9 62 fb ff ff       	jmp    0x408794
408c32:	85 c0                	test   %eax,%eax
408c34:	74 1d                	je     0x408c53
408c36:	b8 80 24 40 00       	mov    $0x402480,%eax
408c3b:	39 39                	cmp    %edi,(%ecx)
408c3d:	75 05                	jne    0x408c44
408c3f:	b8 8c 24 40 00       	mov    $0x40248c,%eax
408c44:	50                   	push   %eax
408c45:	68 54 2a 40 00       	push   $0x402a54
408c4a:	56                   	push   %esi
408c4b:	e8 f8 f6 ff ff       	call   0x408348
408c50:	83 c4 0c             	add    $0xc,%esp
408c53:	8d 45 d4             	lea    -0x2c(%ebp),%eax
408c56:	50                   	push   %eax
408c57:	8d 45 c8             	lea    -0x38(%ebp),%eax
408c5a:	50                   	push   %eax
408c5b:	51                   	push   %ecx
408c5c:	6a 0b                	push   $0xb
408c5e:	5a                   	pop    %edx
408c5f:	8b cb                	mov    %ebx,%ecx
408c61:	e8 ff f3 ff ff       	call   0x408065
408c66:	85 c0                	test   %eax,%eax
408c68:	74 0a                	je     0x408c74
408c6a:	68 88 2a 40 00       	push   $0x402a88
408c6f:	e9 86 06 00 00       	jmp    0x4092fa
408c74:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
408c77:	8b 41 0c             	mov    0xc(%ecx),%eax
408c7a:	85 c0                	test   %eax,%eax
408c7c:	74 23                	je     0x408ca1
408c7e:	83 f8 04             	cmp    $0x4,%eax
408c81:	74 0a                	je     0x408c8d
408c83:	68 88 2a 40 00       	push   $0x402a88
408c88:	e9 07 fb ff ff       	jmp    0x408794
408c8d:	85 c0                	test   %eax,%eax
408c8f:	74 10                	je     0x408ca1
408c91:	ff 31                	push   (%ecx)
408c93:	68 a4 2a 40 00       	push   $0x402aa4
408c98:	56                   	push   %esi
408c99:	e8 aa f6 ff ff       	call   0x408348
408c9e:	83 c4 0c             	add    $0xc,%esp
408ca1:	83 7d c0 01          	cmpl   $0x1,-0x40(%ebp)
408ca5:	75 54                	jne    0x408cfb
408ca7:	83 7d c4 01          	cmpl   $0x1,-0x3c(%ebp)
408cab:	75 4e                	jne    0x408cfb
408cad:	8d 45 d4             	lea    -0x2c(%ebp),%eax
408cb0:	50                   	push   %eax
408cb1:	8d 45 c8             	lea    -0x38(%ebp),%eax
408cb4:	50                   	push   %eax
408cb5:	51                   	push   %ecx
408cb6:	6a 0c                	push   $0xc
408cb8:	5a                   	pop    %edx
408cb9:	8b cb                	mov    %ebx,%ecx
408cbb:	e8 a5 f3 ff ff       	call   0x408065
408cc0:	85 c0                	test   %eax,%eax
408cc2:	74 0a                	je     0x408cce
408cc4:	68 cc 2a 40 00       	push   $0x402acc
408cc9:	e9 2c 06 00 00       	jmp    0x4092fa
408cce:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
408cd1:	8b 41 0c             	mov    0xc(%ecx),%eax
408cd4:	85 c0                	test   %eax,%eax
408cd6:	74 23                	je     0x408cfb
408cd8:	83 f8 02             	cmp    $0x2,%eax
408cdb:	74 0a                	je     0x408ce7
408cdd:	68 cc 2a 40 00       	push   $0x402acc
408ce2:	e9 ad fa ff ff       	jmp    0x408794
408ce7:	85 c0                	test   %eax,%eax
408ce9:	74 10                	je     0x408cfb
408ceb:	ff 31                	push   (%ecx)
408ced:	68 e8 2a 40 00       	push   $0x402ae8
408cf2:	56                   	push   %esi
408cf3:	e8 50 f6 ff ff       	call   0x408348
408cf8:	83 c4 0c             	add    $0xc,%esp
408cfb:	8d 45 d4             	lea    -0x2c(%ebp),%eax
408cfe:	50                   	push   %eax
408cff:	8d 45 c8             	lea    -0x38(%ebp),%eax
408d02:	50                   	push   %eax
408d03:	51                   	push   %ecx
408d04:	6a 12                	push   $0x12
408d06:	5a                   	pop    %edx
408d07:	8b cb                	mov    %ebx,%ecx
408d09:	e8 57 f3 ff ff       	call   0x408065
408d0e:	85 c0                	test   %eax,%eax
408d10:	74 0a                	je     0x408d1c
408d12:	68 10 2b 40 00       	push   $0x402b10
408d17:	e9 de 05 00 00       	jmp    0x4092fa
408d1c:	8b 7d d4             	mov    -0x2c(%ebp),%edi
408d1f:	8b 47 0c             	mov    0xc(%edi),%eax
408d22:	85 c0                	test   %eax,%eax
408d24:	74 3a                	je     0x408d60
408d26:	83 f8 02             	cmp    $0x2,%eax
408d29:	74 0a                	je     0x408d35
408d2b:	68 10 2b 40 00       	push   $0x402b10
408d30:	e9 5f fa ff ff       	jmp    0x408794
408d35:	85 c0                	test   %eax,%eax
408d37:	74 27                	je     0x408d60
408d39:	8b 17                	mov    (%edi),%edx
408d3b:	b9 a0 11 41 00       	mov    $0x4111a0,%ecx
408d40:	e8 1a 4e 00 00       	call   0x40db5f
408d45:	85 c0                	test   %eax,%eax
408d47:	75 08                	jne    0x408d51
408d49:	52                   	push   %edx
408d4a:	6a 14                	push   $0x14
408d4c:	e9 45 fa ff ff       	jmp    0x408796
408d51:	50                   	push   %eax
408d52:	68 2c 2b 40 00       	push   $0x402b2c
408d57:	56                   	push   %esi
408d58:	e8 eb f5 ff ff       	call   0x408348
408d5d:	83 c4 0c             	add    $0xc,%esp
408d60:	8d 45 d4             	lea    -0x2c(%ebp),%eax
408d63:	50                   	push   %eax
408d64:	8d 45 c8             	lea    -0x38(%ebp),%eax
408d67:	50                   	push   %eax
408d68:	51                   	push   %ecx
408d69:	6a 11                	push   $0x11
408d6b:	5a                   	pop    %edx
408d6c:	8b cb                	mov    %ebx,%ecx
408d6e:	e8 f2 f2 ff ff       	call   0x408065
408d73:	85 c0                	test   %eax,%eax
408d75:	74 0a                	je     0x408d81
408d77:	68 54 2b 40 00       	push   $0x402b54
408d7c:	e9 79 05 00 00       	jmp    0x4092fa
408d81:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
408d84:	8b 41 0c             	mov    0xc(%ecx),%eax
408d87:	85 c0                	test   %eax,%eax
408d89:	74 23                	je     0x408dae
408d8b:	83 f8 04             	cmp    $0x4,%eax
408d8e:	74 0a                	je     0x408d9a
408d90:	68 54 2b 40 00       	push   $0x402b54
408d95:	e9 fa f9 ff ff       	jmp    0x408794
408d9a:	85 c0                	test   %eax,%eax
408d9c:	74 10                	je     0x408dae
408d9e:	ff 31                	push   (%ecx)
408da0:	68 64 2b 40 00       	push   $0x402b64
408da5:	56                   	push   %esi
408da6:	e8 9d f5 ff ff       	call   0x408348
408dab:	83 c4 0c             	add    $0xc,%esp
408dae:	8d 45 d4             	lea    -0x2c(%ebp),%eax
408db1:	50                   	push   %eax
408db2:	8d 45 c8             	lea    -0x38(%ebp),%eax
408db5:	50                   	push   %eax
408db6:	51                   	push   %ecx
408db7:	6a 13                	push   $0x13
408db9:	5a                   	pop    %edx
408dba:	8b cb                	mov    %ebx,%ecx
408dbc:	e8 a4 f2 ff ff       	call   0x408065
408dc1:	85 c0                	test   %eax,%eax
408dc3:	74 0a                	je     0x408dcf
408dc5:	68 80 2b 40 00       	push   $0x402b80
408dca:	e9 2b 05 00 00       	jmp    0x4092fa
408dcf:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
408dd2:	8b 41 0c             	mov    0xc(%ecx),%eax
408dd5:	85 c0                	test   %eax,%eax
408dd7:	74 23                	je     0x408dfc
408dd9:	83 f8 04             	cmp    $0x4,%eax
408ddc:	74 0a                	je     0x408de8
408dde:	68 80 2b 40 00       	push   $0x402b80
408de3:	e9 ac f9 ff ff       	jmp    0x408794
408de8:	85 c0                	test   %eax,%eax
408dea:	74 10                	je     0x408dfc
408dec:	ff 31                	push   (%ecx)
408dee:	68 90 2b 40 00       	push   $0x402b90
408df3:	56                   	push   %esi
408df4:	e8 4f f5 ff ff       	call   0x408348
408df9:	83 c4 0c             	add    $0xc,%esp
408dfc:	8d 45 d4             	lea    -0x2c(%ebp),%eax
408dff:	50                   	push   %eax
408e00:	8d 45 c8             	lea    -0x38(%ebp),%eax
408e03:	50                   	push   %eax
408e04:	51                   	push   %ecx
408e05:	6a 14                	push   $0x14
408e07:	5a                   	pop    %edx
408e08:	8b cb                	mov    %ebx,%ecx
408e0a:	e8 56 f2 ff ff       	call   0x408065
408e0f:	85 c0                	test   %eax,%eax
408e11:	74 0a                	je     0x408e1d
408e13:	68 ac 2b 40 00       	push   $0x402bac
408e18:	e9 dd 04 00 00       	jmp    0x4092fa
408e1d:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
408e20:	8b 41 0c             	mov    0xc(%ecx),%eax
408e23:	85 c0                	test   %eax,%eax
408e25:	74 23                	je     0x408e4a
408e27:	83 f8 04             	cmp    $0x4,%eax
408e2a:	74 0a                	je     0x408e36
408e2c:	68 ac 2b 40 00       	push   $0x402bac
408e31:	e9 5e f9 ff ff       	jmp    0x408794
408e36:	85 c0                	test   %eax,%eax
408e38:	74 10                	je     0x408e4a
408e3a:	ff 31                	push   (%ecx)
408e3c:	68 c8 2b 40 00       	push   $0x402bc8
408e41:	56                   	push   %esi
408e42:	e8 01 f5 ff ff       	call   0x408348
408e47:	83 c4 0c             	add    $0xc,%esp
408e4a:	8b 7d c0             	mov    -0x40(%ebp),%edi
408e4d:	83 ff 01             	cmp    $0x1,%edi
408e50:	0f 85 d7 00 00 00    	jne    0x408f2d
408e56:	8d 45 d4             	lea    -0x2c(%ebp),%eax
408e59:	50                   	push   %eax
408e5a:	8d 45 c8             	lea    -0x38(%ebp),%eax
408e5d:	50                   	push   %eax
408e5e:	51                   	push   %ecx
408e5f:	6a 15                	push   $0x15
408e61:	5a                   	pop    %edx
408e62:	8b cb                	mov    %ebx,%ecx
408e64:	e8 fc f1 ff ff       	call   0x408065
408e69:	85 c0                	test   %eax,%eax
408e6b:	74 0a                	je     0x408e77
408e6d:	68 f0 2b 40 00       	push   $0x402bf0
408e72:	e9 83 04 00 00       	jmp    0x4092fa
408e77:	8b 55 d4             	mov    -0x2c(%ebp),%edx
408e7a:	8b 42 0c             	mov    0xc(%edx),%eax
408e7d:	85 c0                	test   %eax,%eax
408e7f:	74 32                	je     0x408eb3
408e81:	83 f8 02             	cmp    $0x2,%eax
408e84:	75 14                	jne    0x408e9a
408e86:	85 c0                	test   %eax,%eax
408e88:	74 29                	je     0x408eb3
408e8a:	8b 12                	mov    (%edx),%edx
408e8c:	b9 60 11 41 00       	mov    $0x411160,%ecx
408e91:	e8 c9 4c 00 00       	call   0x40db5f
408e96:	85 c0                	test   %eax,%eax
408e98:	75 0a                	jne    0x408ea4
408e9a:	68 f0 2b 40 00       	push   $0x402bf0
408e9f:	e9 f0 f8 ff ff       	jmp    0x408794
408ea4:	50                   	push   %eax
408ea5:	68 10 2c 40 00       	push   $0x402c10
408eaa:	56                   	push   %esi
408eab:	e8 98 f4 ff ff       	call   0x408348
408eb0:	83 c4 0c             	add    $0xc,%esp
408eb3:	8d 45 d4             	lea    -0x2c(%ebp),%eax
408eb6:	50                   	push   %eax
408eb7:	8d 45 c8             	lea    -0x38(%ebp),%eax
408eba:	50                   	push   %eax
408ebb:	51                   	push   %ecx
408ebc:	6a 16                	push   $0x16
408ebe:	5a                   	pop    %edx
408ebf:	8b cb                	mov    %ebx,%ecx
408ec1:	e8 9f f1 ff ff       	call   0x408065
408ec6:	85 c0                	test   %eax,%eax
408ec8:	74 0a                	je     0x408ed4
408eca:	68 3c 2c 40 00       	push   $0x402c3c
408ecf:	e9 26 04 00 00       	jmp    0x4092fa
408ed4:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
408ed7:	8b 41 0c             	mov    0xc(%ecx),%eax
408eda:	85 c0                	test   %eax,%eax
408edc:	74 0f                	je     0x408eed
408ede:	83 f8 04             	cmp    $0x4,%eax
408ee1:	74 13                	je     0x408ef6
408ee3:	68 3c 2c 40 00       	push   $0x402c3c
408ee8:	e9 a7 f8 ff ff       	jmp    0x408794
408eed:	83 f8 04             	cmp    $0x4,%eax
408ef0:	0f 85 e9 01 00 00    	jne    0x4090df
408ef6:	8b 01                	mov    (%ecx),%eax
408ef8:	85 c0                	test   %eax,%eax
408efa:	0f 84 df 01 00 00    	je     0x4090df
408f00:	33 c9                	xor    %ecx,%ecx
408f02:	66 39 08             	cmp    %cx,(%eax)
408f05:	0f 84 d4 01 00 00    	je     0x4090df
408f0b:	50                   	push   %eax
408f0c:	68 5c 2c 40 00       	push   $0x402c5c
408f11:	56                   	push   %esi
408f12:	e8 31 f4 ff ff       	call   0x408348
408f17:	83 c4 0c             	add    $0xc,%esp
408f1a:	68 88 2c 40 00       	push   $0x402c88
408f1f:	68 8c 2c 40 00       	push   $0x402c8c
408f24:	56                   	push   %esi
408f25:	e8 1e f4 ff ff       	call   0x408348
408f2a:	83 c4 0c             	add    $0xc,%esp
408f2d:	85 ff                	test   %edi,%edi
408f2f:	0f 85 aa 01 00 00    	jne    0x4090df
408f35:	8d 45 d4             	lea    -0x2c(%ebp),%eax
408f38:	50                   	push   %eax
408f39:	8d 45 c8             	lea    -0x38(%ebp),%eax
408f3c:	50                   	push   %eax
408f3d:	51                   	push   %ecx
408f3e:	6a 1c                	push   $0x1c
408f40:	5a                   	pop    %edx
408f41:	8b cb                	mov    %ebx,%ecx
408f43:	e8 1d f1 ff ff       	call   0x408065
408f48:	85 c0                	test   %eax,%eax
408f4a:	74 0a                	je     0x408f56
408f4c:	68 c0 2c 40 00       	push   $0x402cc0