42da59:	ff 15 b4 b1 44 00    	call   *0x44b1b4
42da5f:	8b 5d 08             	mov    0x8(%ebp),%ebx
42da62:	8d 4d fc             	lea    -0x4(%ebp),%ecx
42da65:	51                   	push   %ecx
42da66:	53                   	push   %ebx
42da67:	8b 03                	mov    (%ebx),%eax
42da69:	ff 50 38             	call   *0x38(%eax)
42da6c:	8b f0                	mov    %eax,%esi
42da6e:	85 f6                	test   %esi,%esi
42da70:	79 07                	jns    0x42da79
42da72:	68 74 08 46 00       	push   $0x460874
42da77:	eb 19                	jmp    0x42da92
42da79:	83 7d fc 02          	cmpl   $0x2,-0x4(%ebp)
42da7d:	74 1b                	je     0x42da9a
42da7f:	53                   	push   %ebx
42da80:	8b cf                	mov    %edi,%ecx
42da82:	e8 3a ff ff ff       	call   0x42d9c1
42da87:	8b f0                	mov    %eax,%esi
42da89:	85 f6                	test   %esi,%esi
42da8b:	79 0d                	jns    0x42da9a
42da8d:	68 94 08 46 00       	push   $0x460894
42da92:	56                   	push   %esi
42da93:	e8 97 26 01 00       	call   0x44012f
42da98:	59                   	pop    %ecx
42da99:	59                   	pop    %ecx
42da9a:	8d 47 08             	lea    0x8(%edi),%eax
42da9d:	50                   	push   %eax
42da9e:	ff 15 b8 b1 44 00    	call   *0x44b1b8
42daa4:	85 f6                	test   %esi,%esi
42daa6:	79 10                	jns    0x42dab8
42daa8:	ff 77 28             	push   0x28(%edi)
42daab:	83 67 20 00          	andl   $0x0,0x20(%edi)
42daaf:	89 77 24             	mov    %esi,0x24(%edi)
42dab2:	ff 15 28 b2 44 00    	call   *0x44b228
42dab8:	5f                   	pop    %edi
42dab9:	5e                   	pop    %esi
42daba:	5b                   	pop    %ebx
42dabb:	8b e5                	mov    %ebp,%esp
42dabd:	5d                   	pop    %ebp
42dabe:	c2 04 00             	ret    $0x4
42dac1:	55                   	push   %ebp
42dac2:	8b ec                	mov    %esp,%ebp
42dac4:	83 ec 14             	sub    $0x14,%esp
42dac7:	56                   	push   %esi
42dac8:	57                   	push   %edi
42dac9:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
42dacd:	8d 7d ec             	lea    -0x14(%ebp),%edi
42dad0:	33 c0                	xor    %eax,%eax
42dad2:	8d 55 fc             	lea    -0x4(%ebp),%edx
42dad5:	ab                   	stos   %eax,%es:(%edi)
42dad6:	52                   	push   %edx
42dad7:	68 58 0b 46 00       	push   $0x460b58
42dadc:	ab                   	stos   %eax,%es:(%edi)
42dadd:	ab                   	stos   %eax,%es:(%edi)
42dade:	ab                   	stos   %eax,%es:(%edi)
42dadf:	8b 45 08             	mov    0x8(%ebp),%eax
42dae2:	50                   	push   %eax
42dae3:	8b 08                	mov    (%eax),%ecx
42dae5:	ff 11                	call   *(%ecx)
42dae7:	85 c0                	test   %eax,%eax
42dae9:	78 63                	js     0x42db4e
42daeb:	8b 45 0c             	mov    0xc(%ebp),%eax
42daee:	8d 55 ec             	lea    -0x14(%ebp),%edx
42daf1:	89 45 f4             	mov    %eax,-0xc(%ebp)
42daf4:	8b 45 10             	mov    0x10(%ebp),%eax
42daf7:	89 45 f8             	mov    %eax,-0x8(%ebp)
42dafa:	8b 45 fc             	mov    -0x4(%ebp),%eax
42dafd:	c7 45 ec 02 00 00 00 	movl   $0x2,-0x14(%ebp)
42db04:	c7 45 f0 03 00 00 00 	movl   $0x3,-0x10(%ebp)
42db0b:	52                   	push   %edx
42db0c:	8b 08                	mov    (%eax),%ecx
42db0e:	50                   	push   %eax
42db0f:	ff 91 a4 00 00 00    	call   *0xa4(%ecx)
42db15:	8b f0                	mov    %eax,%esi
42db17:	85 f6                	test   %esi,%esi
42db19:	79 0f                	jns    0x42db2a
42db1b:	68 68 0b 46 00       	push   $0x460b68
42db20:	56                   	push   %esi
42db21:	e8 09 26 01 00       	call   0x44012f
42db26:	59                   	pop    %ecx
42db27:	59                   	pop    %ecx
42db28:	eb 26                	jmp    0x42db50
42db2a:	8b 45 fc             	mov    -0x4(%ebp),%eax
42db2d:	8d 55 ec             	lea    -0x14(%ebp),%edx
42db30:	c7 45 f0 04 00 00 00 	movl   $0x4,-0x10(%ebp)
42db37:	52                   	push   %edx
42db38:	50                   	push   %eax
42db39:	8b 08                	mov    (%eax),%ecx
42db3b:	ff 91 a4 00 00 00    	call   *0xa4(%ecx)
42db41:	8b f0                	mov    %eax,%esi
42db43:	85 f6                	test   %esi,%esi
42db45:	79 07                	jns    0x42db4e
42db47:	68 98 0b 46 00       	push   $0x460b98
42db4c:	eb d2                	jmp    0x42db20
42db4e:	33 f6                	xor    %esi,%esi
42db50:	8b 4d fc             	mov    -0x4(%ebp),%ecx
42db53:	85 c9                	test   %ecx,%ecx
42db55:	74 06                	je     0x42db5d
42db57:	8b 01                	mov    (%ecx),%eax
42db59:	51                   	push   %ecx
42db5a:	ff 50 08             	call   *0x8(%eax)
42db5d:	5f                   	pop    %edi
42db5e:	8b c6                	mov    %esi,%eax
42db60:	5e                   	pop    %esi
42db61:	8b e5                	mov    %ebp,%esp
42db63:	5d                   	pop    %ebp
42db64:	c2 0c 00             	ret    $0xc
42db67:	55                   	push   %ebp
42db68:	8b ec                	mov    %esp,%ebp
42db6a:	83 ec 20             	sub    $0x20,%esp
42db6d:	53                   	push   %ebx
42db6e:	56                   	push   %esi
42db6f:	8b d9                	mov    %ecx,%ebx
42db71:	33 f6                	xor    %esi,%esi
42db73:	57                   	push   %edi
42db74:	6a 07                	push   $0x7
42db76:	59                   	pop    %ecx
42db77:	8b 43 28             	mov    0x28(%ebx),%eax
42db7a:	8d 7d e0             	lea    -0x20(%ebp),%edi
42db7d:	89 45 fc             	mov    %eax,-0x4(%ebp)
42db80:	33 c0                	xor    %eax,%eax
42db82:	f3 ab                	rep stos %eax,%es:(%edi)
42db84:	68 ff 04 00 00       	push   $0x4ff
42db89:	68 e8 03 00 00       	push   $0x3e8
42db8e:	56                   	push   %esi
42db8f:	8d 45 fc             	lea    -0x4(%ebp),%eax
42db92:	50                   	push   %eax
42db93:	6a 01                	push   $0x1
42db95:	ff 15 64 b3 44 00    	call   *0x44b364
42db9b:	2b c6                	sub    %esi,%eax
42db9d:	74 63                	je     0x42dc02
42db9f:	83 e8 01             	sub    $0x1,%eax
42dba2:	74 13                	je     0x42dbb7
42dba4:	2d 01 01 00 00       	sub    $0x101,%eax
42dba9:	75 1c                	jne    0x42dbc7
42dbab:	ff 75 08             	push   0x8(%ebp)
42dbae:	8b cb                	mov    %ebx,%ecx
42dbb0:	e8 90 fe ff ff       	call   0x42da45
42dbb5:	eb cd                	jmp    0x42db84
42dbb7:	56                   	push   %esi
42dbb8:	56                   	push   %esi
42dbb9:	56                   	push   %esi
42dbba:	56                   	push   %esi
42dbbb:	8d 45 e0             	lea    -0x20(%ebp),%eax
42dbbe:	50                   	push   %eax
42dbbf:	ff 15 60 b3 44 00    	call   *0x44b360
42dbc5:	eb bd                	jmp    0x42db84
42dbc7:	ff 15 e8 b0 44 00    	call   *0x44b0e8
42dbcd:	0f b7 f0             	movzwl %ax,%esi
42dbd0:	81 ce 00 00 07 80    	or     $0x80070000,%esi
42dbd6:	85 c0                	test   %eax,%eax
42dbd8:	0f 4e f0             	cmovle %eax,%esi
42dbdb:	b8 05 40 00 80       	mov    $0x80004005,%eax
42dbe0:	85 f6                	test   %esi,%esi
42dbe2:	0f 49 f0             	cmovns %eax,%esi
42dbe5:	56                   	push   %esi
42dbe6:	68 c4 00 00 00       	push   $0xc4
42dbeb:	68 14 07 46 00       	push   $0x460714
42dbf0:	e8 de 5b fd ff       	call   0x4037d3
42dbf5:	68 f0 07 46 00       	push   $0x4607f0
42dbfa:	56                   	push   %esi
42dbfb:	e8 2f 25 01 00       	call   0x44012f
42dc00:	59                   	pop    %ecx
42dc01:	59                   	pop    %ecx
42dc02:	5f                   	pop    %edi
42dc03:	8b c6                	mov    %esi,%eax
42dc05:	5e                   	pop    %esi
42dc06:	5b                   	pop    %ebx
42dc07:	8b e5                	mov    %ebp,%esp
42dc09:	5d                   	pop    %ebp
42dc0a:	c2 04 00             	ret    $0x4
42dc0d:	55                   	push   %ebp
42dc0e:	8b ec                	mov    %esp,%ebp
42dc10:	83 ec 0c             	sub    $0xc,%esp
42dc13:	53                   	push   %ebx
42dc14:	56                   	push   %esi
42dc15:	57                   	push   %edi
42dc16:	8b 7d 0c             	mov    0xc(%ebp),%edi
42dc19:	33 f6                	xor    %esi,%esi
42dc1b:	89 75 fc             	mov    %esi,-0x4(%ebp)
42dc1e:	8b de                	mov    %esi,%ebx
42dc20:	89 75 f4             	mov    %esi,-0xc(%ebp)
42dc23:	89 75 f8             	mov    %esi,-0x8(%ebp)
42dc26:	ff 37                	push   (%edi)
42dc28:	ff 15 f8 b0 44 00    	call   *0x44b0f8
42dc2e:	83 f8 08             	cmp    $0x8,%eax
42dc31:	7d 2a                	jge    0x42dc5d
42dc33:	be 57 00 07 80       	mov    $0x80070057,%esi
42dc38:	56                   	push   %esi
42dc39:	68 4b 01 00 00       	push   $0x14b
42dc3e:	68 14 07 46 00       	push   $0x460714
42dc43:	e8 8b 5b fd ff       	call   0x4037d3
42dc48:	ff 37                	push   (%edi)
42dc4a:	68 e0 08 46 00       	push   $0x4608e0
42dc4f:	56                   	push   %esi
42dc50:	e8 da 24 01 00       	call   0x44012f
42dc55:	83 c4 0c             	add    $0xc,%esp
42dc58:	e9 ba 01 00 00       	jmp    0x42de17
42dc5d:	56                   	push   %esi
42dc5e:	ff 37                	push   (%edi)
42dc60:	8d 45 fc             	lea    -0x4(%ebp),%eax
42dc63:	50                   	push   %eax
42dc64:	e8 3c 45 fd ff       	call   0x4021a5
42dc69:	8b f0                	mov    %eax,%esi
42dc6b:	85 f6                	test   %esi,%esi
42dc6d:	79 12                	jns    0x42dc81
42dc6f:	68 00 09 46 00       	push   $0x460900
42dc74:	56                   	push   %esi
42dc75:	e8 b5 24 01 00       	call   0x44012f
42dc7a:	59                   	pop    %ecx
42dc7b:	59                   	pop    %ecx
42dc7c:	e9 96 01 00 00       	jmp    0x42de17
42dc81:	8b 45 fc             	mov    -0x4(%ebp),%eax
42dc84:	6a 68                	push   $0x68
42dc86:	59                   	pop    %ecx
42dc87:	6a 74                	push   $0x74
42dc89:	66 89 08             	mov    %cx,(%eax)
42dc8c:	8b 45 fc             	mov    -0x4(%ebp),%eax
42dc8f:	59                   	pop    %ecx
42dc90:	6a 70                	push   $0x70
42dc92:	66 89 48 02          	mov    %cx,0x2(%eax)
42dc96:	8b 45 fc             	mov    -0x4(%ebp),%eax
42dc99:	66 89 48 04          	mov    %cx,0x4(%eax)
42dc9d:	8b 45 fc             	mov    -0x4(%ebp),%eax
42dca0:	59                   	pop    %ecx
42dca1:	66 89 48 06          	mov    %cx,0x6(%eax)
42dca5:	8d 45 f4             	lea    -0xc(%ebp),%eax
42dca8:	50                   	push   %eax
42dca9:	e8 c9 f9 ff ff       	call   0x42d677
42dcae:	8b 7d f4             	mov    -0xc(%ebp),%edi
42dcb1:	8b f0                	mov    %eax,%esi
42dcb3:	85 f6                	test   %esi,%esi
42dcb5:	79 0a                	jns    0x42dcc1
42dcb7:	68 20 09 46 00       	push   $0x460920
42dcbc:	e9 24 01 00 00       	jmp    0x42dde5
42dcc1:	8b 45 0c             	mov    0xc(%ebp),%eax
42dcc4:	ff 70 08             	push   0x8(%eax)
42dcc7:	ff 70 04             	push   0x4(%eax)
42dcca:	57                   	push   %edi
42dccb:	e8 f1 fd ff ff       	call   0x42dac1
42dcd0:	8b f0                	mov    %eax,%esi
42dcd2:	85 f6                	test   %esi,%esi
42dcd4:	79 0a                	jns    0x42dce0
42dcd6:	68 3c 09 46 00       	push   $0x46093c
42dcdb:	e9 05 01 00 00       	jmp    0x42dde5
42dce0:	ff 75 10             	push   0x10(%ebp)
42dce3:	8b 07                	mov    (%edi),%eax
42dce5:	ff 75 fc             	push   -0x4(%ebp)
42dce8:	57                   	push   %edi
42dce9:	ff 50 10             	call   *0x10(%eax)
42dcec:	8b f0                	mov    %eax,%esi
42dcee:	89 75 0c             	mov    %esi,0xc(%ebp)
42dcf1:	85 f6                	test   %esi,%esi
42dcf3:	79 0a                	jns    0x42dcff
42dcf5:	68 64 09 46 00       	push   $0x460964
42dcfa:	e9 e6 00 00 00       	jmp    0x42dde5
42dcff:	6a 30                	push   $0x30
42dd01:	e8 ae 03 00 00       	call   0x42e0b4
42dd06:	59                   	pop    %ecx
42dd07:	85 c0                	test   %eax,%eax
42dd09:	74 15                	je     0x42dd20
42dd0b:	8d 4d 0c             	lea    0xc(%ebp),%ecx
42dd0e:	51                   	push   %ecx
42dd0f:	ff 75 08             	push   0x8(%ebp)
42dd12:	8b c8                	mov    %eax,%ecx
42dd14:	e8 96 f8 ff ff       	call   0x42d5af
42dd19:	8b 75 0c             	mov    0xc(%ebp),%esi
42dd1c:	8b d8                	mov    %eax,%ebx
42dd1e:	eb 02                	jmp    0x42dd22
42dd20:	33 db                	xor    %ebx,%ebx
42dd22:	85 db                	test   %ebx,%ebx
42dd24:	75 1f                	jne    0x42dd45
42dd26:	be 0e 00 07 80       	mov    $0x8007000e,%esi
42dd2b:	56                   	push   %esi
42dd2c:	68 63 01 00 00       	push   $0x163
42dd31:	68 14 07 46 00       	push   $0x460714
42dd36:	e8 98 5a fd ff       	call   0x4037d3
42dd3b:	68 84 09 46 00       	push   $0x460984
42dd40:	e9 a0 00 00 00       	jmp    0x42dde5
42dd45:	85 f6                	test   %esi,%esi
42dd47:	79 0a                	jns    0x42dd53
42dd49:	68 a8 09 46 00       	push   $0x4609a8
42dd4e:	e9 92 00 00 00       	jmp    0x42dde5
42dd53:	8b 07                	mov    (%edi),%eax
42dd55:	53                   	push   %ebx
42dd56:	57                   	push   %edi
42dd57:	ff 50 64             	call   *0x64(%eax)
42dd5a:	8b f0                	mov    %eax,%esi
42dd5c:	85 f6                	test   %esi,%esi
42dd5e:	79 07                	jns    0x42dd67
42dd60:	68 d0 09 46 00       	push   $0x4609d0
42dd65:	eb 7e                	jmp    0x42dde5
42dd67:	33 c0                	xor    %eax,%eax
42dd69:	89 45 f8             	mov    %eax,-0x8(%ebp)
42dd6c:	ff 73 28             	push   0x28(%ebx)
42dd6f:	89 43 24             	mov    %eax,0x24(%ebx)
42dd72:	89 43 20             	mov    %eax,0x20(%ebx)
42dd75:	ff 15 38 b2 44 00    	call   *0x44b238
42dd7b:	8b 07                	mov    (%edi),%eax
42dd7d:	57                   	push   %edi
42dd7e:	ff 50 1c             	call   *0x1c(%eax)
42dd81:	8b f0                	mov    %eax,%esi
42dd83:	85 f6                	test   %esi,%esi
42dd85:	78 59                	js     0x42dde0
42dd87:	57                   	push   %edi
42dd88:	8b cb                	mov    %ebx,%ecx
42dd8a:	e8 d8 fd ff ff       	call   0x42db67
42dd8f:	8b f0                	mov    %eax,%esi
42dd91:	85 f6                	test   %esi,%esi
42dd93:	78 44                	js     0x42ddd9
42dd95:	8b 73 24             	mov    0x24(%ebx),%esi
42dd98:	81 fe 42 06 07 80    	cmp    $0x80070642,%esi
42dd9e:	74 4d                	je     0x42dded
42dda0:	85 f6                	test   %esi,%esi
42dda2:	79 11                	jns    0x42ddb5
42dda4:	8d 45 f8             	lea    -0x8(%ebp),%eax
42dda7:	50                   	push   %eax
42dda8:	ff 73 20             	push   0x20(%ebx)
42ddab:	56                   	push   %esi
42ddac:	57                   	push   %edi
42ddad:	ff 75 08             	push   0x8(%ebp)
42ddb0:	e8 a0 fb ff ff       	call   0x42d955
42ddb5:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
42ddb9:	75 ac                	jne    0x42dd67
42ddbb:	85 f6                	test   %esi,%esi
42ddbd:	79 07                	jns    0x42ddc6
42ddbf:	68 44 0a 46 00       	push   $0x460a44
42ddc4:	eb 1f                	jmp    0x42dde5
42ddc6:	8b 07                	mov    (%edi),%eax
42ddc8:	57                   	push   %edi
42ddc9:	ff 50 24             	call   *0x24(%eax)
42ddcc:	8b f0                	mov    %eax,%esi
42ddce:	85 f6                	test   %esi,%esi
42ddd0:	79 1b                	jns    0x42dded
42ddd2:	68 64 0a 46 00       	push   $0x460a64
42ddd7:	eb 0c                	jmp    0x42dde5
42ddd9:	68 1c 0a 46 00       	push   $0x460a1c
42ddde:	eb 05                	jmp    0x42dde5
42dde0:	68 00 0a 46 00       	push   $0x460a00
42dde5:	56                   	push   %esi
42dde6:	e8 44 23 01 00       	call   0x44012f
42ddeb:	59                   	pop    %ecx
42ddec:	59                   	pop    %ecx
42dded:	85 ff                	test   %edi,%edi
42ddef:	74 12                	je     0x42de03
42ddf1:	8b 07                	mov    (%edi),%eax
42ddf3:	6a 00                	push   $0x0
42ddf5:	57                   	push   %edi
42ddf6:	ff 50 64             	call   *0x64(%eax)
42ddf9:	85 f6                	test   %esi,%esi