423d58:	eb 08                	jmp    0x423d62
423d5a:	6a 03                	push   $0x3
423d5c:	58                   	pop    %eax
423d5d:	89 45 a0             	mov    %eax,-0x60(%ebp)
423d60:	8b f0                	mov    %eax,%esi
423d62:	56                   	push   %esi
423d63:	e8 9f 03 ff ff       	call   0x414107
423d68:	50                   	push   %eax
423d69:	ff 75 80             	push   -0x80(%ebp)
423d6c:	ff 75 94             	push   -0x6c(%ebp)
423d6f:	ff 75 90             	push   -0x70(%ebp)
423d72:	e8 83 06 ff ff       	call   0x4143fa
423d77:	50                   	push   %eax
423d78:	ff b5 7c ff ff ff    	push   -0x84(%ebp)
423d7e:	e8 6c 03 ff ff       	call   0x4140ef
423d83:	50                   	push   %eax
423d84:	8d 45 ac             	lea    -0x54(%ebp),%eax
423d87:	50                   	push   %eax
423d88:	68 67 00 00 20       	push   $0x20000067
423d8d:	6a 02                	push   $0x2
423d8f:	e8 7b 17 fe ff       	call   0x40550f
423d94:	8b 45 98             	mov    -0x68(%ebp),%eax
423d97:	83 c4 1c             	add    $0x1c,%esp
423d9a:	8b 95 7c ff ff ff    	mov    -0x84(%ebp),%edx
423da0:	8b 40 10             	mov    0x10(%eax),%eax
423da3:	56                   	push   %esi
423da4:	ff 75 94             	push   -0x6c(%ebp)
423da7:	ff 75 90             	push   -0x70(%ebp)
423daa:	8b 08                	mov    (%eax),%ecx
423dac:	52                   	push   %edx
423dad:	8d 55 ac             	lea    -0x54(%ebp),%edx
423db0:	52                   	push   %edx
423db1:	ff 37                	push   (%edi)
423db3:	50                   	push   %eax
423db4:	ff 51 38             	call   *0x38(%ecx)
423db7:	50                   	push   %eax
423db8:	6a 01                	push   $0x1
423dba:	ff 75 98             	push   -0x68(%ebp)
423dbd:	e8 c9 97 fe ff       	call   0x40d58b
423dc2:	8b f0                	mov    %eax,%esi
423dc4:	85 f6                	test   %esi,%esi
423dc6:	0f 88 d5 00 00 00    	js     0x423ea1
423dcc:	8b 75 9c             	mov    -0x64(%ebp),%esi
423dcf:	8b 85 70 ff ff ff    	mov    -0x90(%ebp),%eax
423dd5:	8d 4d ac             	lea    -0x54(%ebp),%ecx
423dd8:	40                   	inc    %eax
423dd9:	51                   	push   %ecx
423dda:	50                   	push   %eax
423ddb:	ff 36                	push   (%esi)
423ddd:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
423de3:	e8 a8 e8 01 00       	call   0x442690
423de8:	8b f0                	mov    %eax,%esi
423dea:	81 fe 03 01 07 80    	cmp    $0x80070103,%esi
423df0:	0f 85 8a fd ff ff    	jne    0x423b80
423df6:	8b 45 88             	mov    -0x78(%ebp),%eax
423df9:	8b f3                	mov    %ebx,%esi
423dfb:	8b 4d 84             	mov    -0x7c(%ebp),%ecx
423dfe:	40                   	inc    %eax
423dff:	83 c1 38             	add    $0x38,%ecx
423e02:	89 45 88             	mov    %eax,-0x78(%ebp)
423e05:	89 4d 84             	mov    %ecx,-0x7c(%ebp)
423e08:	3b 87 c8 00 00 00    	cmp    0xc8(%edi),%eax
423e0e:	0f 82 4f fd ff ff    	jb     0x423b63
423e14:	8b 87 c0 00 00 00    	mov    0xc0(%edi),%eax
423e1a:	85 c0                	test   %eax,%eax
423e1c:	0f 84 49 01 00 00    	je     0x423f6b
423e22:	8b c3                	mov    %ebx,%eax
423e24:	89 5d 88             	mov    %ebx,-0x78(%ebp)
423e27:	8b 97 bc 00 00 00    	mov    0xbc(%edi),%edx
423e2d:	6a 04                	push   $0x4
423e2f:	03 d0                	add    %eax,%edx
423e31:	59                   	pop    %ecx
423e32:	89 55 84             	mov    %edx,-0x7c(%ebp)
423e35:	39 4f 40             	cmp    %ecx,0x40(%edi)
423e38:	0f 8c 8f 00 00 00    	jl     0x423ecd
423e3e:	8d 85 78 ff ff ff    	lea    -0x88(%ebp),%eax
423e44:	50                   	push   %eax
423e45:	ff 32                	push   (%edx)
423e47:	ff b7 90 00 00 00    	push   0x90(%edi)
423e4d:	e8 9c ee 01 00       	call   0x442cee
423e52:	8b f0                	mov    %eax,%esi
423e54:	85 f6                	test   %esi,%esi
423e56:	0f 88 cf 00 00 00    	js     0x423f2b
423e5c:	8b 85 78 ff ff ff    	mov    -0x88(%ebp),%eax
423e62:	8b 55 84             	mov    -0x7c(%ebp),%edx
423e65:	83 f8 ff             	cmp    $0xffffffff,%eax
423e68:	75 09                	jne    0x423e73
423e6a:	6a 02                	push   $0x2
423e6c:	58                   	pop    %eax
423e6d:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
423e73:	6a 04                	push   $0x4
423e75:	59                   	pop    %ecx
423e76:	83 e8 01             	sub    $0x1,%eax
423e79:	74 6f                	je     0x423eea
423e7b:	83 e8 01             	sub    $0x1,%eax
423e7e:	74 61                	je     0x423ee1
423e80:	83 e8 01             	sub    $0x1,%eax
423e83:	74 53                	je     0x423ed8
423e85:	83 e8 01             	sub    $0x1,%eax
423e88:	0f 85 a4 00 00 00    	jne    0x423f32
423e8e:	89 4a 1c             	mov    %ecx,0x1c(%edx)
423e91:	eb 5e                	jmp    0x423ef1
423e93:	8d 45 ac             	lea    -0x54(%ebp),%eax
423e96:	50                   	push   %eax
423e97:	68 68 bd 45 00       	push   $0x45bd68
423e9c:	e9 83 fb ff ff       	jmp    0x423a24
423ea1:	56                   	push   %esi
423ea2:	68 57 02 00 00       	push   $0x257
423ea7:	e9 49 fb ff ff       	jmp    0x4239f5
423eac:	8d 45 ac             	lea    -0x54(%ebp),%eax
423eaf:	50                   	push   %eax
423eb0:	e9 57 fa ff ff       	jmp    0x42390c
423eb5:	8d 45 ac             	lea    -0x54(%ebp),%eax
423eb8:	50                   	push   %eax
423eb9:	68 ac bd 45 00       	push   $0x45bdac
423ebe:	e9 61 fb ff ff       	jmp    0x423a24
423ec3:	68 40 bd 45 00       	push   $0x45bd40
423ec8:	e9 96 00 00 00       	jmp    0x423f63
423ecd:	6a 02                	push   $0x2
423ecf:	58                   	pop    %eax
423ed0:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
423ed6:	eb 9e                	jmp    0x423e76
423ed8:	c7 42 1c 03 00 00 00 	movl   $0x3,0x1c(%edx)
423edf:	eb 10                	jmp    0x423ef1
423ee1:	c7 42 1c 01 00 00 00 	movl   $0x1,0x1c(%edx)
423ee8:	eb 07                	jmp    0x423ef1
423eea:	c7 42 1c 02 00 00 00 	movl   $0x2,0x1c(%edx)
423ef1:	8b 75 98             	mov    -0x68(%ebp),%esi
423ef4:	ff 72 1c             	push   0x1c(%edx)
423ef7:	ff 32                	push   (%edx)
423ef9:	8b 46 10             	mov    0x10(%esi),%eax
423efc:	ff 37                	push   (%edi)
423efe:	50                   	push   %eax
423eff:	8b 08                	mov    (%eax),%ecx
423f01:	ff 51 40             	call   *0x40(%ecx)
423f04:	50                   	push   %eax
423f05:	6a 01                	push   $0x1
423f07:	56                   	push   %esi
423f08:	e8 7e 96 fe ff       	call   0x40d58b
423f0d:	8b f0                	mov    %eax,%esi
423f0f:	85 f6                	test   %esi,%esi
423f11:	78 3b                	js     0x423f4e
423f13:	8b 45 88             	mov    -0x78(%ebp),%eax
423f16:	43                   	inc    %ebx
423f17:	83 c0 28             	add    $0x28,%eax
423f1a:	89 45 88             	mov    %eax,-0x78(%ebp)
423f1d:	3b 9f c0 00 00 00    	cmp    0xc0(%edi),%ebx
423f23:	0f 82 fe fe ff ff    	jb     0x423e27
423f29:	eb 40                	jmp    0x423f6b
423f2b:	68 e8 bd 45 00       	push   $0x45bde8
423f30:	eb 31                	jmp    0x423f63
423f32:	be ff ff 00 80       	mov    $0x8000ffff,%esi
423f37:	56                   	push   %esi
423f38:	68 83 02 00 00       	push   $0x283
423f3d:	68 58 b7 45 00       	push   $0x45b758
423f42:	e8 8c f8 fd ff       	call   0x4037d3
423f47:	68 08 be 45 00       	push   $0x45be08
423f4c:	eb 15                	jmp    0x423f63
423f4e:	56                   	push   %esi
423f4f:	68 89 02 00 00       	push   $0x289
423f54:	68 58 b7 45 00       	push   $0x45b758
423f59:	e8 75 f8 fd ff       	call   0x4037d3
423f5e:	68 20 be 45 00       	push   $0x45be20
423f63:	56                   	push   %esi
423f64:	e8 c6 c1 01 00       	call   0x44012f
423f69:	59                   	pop    %ecx
423f6a:	59                   	pop    %ecx
423f6b:	83 bd 74 ff ff ff 00 	cmpl   $0x0,-0x8c(%ebp)
423f72:	74 0b                	je     0x423f7f
423f74:	ff b5 74 ff ff ff    	push   -0x8c(%ebp)
423f7a:	e8 70 15 02 00       	call   0x4454ef
423f7f:	83 7d a4 00          	cmpl   $0x0,-0x5c(%ebp)
423f83:	74 08                	je     0x423f8d
423f85:	ff 75 a4             	push   -0x5c(%ebp)
423f88:	e8 62 15 02 00       	call   0x4454ef
423f8d:	83 7d 8c 00          	cmpl   $0x0,-0x74(%ebp)
423f91:	74 08                	je     0x423f9b
423f93:	ff 75 8c             	push   -0x74(%ebp)
423f96:	e8 54 15 02 00       	call   0x4454ef
423f9b:	83 7d a8 00          	cmpl   $0x0,-0x58(%ebp)
423f9f:	74 08                	je     0x423fa9
423fa1:	ff 75 a8             	push   -0x58(%ebp)
423fa4:	e8 46 15 02 00       	call   0x4454ef
423fa9:	8b 4d fc             	mov    -0x4(%ebp),%ecx
423fac:	8b c6                	mov    %esi,%eax
423fae:	5f                   	pop    %edi
423faf:	5e                   	pop    %esi
423fb0:	33 cd                	xor    %ebp,%ecx
423fb2:	5b                   	pop    %ebx
423fb3:	e8 7e 9e 00 00       	call   0x42de36
423fb8:	8b e5                	mov    %ebp,%esp
423fba:	5d                   	pop    %ebp
423fbb:	c2 08 00             	ret    $0x8
423fbe:	55                   	push   %ebp
423fbf:	8b ec                	mov    %esp,%ebp
423fc1:	81 ec 5c 06 00 00    	sub    $0x65c,%esp
423fc7:	a1 08 a0 46 00       	mov    0x46a008,%eax
423fcc:	33 c5                	xor    %ebp,%eax
423fce:	89 45 fc             	mov    %eax,-0x4(%ebp)
423fd1:	8b 45 08             	mov    0x8(%ebp),%eax
423fd4:	89 85 a8 f9 ff ff    	mov    %eax,-0x658(%ebp)
423fda:	8b 45 10             	mov    0x10(%ebp),%eax
423fdd:	53                   	push   %ebx
423fde:	8b 5d 14             	mov    0x14(%ebp),%ebx
423fe1:	89 85 d0 f9 ff ff    	mov    %eax,-0x630(%ebp)
423fe7:	8b 45 18             	mov    0x18(%ebp),%eax
423fea:	56                   	push   %esi
423feb:	89 85 a4 f9 ff ff    	mov    %eax,-0x65c(%ebp)
423ff1:	33 f6                	xor    %esi,%esi
423ff3:	8b 45 1c             	mov    0x1c(%ebp),%eax
423ff6:	57                   	push   %edi
423ff7:	8b 7d 0c             	mov    0xc(%ebp),%edi
423ffa:	89 85 ac f9 ff ff    	mov    %eax,-0x654(%ebp)
424000:	8b 45 20             	mov    0x20(%ebp),%eax
424003:	68 28 06 00 00       	push   $0x628
424008:	89 85 b0 f9 ff ff    	mov    %eax,-0x650(%ebp)
42400e:	8d 85 d4 f9 ff ff    	lea    -0x62c(%ebp),%eax
424014:	56                   	push   %esi
424015:	50                   	push   %eax
424016:	89 9d b4 f9 ff ff    	mov    %ebx,-0x64c(%ebp)
42401c:	e8 4f b6 00 00       	call   0x42f670
424021:	83 c4 0c             	add    $0xc,%esp
424024:	89 b5 bc f9 ff ff    	mov    %esi,-0x644(%ebp)
42402a:	89 b5 b8 f9 ff ff    	mov    %esi,-0x648(%ebp)
424030:	89 b5 c0 f9 ff ff    	mov    %esi,-0x640(%ebp)
424036:	89 b5 c8 f9 ff ff    	mov    %esi,-0x638(%ebp)
42403c:	89 b5 cc f9 ff ff    	mov    %esi,-0x634(%ebp)
424042:	89 b5 c4 f9 ff ff    	mov    %esi,-0x63c(%ebp)
424048:	6a 04                	push   $0x4
42404a:	5a                   	pop    %edx
42404b:	85 db                	test   %ebx,%ebx
42404d:	0f 84 8f 00 00 00    	je     0x4240e2
424053:	83 7f 18 01          	cmpl   $0x1,0x18(%edi)
424057:	75 53                	jne    0x4240ac
424059:	8b 4f 08             	mov    0x8(%edi),%ecx
42405c:	8d 85 b8 f9 ff ff    	lea    -0x648(%ebp),%eax
424062:	50                   	push   %eax
424063:	68 a8 eb 44 00       	push   $0x44eba8
424068:	6a 02                	push   $0x2
42406a:	39 71 14             	cmp    %esi,0x14(%ecx)
42406d:	58                   	pop    %eax
42406e:	0f 45 c2             	cmovne %edx,%eax
424071:	50                   	push   %eax
424072:	56                   	push   %esi
424073:	ff b1 90 00 00 00    	push   0x90(%ecx)
424079:	e8 7a e8 01 00       	call   0x4428f8
42407e:	85 c0                	test   %eax,%eax
424080:	79 5d                	jns    0x4240df
424082:	6a 02                	push   $0x2
424084:	e8 0f 00 ff ff       	call   0x414098
424089:	50                   	push   %eax
42408a:	ff 77 18             	push   0x18(%edi)
42408d:	e8 1e fb fe ff       	call   0x413bb0
424092:	50                   	push   %eax
424093:	8b 47 08             	mov    0x8(%edi),%eax
424096:	ff 30                	push   (%eax)
424098:	68 3e 01 00 20       	push   $0x2000013e
42409d:	6a 02                	push   $0x2
42409f:	e8 6b 14 fe ff       	call   0x40550f
4240a4:	83 c4 14             	add    $0x14,%esp
4240a7:	e9 1a 05 00 00       	jmp    0x4245c6
4240ac:	83 7f 18 02          	cmpl   $0x2,0x18(%edi)
4240b0:	75 30                	jne    0x4240e2
4240b2:	8b 4f 08             	mov    0x8(%edi),%ecx
4240b5:	8d 85 b8 f9 ff ff    	lea    -0x648(%ebp),%eax
4240bb:	50                   	push   %eax
4240bc:	68 a8 eb 44 00       	push   $0x44eba8
4240c1:	6a 02                	push   $0x2
4240c3:	39 71 14             	cmp    %esi,0x14(%ecx)
4240c6:	58                   	pop    %eax
4240c7:	0f 45 c2             	cmovne %edx,%eax
4240ca:	50                   	push   %eax
4240cb:	56                   	push   %esi
4240cc:	ff b1 90 00 00 00    	push   0x90(%ecx)
4240d2:	e8 21 e8 01 00       	call   0x4428f8
4240d7:	6a 04                	push   $0x4
4240d9:	85 c0                	test   %eax,%eax
4240db:	78 04                	js     0x4240e1
4240dd:	eb a5                	jmp    0x424084
4240df:	6a 04                	push   $0x4
4240e1:	5a                   	pop    %edx
4240e2:	8b 5f 10             	mov    0x10(%edi),%ebx
4240e5:	23 da                	and    %edx,%ebx
4240e7:	c1 e3 0b             	shl    $0xb,%ebx
4240ea:	81 cb df 1f 00 00    	or     $0x1fdf,%ebx
4240f0:	83 7f 18 01          	cmpl   $0x1,0x18(%edi)
4240f4:	74 78                	je     0x42416e
4240f6:	8b 47 08             	mov    0x8(%edi),%eax
4240f9:	8d 8d c0 f9 ff ff    	lea    -0x640(%ebp),%ecx
4240ff:	51                   	push   %ecx
424100:	ff 70 24             	push   0x24(%eax)
424103:	ff 70 14             	push   0x14(%eax)
424106:	e8 7e 60 ff ff       	call   0x41a189
42410b:	8b f0                	mov    %eax,%esi
42410d:	85 f6                	test   %esi,%esi
42410f:	79 18                	jns    0x424129
424111:	8b 4f 08             	mov    0x8(%edi),%ecx
424114:	ff 31                	push   (%ecx)
424116:	68 c0 af 45 00       	push   $0x45afc0
42411b:	56                   	push   %esi
42411c:	e8 0e c0 01 00       	call   0x44012f
424121:	83 c4 0c             	add    $0xc,%esp
424124:	e9 9d 04 00 00       	jmp    0x4245c6
424129:	6a 01                	push   $0x1
42412b:	ff b5 c0 f9 ff ff    	push   -0x640(%ebp)
424131:	68 e8 c1 44 00       	push   $0x44c1e8
424136:	ff b5 d0 f9 ff ff    	push   -0x630(%ebp)
42413c:	e8 56 40 fe ff       	call   0x408197
424141:	8d 85 c8 f9 ff ff    	lea    -0x638(%ebp),%eax
424147:	50                   	push   %eax
424148:	8b 47 08             	mov    0x8(%edi),%eax
42414b:	8b 40 7c             	mov    0x7c(%eax),%eax
42414e:	8b 00                	mov    (%eax),%eax
424150:	ff 70 18             	push   0x18(%eax)
424153:	ff b5 c0 f9 ff ff    	push   -0x640(%ebp)
424159:	e8 1b ec fd ff       	call   0x402d79
42415e:	8b f0                	mov    %eax,%esi
424160:	85 f6                	test   %esi,%esi
424162:	79 0a                	jns    0x42416e
424164:	68 34 c2 45 00       	push   $0x45c234
424169:	e9 50 04 00 00       	jmp    0x4245be
42416e:	8b 47 18             	mov    0x18(%edi),%eax
424171:	6a 01                	push   $0x1
424173:	99                   	cltd
424174:	52                   	push   %edx
424175:	50                   	push   %eax
424176:	68 30 c2 44 00       	push   $0x44c230
42417b:	ff b5 d0 f9 ff ff    	push   -0x630(%ebp)
424181:	e8 cc 3f fe ff       	call   0x408152
424186:	8d 85 d4 f9 ff ff    	lea    -0x62c(%ebp),%eax
42418c:	50                   	push   %eax
42418d:	ff b5 b4 f9 ff ff    	push   -0x64c(%ebp)
424193:	ff b5 ac f9 ff ff    	push   -0x654(%ebp)
424199:	ff b5 a8 f9 ff ff    	push   -0x658(%ebp)
42419f:	ff 77 14             	push   0x14(%edi)
4241a2:	ff b5 a4 f9 ff ff    	push   -0x65c(%ebp)
4241a8:	e8 5a e9 01 00       	call   0x442b07
4241ad:	8b f0                	mov    %eax,%esi
4241af:	85 f6                	test   %esi,%esi
4241b1:	79 0a                	jns    0x4241bd
4241b3:	68 50 c2 45 00       	push   $0x45c250
4241b8:	e9 01 04 00 00       	jmp    0x4245be
4241bd:	8b 47 0c             	mov    0xc(%edi),%eax
4241c0:	33 c9                	xor    %ecx,%ecx
4241c2:	85 c0                	test   %eax,%eax
4241c4:	74 30                	je     0x4241f6
4241c6:	66 39 08             	cmp    %cx,(%eax)
4241c9:	74 2b                	je     0x4241f6
4241cb:	51                   	push   %ecx
4241cc:	50                   	push   %eax