972c4a:	cc                   	int3
972c4b:	cc                   	int3
972c4c:	cc                   	int3
972c4d:	cc                   	int3
972c4e:	cc                   	int3
972c4f:	cc                   	int3
972c50:	cc                   	int3
972c51:	cc                   	int3
972c52:	cc                   	int3
972c53:	cc                   	int3
972c54:	cc                   	int3
972c55:	cc                   	int3
972c56:	cc                   	int3
972c57:	cc                   	int3
972c58:	cc                   	int3
972c59:	cc                   	int3
972c5a:	cc                   	int3
972c5b:	cc                   	int3
972c5c:	cc                   	int3
972c5d:	cc                   	int3
972c5e:	cc                   	int3
972c5f:	cc                   	int3
972c60:	cc                   	int3
972c61:	cc                   	int3
972c62:	cc                   	int3
972c63:	56                   	push   %esi
972c64:	8b f1                	mov    %ecx,%esi
972c66:	e8 f5 f3 ab ff       	call   0x432060
972c6b:	83 f8 ff             	cmp    $0xffffffff,%eax
972c6e:	75 04                	jne    0x972c74
972c70:	0b c0                	or     %eax,%eax
972c72:	eb 21                	jmp    0x972c95
972c74:	f6 86 5c 01 00 00 10 	testb  $0x10,0x15c(%esi)
972c7b:	74 10                	je     0x972c8d
972c7d:	6a 00                	push   $0x0
972c7f:	68 00 04 00 00       	push   $0x400
972c84:	6a 00                	push   $0x0
972c86:	8b ce                	mov    %esi,%ecx
972c88:	e8 ec 91 a9 ff       	call   0x40be79
972c8d:	89 35 34 f9 d7 00    	mov    %esi,0xd7f934
972c93:	33 c0                	xor    %eax,%eax
972c95:	5e                   	pop    %esi
972c96:	c2 04 00             	ret    $0x4
972c99:	cc                   	int3
972c9a:	cc                   	int3
972c9b:	cc                   	int3
972c9c:	cc                   	int3
972c9d:	cc                   	int3
972c9e:	cc                   	int3
972c9f:	cc                   	int3
972ca0:	cc                   	int3
972ca1:	cc                   	int3
972ca2:	cc                   	int3
972ca3:	cc                   	int3
972ca4:	cc                   	int3
972ca5:	cc                   	int3
972ca6:	55                   	push   %ebp
972ca7:	8b ec                	mov    %esp,%ebp
972ca9:	6a ff                	push   $0xffffffff
972cab:	68 20 ca ba 00       	push   $0xbaca20
972cb0:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
972cb6:	50                   	push   %eax
972cb7:	b8 24 1f 00 00       	mov    $0x1f24,%eax
972cbc:	e8 d5 7c ab ff       	call   0x42a996
972cc1:	a1 24 f6 d5 00       	mov    0xd5f624,%eax
972cc6:	33 c5                	xor    %ebp,%eax
972cc8:	89 45 f0             	mov    %eax,-0x10(%ebp)
972ccb:	56                   	push   %esi
972ccc:	50                   	push   %eax
972ccd:	8d 45 f4             	lea    -0xc(%ebp),%eax
972cd0:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
972cd6:	8b 45 10             	mov    0x10(%ebp),%eax
972cd9:	8b 4d 08             	mov    0x8(%ebp),%ecx
972cdc:	8b 55 0c             	mov    0xc(%ebp),%edx
972cdf:	50                   	push   %eax
972ce0:	51                   	push   %ecx
972ce1:	52                   	push   %edx
972ce2:	8d 8d d0 e0 ff ff    	lea    -0x1f30(%ebp),%ecx
972ce8:	e8 74 83 ac ff       	call   0x43b061
972ced:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
972cf1:	8d 8d d0 e0 ff ff    	lea    -0x1f30(%ebp),%ecx
972cf7:	e8 69 ad ab ff       	call   0x42da65
972cfc:	8d 8d d0 e0 ff ff    	lea    -0x1f30(%ebp),%ecx
972d02:	8d 70 ff             	lea    -0x1(%eax),%esi
972d05:	f7 de                	neg    %esi
972d07:	1b f6                	sbb    %esi,%esi
972d09:	e8 49 61 ab ff       	call   0x428e57
972d0e:	8d 46 01             	lea    0x1(%esi),%eax
972d11:	8b 4d f4             	mov    -0xc(%ebp),%ecx
972d14:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
972d1b:	59                   	pop    %ecx
972d1c:	5e                   	pop    %esi
972d1d:	8b 4d f0             	mov    -0x10(%ebp),%ecx
972d20:	33 cd                	xor    %ebp,%ecx
972d22:	e8 8f 8a aa ff       	call   0x41b7b6
972d27:	8b e5                	mov    %ebp,%esp
972d29:	5d                   	pop    %ebp
972d2a:	c2 0c 00             	ret    $0xc
972d2d:	cc                   	int3
972d2e:	cc                   	int3
972d2f:	cc                   	int3
972d30:	cc                   	int3
972d31:	cc                   	int3
972d32:	cc                   	int3
972d33:	cc                   	int3
972d34:	cc                   	int3
972d35:	cc                   	int3
972d36:	cc                   	int3
972d37:	cc                   	int3
972d38:	cc                   	int3
972d39:	cc                   	int3
972d3a:	cc                   	int3
972d3b:	cc                   	int3
972d3c:	cc                   	int3
972d3d:	cc                   	int3
972d3e:	cc                   	int3
972d3f:	cc                   	int3
972d40:	cc                   	int3
972d41:	cc                   	int3
972d42:	cc                   	int3
972d43:	cc                   	int3
972d44:	cc                   	int3
972d45:	cc                   	int3
972d46:	cc                   	int3
972d47:	cc                   	int3
972d48:	cc                   	int3
972d49:	cc                   	int3
972d4a:	cc                   	int3
972d4b:	cc                   	int3
972d4c:	cc                   	int3
972d4d:	cc                   	int3
972d4e:	56                   	push   %esi
972d4f:	8b f1                	mov    %ecx,%esi
972d51:	e8 a7 1f ab ff       	call   0x424cfd
972d56:	56                   	push   %esi
972d57:	50                   	push   %eax
972d58:	8b 86 54 01 00 00    	mov    0x154(%esi),%eax
972d5e:	ff 35 0c d3 d7 00    	push   0xd7d30c
972d64:	ff 70 20             	push   0x20(%eax)
972d67:	ff 15 20 40 d8 00    	call   *0xd84020
972d6d:	33 c0                	xor    %eax,%eax
972d6f:	40                   	inc    %eax
972d70:	5e                   	pop    %esi
972d71:	c2 04 00             	ret    $0x4
972d74:	cc                   	int3
972d75:	cc                   	int3
972d76:	cc                   	int3
972d77:	cc                   	int3
972d78:	cc                   	int3
972d79:	cc                   	int3
972d7a:	cc                   	int3
972d7b:	cc                   	int3
972d7c:	cc                   	int3
972d7d:	6a 54                	push   $0x54
972d7f:	b8 5c ca ba 00       	mov    $0xbaca5c,%eax
972d84:	e8 dc f2 ab ff       	call   0x432065
972d89:	8b d9                	mov    %ecx,%ebx
972d8b:	e8 61 77 aa ff       	call   0x41a4f1
972d90:	8b f0                	mov    %eax,%esi
972d92:	33 c0                	xor    %eax,%eax
972d94:	89 45 b0             	mov    %eax,-0x50(%ebp)
972d97:	89 45 b4             	mov    %eax,-0x4c(%ebp)
972d9a:	89 45 b8             	mov    %eax,-0x48(%ebp)
972d9d:	89 45 bc             	mov    %eax,-0x44(%ebp)
972da0:	8d 45 b0             	lea    -0x50(%ebp),%eax
972da3:	50                   	push   %eax
972da4:	ff 73 20             	push   0x20(%ebx)
972da7:	89 75 a8             	mov    %esi,-0x58(%ebp)
972daa:	ff 15 54 40 d8 00    	call   *0xd84054
972db0:	6a 02                	push   $0x2
972db2:	8b cb                	mov    %ebx,%ecx
972db4:	e8 00 36 ab ff       	call   0x4263b9
972db9:	8b f8                	mov    %eax,%edi
972dbb:	85 ff                	test   %edi,%edi
972dbd:	75 08                	jne    0x972dc7
972dbf:	8b c6                	mov    %esi,%eax
972dc1:	e8 ed fb a9 ff       	call   0x4129b3
972dc6:	c3                   	ret
972dc7:	6a 05                	push   $0x5
972dc9:	8b cf                	mov    %edi,%ecx
972dcb:	e8 c7 d1 a9 ff       	call   0x40ff97
972dd0:	6a 01                	push   $0x1
972dd2:	8b cf                	mov    %edi,%ecx
972dd4:	e8 31 18 aa ff       	call   0x41460a
972dd9:	33 f6                	xor    %esi,%esi
972ddb:	8d 45 d0             	lea    -0x30(%ebp),%eax
972dde:	50                   	push   %eax
972ddf:	89 75 d0             	mov    %esi,-0x30(%ebp)
972de2:	89 75 d4             	mov    %esi,-0x2c(%ebp)
972de5:	89 75 d8             	mov    %esi,-0x28(%ebp)
972de8:	89 75 dc             	mov    %esi,-0x24(%ebp)
972deb:	ff 77 20             	push   0x20(%edi)
972dee:	ff 15 54 40 d8 00    	call   *0xd84054
972df4:	6a 02                	push   $0x2
972df6:	8d 45 d0             	lea    -0x30(%ebp),%eax
972df9:	50                   	push   %eax
972dfa:	ff 73 20             	push   0x20(%ebx)
972dfd:	ff 77 20             	push   0x20(%edi)
972e00:	ff 15 f8 3c d8 00    	call   *0xd83cf8
972e06:	8d 45 c0             	lea    -0x40(%ebp),%eax
972e09:	89 75 c0             	mov    %esi,-0x40(%ebp)
972e0c:	50                   	push   %eax
972e0d:	ff 73 20             	push   0x20(%ebx)
972e10:	89 75 c4             	mov    %esi,-0x3c(%ebp)
972e13:	89 75 c8             	mov    %esi,-0x38(%ebp)
972e16:	89 75 cc             	mov    %esi,-0x34(%ebp)
972e19:	ff 15 40 3e d8 00    	call   *0xd83e40
972e1f:	8b 4d cc             	mov    -0x34(%ebp),%ecx
972e22:	2b 4d c4             	sub    -0x3c(%ebp),%ecx
972e25:	8b 45 dc             	mov    -0x24(%ebp),%eax
972e28:	2b 4d d4             	sub    -0x2c(%ebp),%ecx
972e2b:	83 c0 10             	add    $0x10,%eax
972e2e:	6a 16                	push   $0x16
972e30:	03 c1                	add    %ecx,%eax
972e32:	8b cb                	mov    %ebx,%ecx
972e34:	50                   	push   %eax
972e35:	8b 45 c8             	mov    -0x38(%ebp),%eax
972e38:	2b 45 c0             	sub    -0x40(%ebp),%eax
972e3b:	50                   	push   %eax
972e3c:	56                   	push   %esi
972e3d:	56                   	push   %esi
972e3e:	56                   	push   %esi
972e3f:	e8 ac 61 ac ff       	call   0x438ff0
972e44:	8b 45 d4             	mov    -0x2c(%ebp),%eax
972e47:	8b 4d d0             	mov    -0x30(%ebp),%ecx
972e4a:	83 c0 04             	add    $0x4,%eax
972e4d:	2b 4d d8             	sub    -0x28(%ebp),%ecx
972e50:	6a 15                	push   $0x15
972e52:	56                   	push   %esi
972e53:	56                   	push   %esi
972e54:	50                   	push   %eax
972e55:	8b 45 b8             	mov    -0x48(%ebp),%eax
972e58:	83 c0 f8             	add    $0xfffffff8,%eax
972e5b:	03 c1                	add    %ecx,%eax
972e5d:	8b cf                	mov    %edi,%ecx
972e5f:	50                   	push   %eax
972e60:	56                   	push   %esi
972e61:	e8 8a 61 ac ff       	call   0x438ff0
972e66:	6a 01                	push   $0x1
972e68:	8b cb                	mov    %ebx,%ecx
972e6a:	e8 4a 35 ab ff       	call   0x4263b9
972e6f:	85 c0                	test   %eax,%eax
972e71:	74 0b                	je     0x972e7e
972e73:	56                   	push   %esi
972e74:	56                   	push   %esi
972e75:	6a 01                	push   $0x1
972e77:	8b c8                	mov    %eax,%ecx
972e79:	e8 8d 94 a9 ff       	call   0x40c30b
972e7e:	56                   	push   %esi
972e7f:	6a 01                	push   $0x1
972e81:	56                   	push   %esi
972e82:	8b cf                	mov    %edi,%ecx
972e84:	e8 82 94 a9 ff       	call   0x40c30b
972e89:	e8 87 37 ac ff       	call   0x436615
972e8e:	50                   	push   %eax
972e8f:	8d 4d ac             	lea    -0x54(%ebp),%ecx
972e92:	e8 7d 6d a9 ff       	call   0x409c14
972e97:	89 75 fc             	mov    %esi,-0x4(%ebp)
972e9a:	be e9 3e 00 00       	mov    $0x3ee9,%esi
972e9f:	56                   	push   %esi
972ea0:	e8 d6 79 a9 ff       	call   0x40a87b
972ea5:	85 c0                	test   %eax,%eax
972ea7:	0f 84 83 01 00 00    	je     0x973030
972ead:	56                   	push   %esi
972eae:	50                   	push   %eax
972eaf:	8d 4d ac             	lea    -0x54(%ebp),%ecx
972eb2:	e8 15 10 a9 ff       	call   0x403ecc
972eb7:	85 c0                	test   %eax,%eax
972eb9:	0f 84 71 01 00 00    	je     0x973030
972ebf:	8b 75 ac             	mov    -0x54(%ebp),%esi
972ec2:	8b cf                	mov    %edi,%ecx
972ec4:	56                   	push   %esi
972ec5:	e8 64 28 ac ff       	call   0x43572e
972eca:	8d 45 e0             	lea    -0x20(%ebp),%eax
972ecd:	33 ff                	xor    %edi,%edi
972ecf:	50                   	push   %eax
972ed0:	ff 73 20             	push   0x20(%ebx)
972ed3:	89 7d e0             	mov    %edi,-0x20(%ebp)
972ed6:	89 7d e4             	mov    %edi,-0x1c(%ebp)
972ed9:	89 7d e8             	mov    %edi,-0x18(%ebp)
972edc:	89 7d ec             	mov    %edi,-0x14(%ebp)
972edf:	ff 15 40 3e d8 00    	call   *0xd83e40
972ee5:	57                   	push   %edi
972ee6:	ff 15 9c 40 d8 00    	call   *0xd8409c
972eec:	6a 3e                	push   $0x3e
972eee:	89 45 a4             	mov    %eax,-0x5c(%ebp)
972ef1:	ff 15 9c 40 d8 00    	call   *0xd8409c
972ef7:	6a 01                	push   $0x1
972ef9:	8b f8                	mov    %eax,%edi
972efb:	ff 15 9c 40 d8 00    	call   *0xd8409c
972f01:	6a 3e                	push   $0x3e
972f03:	2b f8                	sub    %eax,%edi
972f05:	ff 15 9c 40 d8 00    	call   *0xd8409c
972f0b:	8b 4d e0             	mov    -0x20(%ebp),%ecx
972f0e:	03 c7                	add    %edi,%eax
972f10:	85 c9                	test   %ecx,%ecx
972f12:	78 33                	js     0x972f47
972f14:	8b 55 e4             	mov    -0x1c(%ebp),%edx
972f17:	85 d2                	test   %edx,%edx
972f19:	78 33                	js     0x972f4e
972f1b:	8b 7d a4             	mov    -0x5c(%ebp),%edi
972f1e:	39 7d e8             	cmp    %edi,-0x18(%ebp)
972f21:	7f 05                	jg     0x972f28
972f23:	39 45 ec             	cmp    %eax,-0x14(%ebp)
972f26:	7e 3f                	jle    0x972f67
972f28:	39 45 ec             	cmp    %eax,-0x14(%ebp)
972f2b:	7e 05                	jle    0x972f32
972f2d:	2b 55 ec             	sub    -0x14(%ebp),%edx
972f30:	03 d0                	add    %eax,%edx
972f32:	39 7d e8             	cmp    %edi,-0x18(%ebp)
972f35:	7e 05                	jle    0x972f3c
972f37:	2b 4d e8             	sub    -0x18(%ebp),%ecx
972f3a:	03 cf                	add    %edi,%ecx
972f3c:	6a 01                	push   $0x1
972f3e:	33 c0                	xor    %eax,%eax
972f40:	50                   	push   %eax
972f41:	50                   	push   %eax
972f42:	52                   	push   %edx
972f43:	51                   	push   %ecx
972f44:	50                   	push   %eax
972f45:	eb 19                	jmp    0x972f60
972f47:	8b 45 e4             	mov    -0x1c(%ebp),%eax
972f4a:	85 c0                	test   %eax,%eax
972f4c:	79 02                	jns    0x972f50
972f4e:	33 c0                	xor    %eax,%eax
972f50:	85 c9                	test   %ecx,%ecx
972f52:	79 02                	jns    0x972f56
972f54:	33 c9                	xor    %ecx,%ecx
972f56:	6a 01                	push   $0x1
972f58:	6a 00                	push   $0x0
972f5a:	6a 00                	push   $0x0
972f5c:	50                   	push   %eax
972f5d:	51                   	push   %ecx
972f5e:	6a 00                	push   $0x0
972f60:	8b cb                	mov    %ebx,%ecx
972f62:	e8 89 60 ac ff       	call   0x438ff0
972f67:	6a 09                	push   $0x9
972f69:	8b cb                	mov    %ebx,%ecx
972f6b:	e8 49 34 ab ff       	call   0x4263b9
972f70:	8b f8                	mov    %eax,%edi
972f72:	85 ff                	test   %edi,%edi
972f74:	75 10                	jne    0x972f86
972f76:	8d 4e f0             	lea    -0x10(%esi),%ecx
972f79:	e8 96 1c a9 ff       	call   0x404c14
972f7e:	8b 45 a8             	mov    -0x58(%ebp),%eax
972f81:	e9 3b fe ff ff       	jmp    0x972dc1
972f86:	f6 83 5c 01 00 00 08 	testb  $0x8,0x15c(%ebx)
972f8d:	74 14                	je     0x972fa3
972f8f:	6a 00                	push   $0x0
972f91:	8b cf                	mov    %edi,%ecx