428efb:	68 a3 01 00 00       	push   $0x1a3
428f00:	68 c8 e6 45 00       	push   $0x45e6c8
428f05:	e8 c9 a8 fd ff       	call   0x4037d3
428f0a:	68 78 e7 45 00       	push   $0x45e778
428f0f:	56                   	push   %esi
428f10:	e8 1a 72 01 00       	call   0x44012f
428f15:	59                   	pop    %ecx
428f16:	59                   	pop    %ecx
428f17:	eb 90                	jmp    0x428ea9
428f19:	33 f6                	xor    %esi,%esi
428f1b:	46                   	inc    %esi
428f1c:	eb 8b                	jmp    0x428ea9
428f1e:	8b 45 10             	mov    0x10(%ebp),%eax
428f21:	33 db                	xor    %ebx,%ebx
428f23:	8b f3                	mov    %ebx,%esi
428f25:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
428f2b:	e9 7b ff ff ff       	jmp    0x428eab
428f30:	55                   	push   %ebp
428f31:	8b ec                	mov    %esp,%ebp
428f33:	83 ec 28             	sub    $0x28,%esp
428f36:	53                   	push   %ebx
428f37:	56                   	push   %esi
428f38:	57                   	push   %edi
428f39:	33 c0                	xor    %eax,%eax
428f3b:	8d 7d e4             	lea    -0x1c(%ebp),%edi
428f3e:	ab                   	stos   %eax,%es:(%edi)
428f3f:	33 db                	xor    %ebx,%ebx
428f41:	53                   	push   %ebx
428f42:	89 5d f0             	mov    %ebx,-0x10(%ebp)
428f45:	89 5d f4             	mov    %ebx,-0xc(%ebp)
428f48:	ab                   	stos   %eax,%es:(%edi)
428f49:	89 5d f8             	mov    %ebx,-0x8(%ebp)
428f4c:	89 5d fc             	mov    %ebx,-0x4(%ebp)
428f4f:	ab                   	stos   %eax,%es:(%edi)
428f50:	33 c0                	xor    %eax,%eax
428f52:	8d 7d d8             	lea    -0x28(%ebp),%edi
428f55:	ab                   	stos   %eax,%es:(%edi)
428f56:	ab                   	stos   %eax,%es:(%edi)
428f57:	ab                   	stos   %eax,%es:(%edi)
428f58:	8b 7d 14             	mov    0x14(%ebp),%edi
428f5b:	57                   	push   %edi
428f5c:	68 e0 e7 45 00       	push   $0x45e7e0
428f61:	53                   	push   %ebx
428f62:	68 e8 e7 45 00       	push   $0x45e7e8
428f67:	53                   	push   %ebx
428f68:	e8 73 9e fd ff       	call   0x402de0
428f6d:	8b f0                	mov    %eax,%esi
428f6f:	85 f6                	test   %esi,%esi
428f71:	79 0f                	jns    0x428f82
428f73:	68 00 e8 45 00       	push   $0x45e800
428f78:	56                   	push   %esi
428f79:	e8 b1 71 01 00       	call   0x44012f
428f7e:	59                   	pop    %ecx
428f7f:	59                   	pop    %ecx
428f80:	eb 6d                	jmp    0x428fef
428f82:	8b 45 10             	mov    0x10(%ebp),%eax
428f85:	53                   	push   %ebx
428f86:	ff 70 04             	push   0x4(%eax)
428f89:	8d 45 e4             	lea    -0x1c(%ebp),%eax
428f8c:	50                   	push   %eax
428f8d:	e8 13 92 fd ff       	call   0x4021a5
428f92:	8b f0                	mov    %eax,%esi
428f94:	85 f6                	test   %esi,%esi
428f96:	79 07                	jns    0x428f9f
428f98:	68 3c e8 45 00       	push   $0x45e83c
428f9d:	eb d9                	jmp    0x428f78
428f9f:	8b 45 0c             	mov    0xc(%ebp),%eax
428fa2:	89 45 f8             	mov    %eax,-0x8(%ebp)
428fa5:	8b 45 08             	mov    0x8(%ebp),%eax
428fa8:	89 45 fc             	mov    %eax,-0x4(%ebp)
428fab:	8d 45 f8             	lea    -0x8(%ebp),%eax
428fae:	89 45 f4             	mov    %eax,-0xc(%ebp)
428fb1:	8d 45 f0             	lea    -0x10(%ebp),%eax
428fb4:	50                   	push   %eax
428fb5:	8d 45 d8             	lea    -0x28(%ebp),%eax
428fb8:	89 5d d8             	mov    %ebx,-0x28(%ebp)
428fbb:	50                   	push   %eax
428fbc:	ff 37                	push   (%edi)
428fbe:	8d 45 e4             	lea    -0x1c(%ebp),%eax
428fc1:	89 5d dc             	mov    %ebx,-0x24(%ebp)
428fc4:	53                   	push   %ebx
428fc5:	53                   	push   %ebx
428fc6:	50                   	push   %eax
428fc7:	89 5d e0             	mov    %ebx,-0x20(%ebp)
428fca:	c7 45 f0 b5 8c 42 00 	movl   $0x428cb5,-0x10(%ebp)
428fd1:	e8 84 d3 01 00       	call   0x44635a
428fd6:	8b f0                	mov    %eax,%esi
428fd8:	85 f6                	test   %esi,%esi
428fda:	79 2b                	jns    0x429007
428fdc:	ff 37                	push   (%edi)
428fde:	ff 75 e4             	push   -0x1c(%ebp)
428fe1:	68 58 e8 45 00       	push   $0x45e858
428fe6:	56                   	push   %esi
428fe7:	e8 43 71 01 00       	call   0x44012f
428fec:	83 c4 10             	add    $0x10,%esp
428fef:	39 1f                	cmp    %ebx,(%edi)
428ff1:	74 14                	je     0x429007
428ff3:	ff 37                	push   (%edi)
428ff5:	e8 3e b0 01 00       	call   0x444038
428ffa:	39 1f                	cmp    %ebx,(%edi)
428ffc:	74 09                	je     0x429007
428ffe:	ff 37                	push   (%edi)
429000:	e8 ea c4 01 00       	call   0x4454ef
429005:	89 1f                	mov    %ebx,(%edi)
429007:	39 5d e4             	cmp    %ebx,-0x1c(%ebp)
42900a:	74 08                	je     0x429014
42900c:	ff 75 e4             	push   -0x1c(%ebp)
42900f:	e8 db c4 01 00       	call   0x4454ef
429014:	39 5d e8             	cmp    %ebx,-0x18(%ebp)
429017:	74 08                	je     0x429021
429019:	ff 75 e8             	push   -0x18(%ebp)
42901c:	e8 ce c4 01 00       	call   0x4454ef
429021:	39 5d ec             	cmp    %ebx,-0x14(%ebp)
429024:	74 08                	je     0x42902e
429026:	ff 75 ec             	push   -0x14(%ebp)
429029:	e8 c1 c4 01 00       	call   0x4454ef
42902e:	5f                   	pop    %edi
42902f:	8b c6                	mov    %esi,%eax
429031:	5e                   	pop    %esi
429032:	5b                   	pop    %ebx
429033:	8b e5                	mov    %ebp,%esp
429035:	5d                   	pop    %ebp
429036:	c2 10 00             	ret    $0x10
429039:	55                   	push   %ebp
42903a:	8b ec                	mov    %esp,%ebp
42903c:	51                   	push   %ecx
42903d:	51                   	push   %ecx
42903e:	53                   	push   %ebx
42903f:	56                   	push   %esi
429040:	57                   	push   %edi
429041:	8b 7d 10             	mov    0x10(%ebp),%edi
429044:	33 c9                	xor    %ecx,%ecx
429046:	8b d9                	mov    %ecx,%ebx
429048:	8b f1                	mov    %ecx,%esi
42904a:	89 5d fc             	mov    %ebx,-0x4(%ebp)
42904d:	8b 87 bc 00 00 00    	mov    0xbc(%edi),%eax
429053:	85 c0                	test   %eax,%eax
429055:	0f 84 99 01 00 00    	je     0x4291f4
42905b:	6a ff                	push   $0xffffffff
42905d:	ff 77 10             	push   0x10(%edi)
429060:	6a ff                	push   $0xffffffff
429062:	50                   	push   %eax
429063:	33 c0                	xor    %eax,%eax
429065:	40                   	inc    %eax
429066:	50                   	push   %eax
429067:	51                   	push   %ecx
429068:	ff 15 28 b1 44 00    	call   *0x44b128
42906e:	83 f8 02             	cmp    $0x2,%eax
429071:	0f 84 7d 01 00 00    	je     0x4291f4
429077:	8b 47 40             	mov    0x40(%edi),%eax
42907a:	85 c0                	test   %eax,%eax
42907c:	74 38                	je     0x4290b6
42907e:	33 c9                	xor    %ecx,%ecx
429080:	66 39 08             	cmp    %cx,(%eax)
429083:	74 31                	je     0x4290b6
429085:	8b 4d 0c             	mov    0xc(%ebp),%ecx
429088:	83 39 05             	cmpl   $0x5,(%ecx)
42908b:	75 08                	jne    0x429095
42908d:	33 c0                	xor    %eax,%eax
42908f:	40                   	inc    %eax
429090:	89 45 fc             	mov    %eax,-0x4(%ebp)
429093:	eb 21                	jmp    0x4290b6
429095:	83 39 03             	cmpl   $0x3,(%ecx)
429098:	74 0a                	je     0x4290a4
42909a:	83 39 06             	cmpl   $0x6,(%ecx)
42909d:	74 05                	je     0x4290a4
42909f:	83 39 07             	cmpl   $0x7,(%ecx)
4290a2:	75 12                	jne    0x4290b6
4290a4:	50                   	push   %eax
4290a5:	57                   	push   %edi
4290a6:	e8 55 ea ff ff       	call   0x427b00
4290ab:	85 c0                	test   %eax,%eax
4290ad:	6a 01                	push   $0x1
4290af:	58                   	pop    %eax
4290b0:	0f 45 d8             	cmovne %eax,%ebx
4290b3:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4290b6:	33 c0                	xor    %eax,%eax
4290b8:	8b c8                	mov    %eax,%ecx
4290ba:	89 4d 10             	mov    %ecx,0x10(%ebp)
4290bd:	39 87 b8 00 00 00    	cmp    %eax,0xb8(%edi)
4290c3:	0f 86 2b 01 00 00    	jbe    0x4291f4
4290c9:	8b d0                	mov    %eax,%edx
4290cb:	89 45 f8             	mov    %eax,-0x8(%ebp)
4290ce:	8b 9f b4 00 00 00    	mov    0xb4(%edi),%ebx
4290d4:	03 da                	add    %edx,%ebx
4290d6:	83 3b 02             	cmpl   $0x2,(%ebx)
4290d9:	75 37                	jne    0x429112
4290db:	8b 47 3c             	mov    0x3c(%edi),%eax
4290de:	3b 43 0c             	cmp    0xc(%ebx),%eax
4290e1:	77 2f                	ja     0x429112
4290e3:	72 08                	jb     0x4290ed
4290e5:	8b 47 38             	mov    0x38(%edi),%eax
4290e8:	3b 43 08             	cmp    0x8(%ebx),%eax
4290eb:	77 25                	ja     0x429112
4290ed:	6a ff                	push   $0xffffffff
4290ef:	ff 73 18             	push   0x18(%ebx)
4290f2:	33 c0                	xor    %eax,%eax
4290f4:	6a ff                	push   $0xffffffff
4290f6:	ff b7 bc 00 00 00    	push   0xbc(%edi)
4290fc:	40                   	inc    %eax
4290fd:	50                   	push   %eax
4290fe:	33 c0                	xor    %eax,%eax
429100:	50                   	push   %eax
429101:	ff 15 28 b1 44 00    	call   *0x44b128
429107:	83 f8 02             	cmp    $0x2,%eax
42910a:	74 20                	je     0x42912c
42910c:	8b 4d 10             	mov    0x10(%ebp),%ecx
42910f:	8b 55 f8             	mov    -0x8(%ebp),%edx
429112:	41                   	inc    %ecx
429113:	81 c2 f8 00 00 00    	add    $0xf8,%edx
429119:	89 4d 10             	mov    %ecx,0x10(%ebp)
42911c:	89 55 f8             	mov    %edx,-0x8(%ebp)
42911f:	3b 8f b8 00 00 00    	cmp    0xb8(%edi),%ecx
429125:	72 a7                	jb     0x4290ce
429127:	e9 c8 00 00 00       	jmp    0x4291f4
42912c:	ff 75 fc             	push   -0x4(%ebp)
42912f:	8b 75 08             	mov    0x8(%ebp),%esi
429132:	ff 73 0c             	push   0xc(%ebx)
429135:	ff 73 08             	push   0x8(%ebx)
429138:	8b 4e 10             	mov    0x10(%esi),%ecx
42913b:	ff 73 2c             	push   0x2c(%ebx)
42913e:	ff 73 10             	push   0x10(%ebx)
429141:	8b 01                	mov    (%ecx),%eax
429143:	ff 33                	push   (%ebx)
429145:	ff 73 18             	push   0x18(%ebx)
429148:	51                   	push   %ecx
429149:	ff 50 1c             	call   *0x1c(%eax)
42914c:	50                   	push   %eax
42914d:	89 45 10             	mov    %eax,0x10(%ebp)
429150:	33 c0                	xor    %eax,%eax
429152:	40                   	inc    %eax
429153:	50                   	push   %eax
429154:	56                   	push   %esi
429155:	e8 31 44 fe ff       	call   0x40d58b
42915a:	8b f0                	mov    %eax,%esi
42915c:	85 f6                	test   %esi,%esi
42915e:	79 1c                	jns    0x42917c
429160:	56                   	push   %esi
429161:	6a 7e                	push   $0x7e
429163:	68 c8 e6 45 00       	push   $0x45e6c8
429168:	e8 66 a6 fd ff       	call   0x4037d3
42916d:	68 d4 e6 45 00       	push   $0x45e6d4
429172:	56                   	push   %esi
429173:	e8 b7 6f 01 00       	call   0x44012f
429178:	59                   	pop    %ecx
429179:	59                   	pop    %ecx
42917a:	eb 78                	jmp    0x4291f4
42917c:	33 c0                	xor    %eax,%eax
42917e:	40                   	inc    %eax
42917f:	39 45 10             	cmp    %eax,0x10(%ebp)
429182:	75 35                	jne    0x4291b9
429184:	8d 43 18             	lea    0x18(%ebx),%eax
429187:	50                   	push   %eax
429188:	ff b7 c0 00 00 00    	push   0xc0(%edi)
42918e:	33 c0                	xor    %eax,%eax
429190:	ff 77 40             	push   0x40(%edi)
429193:	50                   	push   %eax
429194:	ff 75 0c             	push   0xc(%ebp)
429197:	8d 87 c8 00 00 00    	lea    0xc8(%edi),%eax
42919d:	50                   	push   %eax
42919e:	e8 74 33 00 00       	call   0x42c517
4291a3:	8b f0                	mov    %eax,%esi
4291a5:	85 f6                	test   %esi,%esi
4291a7:	79 07                	jns    0x4291b0
4291a9:	68 04 e7 45 00       	push   $0x45e704
4291ae:	eb c2                	jmp    0x429172
4291b0:	33 c0                	xor    %eax,%eax
4291b2:	40                   	inc    %eax
4291b3:	89 87 c4 00 00 00    	mov    %eax,0xc4(%edi)
4291b9:	ff b7 c4 00 00 00    	push   0xc4(%edi)
4291bf:	e8 6c aa fe ff       	call   0x413c30
4291c4:	50                   	push   %eax
4291c5:	ff 73 0c             	push   0xc(%ebx)
4291c8:	ff 73 08             	push   0x8(%ebx)
4291cb:	e8 2a b2 fe ff       	call   0x4143fa
4291d0:	50                   	push   %eax
4291d1:	ff 73 2c             	push   0x2c(%ebx)
4291d4:	e8 16 af fe ff       	call   0x4140ef
4291d9:	50                   	push   %eax
4291da:	ff 33                	push   (%ebx)
4291dc:	e8 89 af fe ff       	call   0x41416a
4291e1:	50                   	push   %eax
4291e2:	ff 73 18             	push   0x18(%ebx)
4291e5:	68 6b 00 00 20       	push   $0x2000006b
4291ea:	6a 02                	push   $0x2
4291ec:	e8 1e c3 fd ff       	call   0x40550f
4291f1:	83 c4 1c             	add    $0x1c,%esp
4291f4:	5f                   	pop    %edi
4291f5:	8b c6                	mov    %esi,%eax
4291f7:	5e                   	pop    %esi
4291f8:	5b                   	pop    %ebx
4291f9:	8b e5                	mov    %ebp,%esp
4291fb:	5d                   	pop    %ebp
4291fc:	c2 0c 00             	ret    $0xc
4291ff:	55                   	push   %ebp
429200:	8b ec                	mov    %esp,%ebp
429202:	51                   	push   %ecx
429203:	51                   	push   %ecx
429204:	8b 4d 0c             	mov    0xc(%ebp),%ecx
429207:	56                   	push   %esi
429208:	33 f6                	xor    %esi,%esi
42920a:	21 75 fc             	and    %esi,-0x4(%ebp)
42920d:	39 b1 b8 00 00 00    	cmp    %esi,0xb8(%ecx)
429213:	0f 86 55 01 00 00    	jbe    0x42936e
429219:	53                   	push   %ebx
42921a:	8b 5d 14             	mov    0x14(%ebp),%ebx
42921d:	33 c0                	xor    %eax,%eax
42921f:	89 45 f8             	mov    %eax,-0x8(%ebp)
429222:	57                   	push   %edi
429223:	8b b9 b4 00 00 00    	mov    0xb4(%ecx),%edi
429229:	33 f6                	xor    %esi,%esi
42922b:	03 f8                	add    %eax,%edi
42922d:	8b 07                	mov    (%edi),%eax
42922f:	83 e8 01             	sub    $0x1,%eax
429232:	0f 84 8f 00 00 00    	je     0x4292c7
429238:	83 e8 01             	sub    $0x1,%eax
42923b:	74 5a                	je     0x429297
42923d:	83 e8 01             	sub    $0x1,%eax
429240:	74 34                	je     0x429276
429242:	83 e8 01             	sub    $0x1,%eax
429245:	74 2f                	je     0x429276
429247:	83 e8 01             	sub    $0x1,%eax
42924a:	74 7b                	je     0x4292c7
42924c:	be 05 40 00 80       	mov    $0x80004005,%esi
429251:	56                   	push   %esi
429252:	68 c6 00 00 00       	push   $0xc6
429257:	68 c8 e6 45 00       	push   $0x45e6c8
42925c:	e8 72 a5 fd ff       	call   0x4037d3
429261:	ff 37                	push   (%edi)
429263:	68 28 e7 45 00       	push   $0x45e728
429268:	56                   	push   %esi
429269:	e8 c1 6e 01 00       	call   0x44012f
42926e:	83 c4 0c             	add    $0xc,%esp
429271:	e9 f6 00 00 00       	jmp    0x42936c
429276:	83 fb 03             	cmp    $0x3,%ebx
429279:	75 04                	jne    0x42927f
42927b:	6a 04                	push   $0x4
42927d:	eb 15                	jmp    0x429294
42927f:	83 fb 05             	cmp    $0x5,%ebx
429282:	74 0e                	je     0x429292
429284:	83 fb 06             	cmp    $0x6,%ebx
429287:	74 09                	je     0x429292
429289:	83 fb 07             	cmp    $0x7,%ebx
42928c:	75 39                	jne    0x4292c7
42928e:	6a 06                	push   $0x6
429290:	eb 02                	jmp    0x429294
429292:	6a 05                	push   $0x5
429294:	5e                   	pop    %esi
429295:	eb 30                	jmp    0x4292c7
429297:	83 7d 10 02          	cmpl   $0x2,0x10(%ebp)