4e5017:	cc                   	int3
4e5018:	cc                   	int3
4e5019:	cc                   	int3
4e501a:	cc                   	int3
4e501b:	cc                   	int3
4e501c:	cc                   	int3
4e501d:	cc                   	int3
4e501e:	cc                   	int3
4e501f:	cc                   	int3
4e5020:	68 d1 00 00 00       	push   $0xd1
4e5025:	68 d8 3f 61 00       	push   $0x613fd8
4e502a:	6a 14                	push   $0x14
4e502c:	e8 0f ba ff ff       	call   0x4e0a40
4e5031:	83 c4 0c             	add    $0xc,%esp
4e5034:	85 c0                	test   %eax,%eax
4e5036:	75 01                	jne    0x4e5039
4e5038:	c3                   	ret
4e5039:	c7 40 10 00 00 00 00 	movl   $0x0,0x10(%eax)
4e5040:	c3                   	ret
4e5041:	cc                   	int3
4e5042:	cc                   	int3
4e5043:	cc                   	int3
4e5044:	cc                   	int3
4e5045:	cc                   	int3
4e5046:	cc                   	int3
4e5047:	cc                   	int3
4e5048:	cc                   	int3
4e5049:	cc                   	int3
4e504a:	cc                   	int3
4e504b:	cc                   	int3
4e504c:	cc                   	int3
4e504d:	cc                   	int3
4e504e:	cc                   	int3
4e504f:	cc                   	int3
4e5050:	56                   	push   %esi
4e5051:	68 d1 00 00 00       	push   $0xd1
4e5056:	68 d8 3f 61 00       	push   $0x613fd8
4e505b:	6a 14                	push   $0x14
4e505d:	e8 de b9 ff ff       	call   0x4e0a40
4e5062:	8b f0                	mov    %eax,%esi
4e5064:	83 c4 0c             	add    $0xc,%esp
4e5067:	85 f6                	test   %esi,%esi
4e5069:	74 44                	je     0x4e50af
4e506b:	8b 44 24 08          	mov    0x8(%esp),%eax
4e506f:	89 46 10             	mov    %eax,0x10(%esi)
4e5072:	8b 44 24 0c          	mov    0xc(%esp),%eax
4e5076:	85 c0                	test   %eax,%eax
4e5078:	7e 39                	jle    0x4e50b3
4e507a:	6a 01                	push   $0x1
4e507c:	50                   	push   %eax
4e507d:	56                   	push   %esi
4e507e:	e8 5d 02 00 00       	call   0x4e52e0
4e5083:	83 c4 0c             	add    $0xc,%esp
4e5086:	85 c0                	test   %eax,%eax
4e5088:	75 29                	jne    0x4e50b3
4e508a:	68 78 01 00 00       	push   $0x178
4e508f:	68 d8 3f 61 00       	push   $0x613fd8
4e5094:	ff 76 04             	push   0x4(%esi)
4e5097:	e8 e4 b6 ff ff       	call   0x4e0780
4e509c:	68 79 01 00 00       	push   $0x179
4e50a1:	68 d8 3f 61 00       	push   $0x613fd8
4e50a6:	56                   	push   %esi
4e50a7:	e8 d4 b6 ff ff       	call   0x4e0780
4e50ac:	83 c4 18             	add    $0x18,%esp
4e50af:	33 c0                	xor    %eax,%eax
4e50b1:	5e                   	pop    %esi
4e50b2:	c3                   	ret
4e50b3:	8b c6                	mov    %esi,%eax
4e50b5:	5e                   	pop    %esi
4e50b6:	c3                   	ret
4e50b7:	cc                   	int3
4e50b8:	cc                   	int3
4e50b9:	cc                   	int3
4e50ba:	cc                   	int3
4e50bb:	cc                   	int3
4e50bc:	cc                   	int3
4e50bd:	cc                   	int3
4e50be:	cc                   	int3
4e50bf:	cc                   	int3
4e50c0:	8b 44 24 04          	mov    0x4(%esp),%eax
4e50c4:	85 c0                	test   %eax,%eax
4e50c6:	75 04                	jne    0x4e50cc
4e50c8:	83 c8 ff             	or     $0xffffffff,%eax
4e50cb:	c3                   	ret
4e50cc:	8b 00                	mov    (%eax),%eax
4e50ce:	c3                   	ret
4e50cf:	cc                   	int3
4e50d0:	8b 54 24 04          	mov    0x4(%esp),%edx
4e50d4:	85 d2                	test   %edx,%edx
4e50d6:	74 11                	je     0x4e50e9
4e50d8:	8b 0a                	mov    (%edx),%ecx
4e50da:	85 c9                	test   %ecx,%ecx
4e50dc:	74 0b                	je     0x4e50e9
4e50de:	8b 42 04             	mov    0x4(%edx),%eax
4e50e1:	8b 44 88 fc          	mov    -0x4(%eax,%ecx,4),%eax
4e50e5:	49                   	dec    %ecx
4e50e6:	89 0a                	mov    %ecx,(%edx)
4e50e8:	c3                   	ret
4e50e9:	33 c0                	xor    %eax,%eax
4e50eb:	c3                   	ret
4e50ec:	cc                   	int3
4e50ed:	cc                   	int3
4e50ee:	cc                   	int3
4e50ef:	cc                   	int3
4e50f0:	57                   	push   %edi
4e50f1:	8b 7c 24 08          	mov    0x8(%esp),%edi
4e50f5:	85 ff                	test   %edi,%edi
4e50f7:	74 48                	je     0x4e5141
4e50f9:	56                   	push   %esi
4e50fa:	33 f6                	xor    %esi,%esi
4e50fc:	39 37                	cmp    %esi,(%edi)
4e50fe:	7e 1b                	jle    0x4e511b
4e5100:	53                   	push   %ebx
4e5101:	8b 5c 24 14          	mov    0x14(%esp),%ebx
4e5105:	8b 47 04             	mov    0x4(%edi),%eax
4e5108:	8b 04 b0             	mov    (%eax,%esi,4),%eax
4e510b:	85 c0                	test   %eax,%eax
4e510d:	74 06                	je     0x4e5115
4e510f:	50                   	push   %eax
4e5110:	ff d3                	call   *%ebx
4e5112:	83 c4 04             	add    $0x4,%esp
4e5115:	46                   	inc    %esi
4e5116:	3b 37                	cmp    (%edi),%esi
4e5118:	7c eb                	jl     0x4e5105
4e511a:	5b                   	pop    %ebx
4e511b:	68 78 01 00 00       	push   $0x178
4e5120:	68 d8 3f 61 00       	push   $0x613fd8
4e5125:	ff 77 04             	push   0x4(%edi)
4e5128:	e8 53 b6 ff ff       	call   0x4e0780
4e512d:	68 79 01 00 00       	push   $0x179
4e5132:	68 d8 3f 61 00       	push   $0x613fd8
4e5137:	57                   	push   %edi
4e5138:	e8 43 b6 ff ff       	call   0x4e0780
4e513d:	83 c4 18             	add    $0x18,%esp
4e5140:	5e                   	pop    %esi
4e5141:	5f                   	pop    %edi
4e5142:	c3                   	ret
4e5143:	cc                   	int3
4e5144:	cc                   	int3
4e5145:	cc                   	int3
4e5146:	cc                   	int3
4e5147:	cc                   	int3
4e5148:	cc                   	int3
4e5149:	cc                   	int3
4e514a:	cc                   	int3
4e514b:	cc                   	int3
4e514c:	cc                   	int3
4e514d:	cc                   	int3
4e514e:	cc                   	int3
4e514f:	cc                   	int3
4e5150:	8b 44 24 04          	mov    0x4(%esp),%eax
4e5154:	85 c0                	test   %eax,%eax
4e5156:	75 04                	jne    0x4e515c
4e5158:	83 c8 ff             	or     $0xffffffff,%eax
4e515b:	c3                   	ret
4e515c:	ff 30                	push   (%eax)
4e515e:	ff 74 24 0c          	push   0xc(%esp)
4e5162:	50                   	push   %eax
4e5163:	e8 e8 fd ff ff       	call   0x4e4f50
4e5168:	83 c4 0c             	add    $0xc,%esp
4e516b:	c3                   	ret
4e516c:	cc                   	int3
4e516d:	cc                   	int3
4e516e:	cc                   	int3
4e516f:	cc                   	int3
4e5170:	8b 44 24 04          	mov    0x4(%esp),%eax
4e5174:	85 c0                	test   %eax,%eax
4e5176:	75 01                	jne    0x4e5179
4e5178:	c3                   	ret
4e5179:	8b 4c 24 08          	mov    0x8(%esp),%ecx
4e517d:	85 c9                	test   %ecx,%ecx
4e517f:	79 06                	jns    0x4e5187
4e5181:	b8 01 00 00 00       	mov    $0x1,%eax
4e5186:	c3                   	ret
4e5187:	6a 01                	push   $0x1
4e5189:	51                   	push   %ecx
4e518a:	50                   	push   %eax
4e518b:	e8 50 01 00 00       	call   0x4e52e0
4e5190:	83 c4 0c             	add    $0xc,%esp
4e5193:	c3                   	ret
4e5194:	cc                   	int3
4e5195:	cc                   	int3
4e5196:	cc                   	int3
4e5197:	cc                   	int3
4e5198:	cc                   	int3
4e5199:	cc                   	int3
4e519a:	cc                   	int3
4e519b:	cc                   	int3
4e519c:	cc                   	int3
4e519d:	cc                   	int3
4e519e:	cc                   	int3
4e519f:	cc                   	int3
4e51a0:	8b 44 24 04          	mov    0x4(%esp),%eax
4e51a4:	56                   	push   %esi
4e51a5:	85 c0                	test   %eax,%eax
4e51a7:	74 25                	je     0x4e51ce
4e51a9:	8b 74 24 0c          	mov    0xc(%esp),%esi
4e51ad:	85 f6                	test   %esi,%esi
4e51af:	78 1d                	js     0x4e51ce
4e51b1:	3b 30                	cmp    (%eax),%esi
4e51b3:	7d 19                	jge    0x4e51ce
4e51b5:	8b 50 04             	mov    0x4(%eax),%edx
4e51b8:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4e51bc:	89 0c b2             	mov    %ecx,(%edx,%esi,4)
4e51bf:	c7 40 08 00 00 00 00 	movl   $0x0,0x8(%eax)
4e51c6:	8b 40 04             	mov    0x4(%eax),%eax
4e51c9:	8b 04 b0             	mov    (%eax,%esi,4),%eax
4e51cc:	5e                   	pop    %esi
4e51cd:	c3                   	ret
4e51ce:	33 c0                	xor    %eax,%eax
4e51d0:	5e                   	pop    %esi
4e51d1:	c3                   	ret
4e51d2:	cc                   	int3
4e51d3:	cc                   	int3
4e51d4:	cc                   	int3
4e51d5:	cc                   	int3
4e51d6:	cc                   	int3
4e51d7:	cc                   	int3
4e51d8:	cc                   	int3
4e51d9:	cc                   	int3
4e51da:	cc                   	int3
4e51db:	cc                   	int3
4e51dc:	cc                   	int3
4e51dd:	cc                   	int3
4e51de:	cc                   	int3
4e51df:	cc                   	int3
4e51e0:	8b 4c 24 04          	mov    0x4(%esp),%ecx
4e51e4:	8b 54 24 08          	mov    0x8(%esp),%edx
4e51e8:	8b 41 10             	mov    0x10(%ecx),%eax
4e51eb:	89 51 10             	mov    %edx,0x10(%ecx)
4e51ee:	3b c2                	cmp    %edx,%eax
4e51f0:	74 07                	je     0x4e51f9
4e51f2:	c7 41 08 00 00 00 00 	movl   $0x0,0x8(%ecx)
4e51f9:	c3                   	ret
4e51fa:	cc                   	int3
4e51fb:	cc                   	int3
4e51fc:	cc                   	int3
4e51fd:	cc                   	int3
4e51fe:	cc                   	int3
4e51ff:	cc                   	int3
4e5200:	56                   	push   %esi
4e5201:	8b 74 24 08          	mov    0x8(%esp),%esi
4e5205:	85 f6                	test   %esi,%esi
4e5207:	74 32                	je     0x4e523b
4e5209:	8b 0e                	mov    (%esi),%ecx
4e520b:	85 c9                	test   %ecx,%ecx
4e520d:	74 2c                	je     0x4e523b
4e520f:	8b 56 04             	mov    0x4(%esi),%edx
4e5212:	8d 41 ff             	lea    -0x1(%ecx),%eax
4e5215:	57                   	push   %edi
4e5216:	8b 3a                	mov    (%edx),%edi
4e5218:	85 c0                	test   %eax,%eax
4e521a:	74 17                	je     0x4e5233
4e521c:	8d 04 8d fc ff ff ff 	lea    -0x4(,%ecx,4),%eax
4e5223:	50                   	push   %eax
4e5224:	8d 4a 04             	lea    0x4(%edx),%ecx
4e5227:	51                   	push   %ecx
4e5228:	52                   	push   %edx
4e5229:	e8 a2 db 0e 00       	call   0x5d2dd0
4e522e:	8b 0e                	mov    (%esi),%ecx
4e5230:	83 c4 0c             	add    $0xc,%esp
4e5233:	49                   	dec    %ecx
4e5234:	8b c7                	mov    %edi,%eax
4e5236:	5f                   	pop    %edi
4e5237:	89 0e                	mov    %ecx,(%esi)
4e5239:	5e                   	pop    %esi
4e523a:	c3                   	ret
4e523b:	33 c0                	xor    %eax,%eax
4e523d:	5e                   	pop    %esi
4e523e:	c3                   	ret
4e523f:	cc                   	int3
4e5240:	56                   	push   %esi
4e5241:	8b 74 24 08          	mov    0x8(%esp),%esi
4e5245:	85 f6                	test   %esi,%esi
4e5247:	74 2a                	je     0x4e5273
4e5249:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
4e524d:	75 24                	jne    0x4e5273
4e524f:	8b 46 10             	mov    0x10(%esi),%eax
4e5252:	85 c0                	test   %eax,%eax
4e5254:	74 1d                	je     0x4e5273
4e5256:	8b 0e                	mov    (%esi),%ecx
4e5258:	83 f9 01             	cmp    $0x1,%ecx
4e525b:	7e 0f                	jle    0x4e526c
4e525d:	50                   	push   %eax
4e525e:	6a 04                	push   $0x4
4e5260:	51                   	push   %ecx
4e5261:	ff 76 04             	push   0x4(%esi)
4e5264:	e8 37 f7 0f 00       	call   0x5e49a0
4e5269:	83 c4 10             	add    $0x10,%esp
4e526c:	c7 46 08 01 00 00 00 	movl   $0x1,0x8(%esi)
4e5273:	5e                   	pop    %esi
4e5274:	c3                   	ret
4e5275:	cc                   	int3
4e5276:	cc                   	int3
4e5277:	cc                   	int3
4e5278:	cc                   	int3
4e5279:	cc                   	int3
4e527a:	cc                   	int3
4e527b:	cc                   	int3
4e527c:	cc                   	int3
4e527d:	cc                   	int3
4e527e:	cc                   	int3
4e527f:	cc                   	int3
4e5280:	8b 44 24 04          	mov    0x4(%esp),%eax
4e5284:	85 c0                	test   %eax,%eax
4e5286:	74 13                	je     0x4e529b
4e5288:	8b 4c 24 08          	mov    0x8(%esp),%ecx
4e528c:	85 c9                	test   %ecx,%ecx
4e528e:	78 0b                	js     0x4e529b
4e5290:	3b 08                	cmp    (%eax),%ecx
4e5292:	7d 07                	jge    0x4e529b
4e5294:	8b 40 04             	mov    0x4(%eax),%eax
4e5297:	8b 04 88             	mov    (%eax,%ecx,4),%eax
4e529a:	c3                   	ret
4e529b:	33 c0                	xor    %eax,%eax
4e529d:	c3                   	ret
4e529e:	cc                   	int3
4e529f:	cc                   	int3
4e52a0:	8b 54 24 08          	mov    0x8(%esp),%edx
4e52a4:	53                   	push   %ebx
4e52a5:	56                   	push   %esi
4e52a6:	8b 74 24 0c          	mov    0xc(%esp),%esi
4e52aa:	57                   	push   %edi
4e52ab:	8b 46 04             	mov    0x4(%esi),%eax
4e52ae:	8b 0e                	mov    (%esi),%ecx
4e52b0:	8d 3c 90             	lea    (%eax,%edx,4),%edi
4e52b3:	8b 1f                	mov    (%edi),%ebx
4e52b5:	8d 41 ff             	lea    -0x1(%ecx),%eax
4e52b8:	3b d0                	cmp    %eax,%edx
4e52ba:	74 19                	je     0x4e52d5
4e52bc:	2b ca                	sub    %edx,%ecx
4e52be:	8d 04 8d fc ff ff ff 	lea    -0x4(,%ecx,4),%eax
4e52c5:	50                   	push   %eax
4e52c6:	8d 4f 04             	lea    0x4(%edi),%ecx
4e52c9:	51                   	push   %ecx
4e52ca:	57                   	push   %edi
4e52cb:	e8 00 db 0e 00       	call   0x5d2dd0
4e52d0:	8b 0e                	mov    (%esi),%ecx
4e52d2:	83 c4 0c             	add    $0xc,%esp
4e52d5:	49                   	dec    %ecx
4e52d6:	8b c3                	mov    %ebx,%eax
4e52d8:	5f                   	pop    %edi
4e52d9:	89 0e                	mov    %ecx,(%esi)
4e52db:	5e                   	pop    %esi
4e52dc:	5b                   	pop    %ebx
4e52dd:	c3                   	ret
4e52de:	cc                   	int3
4e52df:	cc                   	int3
4e52e0:	8b 54 24 08          	mov    0x8(%esp),%edx
4e52e4:	b8 ff ff ff 3f       	mov    $0x3fffffff,%eax