a650fe:	8b 7d 08             	mov    0x8(%ebp),%edi
a65101:	8b f1                	mov    %ecx,%esi
a65103:	8b 4d 0c             	mov    0xc(%ebp),%ecx
a65106:	8b 47 10             	mov    0x10(%edi),%eax
a65109:	3b c1                	cmp    %ecx,%eax
a6510b:	72 7a                	jb     0xa65187
a6510d:	8b 5d 10             	mov    0x10(%ebp),%ebx
a65110:	2b c1                	sub    %ecx,%eax
a65112:	3b d8                	cmp    %eax,%ebx
a65114:	76 02                	jbe    0xa65118
a65116:	8b d8                	mov    %eax,%ebx
a65118:	3b f7                	cmp    %edi,%esi
a6511a:	75 1a                	jne    0xa65136
a6511c:	8d 04 19             	lea    (%ecx,%ebx,1),%eax
a6511f:	8b ce                	mov    %esi,%ecx
a65121:	50                   	push   %eax
a65122:	e8 17 66 9b ff       	call   0x41b73e
a65127:	8b 45 0c             	mov    0xc(%ebp),%eax
a6512a:	8b ce                	mov    %esi,%ecx
a6512c:	50                   	push   %eax
a6512d:	6a 00                	push   $0x0
a6512f:	e8 d8 11 9a ff       	call   0x40630c
a65134:	eb 48                	jmp    0xa6517e
a65136:	6a 00                	push   $0x0
a65138:	53                   	push   %ebx
a65139:	8b ce                	mov    %esi,%ecx
a6513b:	e8 ca 7b 9b ff       	call   0x41cd0a
a65140:	84 c0                	test   %al,%al
a65142:	74 3a                	je     0xa6517e
a65144:	83 7f 14 08          	cmpl   $0x8,0x14(%edi)
a65148:	72 02                	jb     0xa6514c
a6514a:	8b 3f                	mov    (%edi),%edi
a6514c:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
a65150:	72 04                	jb     0xa65156
a65152:	8b 0e                	mov    (%esi),%ecx
a65154:	eb 02                	jmp    0xa65158
a65156:	8b ce                	mov    %esi,%ecx
a65158:	8b 45 0c             	mov    0xc(%ebp),%eax
a6515b:	53                   	push   %ebx
a6515c:	8d 04 47             	lea    (%edi,%eax,2),%eax
a6515f:	50                   	push   %eax
a65160:	51                   	push   %ecx
a65161:	e8 60 11 9a ff       	call   0x4062c6
a65166:	83 c4 0c             	add    $0xc,%esp
a65169:	89 5e 10             	mov    %ebx,0x10(%esi)
a6516c:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
a65170:	72 04                	jb     0xa65176
a65172:	8b 06                	mov    (%esi),%eax
a65174:	eb 02                	jmp    0xa65178
a65176:	8b c6                	mov    %esi,%eax
a65178:	33 c9                	xor    %ecx,%ecx
a6517a:	66 89 0c 58          	mov    %cx,(%eax,%ebx,2)
a6517e:	5f                   	pop    %edi
a6517f:	8b c6                	mov    %esi,%eax
a65181:	5e                   	pop    %esi
a65182:	5b                   	pop    %ebx
a65183:	5d                   	pop    %ebp
a65184:	c2 0c 00             	ret    $0xc
a65187:	8b cf                	mov    %edi,%ecx
a65189:	e8 db 54 9a ff       	call   0x40a669
a6518e:	cc                   	int3
a6518f:	cc                   	int3
a65190:	cc                   	int3
a65191:	cc                   	int3
a65192:	cc                   	int3
a65193:	cc                   	int3
a65194:	cc                   	int3
a65195:	cc                   	int3
a65196:	cc                   	int3
a65197:	cc                   	int3
a65198:	cc                   	int3
a65199:	cc                   	int3
a6519a:	cc                   	int3
a6519b:	cc                   	int3
a6519c:	cc                   	int3
a6519d:	cc                   	int3
a6519e:	cc                   	int3
a6519f:	cc                   	int3
a651a0:	cc                   	int3
a651a1:	cc                   	int3
a651a2:	cc                   	int3
a651a3:	cc                   	int3
a651a4:	cc                   	int3
a651a5:	cc                   	int3
a651a6:	cc                   	int3
a651a7:	cc                   	int3
a651a8:	cc                   	int3
a651a9:	cc                   	int3
a651aa:	cc                   	int3
a651ab:	cc                   	int3
a651ac:	cc                   	int3
a651ad:	cc                   	int3
a651ae:	cc                   	int3
a651af:	cc                   	int3
a651b0:	cc                   	int3
a651b1:	cc                   	int3
a651b2:	cc                   	int3
a651b3:	cc                   	int3
a651b4:	55                   	push   %ebp
a651b5:	8b ec                	mov    %esp,%ebp
a651b7:	56                   	push   %esi
a651b8:	57                   	push   %edi
a651b9:	8b 7d 08             	mov    0x8(%ebp),%edi
a651bc:	8b f1                	mov    %ecx,%esi
a651be:	83 ff ff             	cmp    $0xffffffff,%edi
a651c1:	74 36                	je     0xa651f9
a651c3:	6a 00                	push   $0x0
a651c5:	57                   	push   %edi
a651c6:	e8 3f 7b 9b ff       	call   0x41cd0a
a651cb:	84 c0                	test   %al,%al
a651cd:	74 22                	je     0xa651f1
a651cf:	ff 75 0c             	push   0xc(%ebp)
a651d2:	8b ce                	mov    %esi,%ecx
a651d4:	57                   	push   %edi
a651d5:	6a 00                	push   $0x0
a651d7:	e8 d4 f3 9a ff       	call   0x4145b0
a651dc:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
a651e0:	89 7e 10             	mov    %edi,0x10(%esi)
a651e3:	72 04                	jb     0xa651e9
a651e5:	8b 06                	mov    (%esi),%eax
a651e7:	eb 02                	jmp    0xa651eb
a651e9:	8b c6                	mov    %esi,%eax
a651eb:	33 c9                	xor    %ecx,%ecx
a651ed:	66 89 0c 78          	mov    %cx,(%eax,%edi,2)
a651f1:	5f                   	pop    %edi
a651f2:	8b c6                	mov    %esi,%eax
a651f4:	5e                   	pop    %esi
a651f5:	5d                   	pop    %ebp
a651f6:	c2 08 00             	ret    $0x8
a651f9:	e8 1a 11 9d ff       	call   0x436318
a651fe:	cc                   	int3
a651ff:	cc                   	int3
a65200:	cc                   	int3
a65201:	cc                   	int3
a65202:	cc                   	int3
a65203:	cc                   	int3
a65204:	cc                   	int3
a65205:	cc                   	int3
a65206:	cc                   	int3
a65207:	cc                   	int3
a65208:	cc                   	int3
a65209:	cc                   	int3
a6520a:	cc                   	int3
a6520b:	cc                   	int3
a6520c:	cc                   	int3
a6520d:	cc                   	int3
a6520e:	cc                   	int3
a6520f:	cc                   	int3
a65210:	cc                   	int3
a65211:	55                   	push   %ebp
a65212:	8b ec                	mov    %esp,%ebp
a65214:	56                   	push   %esi
a65215:	ff 75 08             	push   0x8(%ebp)
a65218:	8b f1                	mov    %ecx,%esi
a6521a:	e8 4f f7 9c ff       	call   0x43496e
a6521f:	59                   	pop    %ecx
a65220:	50                   	push   %eax
a65221:	ff 75 08             	push   0x8(%ebp)
a65224:	8b ce                	mov    %esi,%ecx
a65226:	e8 2e 0a 9a ff       	call   0x405c59
a6522b:	5e                   	pop    %esi
a6522c:	5d                   	pop    %ebp
a6522d:	c2 04 00             	ret    $0x4
a65230:	cc                   	int3
a65231:	cc                   	int3
a65232:	cc                   	int3
a65233:	cc                   	int3
a65234:	cc                   	int3
a65235:	cc                   	int3
a65236:	cc                   	int3
a65237:	55                   	push   %ebp
a65238:	8b ec                	mov    %esp,%ebp
a6523a:	56                   	push   %esi
a6523b:	57                   	push   %edi
a6523c:	8b 7d 08             	mov    0x8(%ebp),%edi
a6523f:	8b f1                	mov    %ecx,%esi
a65241:	57                   	push   %edi
a65242:	e8 28 1f 9c ff       	call   0x42716f
a65247:	84 c0                	test   %al,%al
a65249:	74 1e                	je     0xa65269
a6524b:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
a6524f:	72 04                	jb     0xa65255
a65251:	8b 06                	mov    (%esi),%eax
a65253:	eb 02                	jmp    0xa65257
a65255:	8b c6                	mov    %esi,%eax
a65257:	ff 75 0c             	push   0xc(%ebp)
a6525a:	2b f8                	sub    %eax,%edi
a6525c:	8b ce                	mov    %esi,%ecx
a6525e:	d1 ff                	sar    $1,%edi
a65260:	57                   	push   %edi
a65261:	56                   	push   %esi
a65262:	e8 78 91 9b ff       	call   0x41e3df
a65267:	eb 41                	jmp    0xa652aa
a65269:	53                   	push   %ebx
a6526a:	8b 5d 0c             	mov    0xc(%ebp),%ebx
a6526d:	8b ce                	mov    %esi,%ecx
a6526f:	6a 00                	push   $0x0
a65271:	53                   	push   %ebx
a65272:	e8 93 7a 9b ff       	call   0x41cd0a
a65277:	84 c0                	test   %al,%al
a65279:	74 2c                	je     0xa652a7
a6527b:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
a6527f:	72 04                	jb     0xa65285
a65281:	8b 06                	mov    (%esi),%eax
a65283:	eb 02                	jmp    0xa65287
a65285:	8b c6                	mov    %esi,%eax
a65287:	53                   	push   %ebx
a65288:	57                   	push   %edi
a65289:	50                   	push   %eax
a6528a:	e8 37 10 9a ff       	call   0x4062c6
a6528f:	83 c4 0c             	add    $0xc,%esp
a65292:	89 5e 10             	mov    %ebx,0x10(%esi)
a65295:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
a65299:	72 04                	jb     0xa6529f
a6529b:	8b 06                	mov    (%esi),%eax
a6529d:	eb 02                	jmp    0xa652a1
a6529f:	8b c6                	mov    %esi,%eax
a652a1:	33 c9                	xor    %ecx,%ecx
a652a3:	66 89 0c 58          	mov    %cx,(%eax,%ebx,2)
a652a7:	8b c6                	mov    %esi,%eax
a652a9:	5b                   	pop    %ebx
a652aa:	5f                   	pop    %edi
a652ab:	5e                   	pop    %esi
a652ac:	5d                   	pop    %ebp
a652ad:	c2 08 00             	ret    $0x8
a652b0:	cc                   	int3
a652b1:	cc                   	int3
a652b2:	cc                   	int3
a652b3:	cc                   	int3
a652b4:	cc                   	int3
a652b5:	cc                   	int3
a652b6:	cc                   	int3
a652b7:	cc                   	int3
a652b8:	cc                   	int3
a652b9:	cc                   	int3
a652ba:	cc                   	int3
a652bb:	cc                   	int3
a652bc:	cc                   	int3
a652bd:	cc                   	int3
a652be:	cc                   	int3
a652bf:	cc                   	int3
a652c0:	cc                   	int3
a652c1:	cc                   	int3
a652c2:	cc                   	int3
a652c3:	cc                   	int3
a652c4:	cc                   	int3
a652c5:	cc                   	int3
a652c6:	cc                   	int3
a652c7:	cc                   	int3
a652c8:	cc                   	int3
a652c9:	cc                   	int3
a652ca:	cc                   	int3
a652cb:	cc                   	int3
a652cc:	cc                   	int3
a652cd:	cc                   	int3
a652ce:	55                   	push   %ebp
a652cf:	8b ec                	mov    %esp,%ebp
a652d1:	ff 75 0c             	push   0xc(%ebp)
a652d4:	ff 75 10             	push   0x10(%ebp)
a652d7:	ff 75 08             	push   0x8(%ebp)
a652da:	e8 28 63 9c ff       	call   0x42b607
a652df:	83 c4 0c             	add    $0xc,%esp
a652e2:	5d                   	pop    %ebp
a652e3:	c3                   	ret
a652e4:	cc                   	int3
a652e5:	cc                   	int3
a652e6:	cc                   	int3
a652e7:	cc                   	int3
a652e8:	cc                   	int3
a652e9:	55                   	push   %ebp
a652ea:	8b ec                	mov    %esp,%ebp
a652ec:	8b 45 0c             	mov    0xc(%ebp),%eax
a652ef:	66 8b 08             	mov    (%eax),%cx
a652f2:	8b 45 08             	mov    0x8(%ebp),%eax
a652f5:	66 89 08             	mov    %cx,(%eax)
a652f8:	5d                   	pop    %ebp
a652f9:	c3                   	ret
a652fa:	cc                   	int3
a652fb:	cc                   	int3
a652fc:	cc                   	int3
a652fd:	cc                   	int3
a652fe:	55                   	push   %ebp
a652ff:	8b ec                	mov    %esp,%ebp
a65301:	83 79 14 08          	cmpl   $0x8,0x14(%ecx)
a65305:	72 02                	jb     0xa65309
a65307:	8b 09                	mov    (%ecx),%ecx
a65309:	8b 45 08             	mov    0x8(%ebp),%eax
a6530c:	89 08                	mov    %ecx,(%eax)
a6530e:	5d                   	pop    %ebp
a6530f:	c2 04 00             	ret    $0x4
a65312:	cc                   	int3
a65313:	cc                   	int3
a65314:	cc                   	int3
a65315:	cc                   	int3
a65316:	cc                   	int3
a65317:	83 79 14 08          	cmpl   $0x8,0x14(%ecx)
a6531b:	72 02                	jb     0xa6531f
a6531d:	8b 09                	mov    (%ecx),%ecx
a6531f:	8b c1                	mov    %ecx,%eax
a65321:	c3                   	ret
a65322:	cc                   	int3
a65323:	cc                   	int3
a65324:	55                   	push   %ebp
a65325:	8b ec                	mov    %esp,%ebp
a65327:	8b 45 10             	mov    0x10(%ebp),%eax
a6532a:	85 c0                	test   %eax,%eax
a6532c:	75 05                	jne    0xa65333
a6532e:	8b 45 08             	mov    0x8(%ebp),%eax
a65331:	5d                   	pop    %ebp
a65332:	c3                   	ret
a65333:	03 c0                	add    %eax,%eax
a65335:	50                   	push   %eax
a65336:	ff 75 0c             	push   0xc(%ebp)
a65339:	ff 75 08             	push   0x8(%ebp)
a6533c:	e8 41 f3 9a ff       	call   0x414682
a65341:	83 c4 0c             	add    $0xc,%esp
a65344:	5d                   	pop    %ebp
a65345:	c3                   	ret
a65346:	cc                   	int3
a65347:	cc                   	int3
a65348:	cc                   	int3
a65349:	cc                   	int3
a6534a:	cc                   	int3
a6534b:	cc                   	int3
a6534c:	cc                   	int3
a6534d:	cc                   	int3
a6534e:	55                   	push   %ebp
a6534f:	8b ec                	mov    %esp,%ebp
a65351:	51                   	push   %ecx
a65352:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
a65356:	56                   	push   %esi
a65357:	57                   	push   %edi
a65358:	ff 75 08             	push   0x8(%ebp)
a6535b:	8b f9                	mov    %ecx,%edi
a6535d:	8b 17                	mov    (%edi),%edx
a6535f:	8b 72 18             	mov    0x18(%edx),%esi
a65362:	8b ce                	mov    %esi,%ecx
a65364:	e8 fc 72 9c ff       	call   0x42c665
a65369:	8b cf                	mov    %edi,%ecx
a6536b:	ff d6                	call   *%esi
a6536d:	8b 45 08             	mov    0x8(%ebp),%eax
a65370:	5f                   	pop    %edi
a65371:	5e                   	pop    %esi
a65372:	8b e5                	mov    %ebp,%esp
a65374:	5d                   	pop    %ebp
a65375:	c2 04 00             	ret    $0x4
a65378:	cc                   	int3
a65379:	cc                   	int3
a6537a:	cc                   	int3
a6537b:	cc                   	int3