513fae:	0f 85 b8 01 00 00    	jne    0x51416c
513fb4:	8b 8b 2c 01 00 00    	mov    0x12c(%ebx),%ecx
513fba:	83 c1 08             	add    $0x8,%ecx
513fbd:	39 4c 24 10          	cmp    %ecx,0x10(%esp)
513fc1:	0f 82 a5 01 00 00    	jb     0x51416c
513fc7:	57                   	push   %edi
513fc8:	e8 83 32 fd ff       	call   0x4e7250
513fcd:	83 c4 04             	add    $0x4,%esp
513fd0:	85 c0                	test   %eax,%eax
513fd2:	74 13                	je     0x513fe7
513fd4:	57                   	push   %edi
513fd5:	e8 d6 c0 fd ff       	call   0x4f00b0
513fda:	83 c4 04             	add    $0x4,%esp
513fdd:	8b 08                	mov    (%eax),%ecx
513fdf:	89 0e                	mov    %ecx,(%esi)
513fe1:	8b 40 04             	mov    0x4(%eax),%eax
513fe4:	89 46 04             	mov    %eax,0x4(%esi)
513fe7:	57                   	push   %edi
513fe8:	e8 33 c1 fd ff       	call   0x4f0120
513fed:	83 c4 04             	add    $0x4,%esp
513ff0:	8d 48 04             	lea    0x4(%eax),%ecx
513ff3:	8b 45 00             	mov    0x0(%ebp),%eax
513ff6:	89 01                	mov    %eax,(%ecx)
513ff8:	8b 45 04             	mov    0x4(%ebp),%eax
513ffb:	89 41 04             	mov    %eax,0x4(%ecx)
513ffe:	8b 44 24 10          	mov    0x10(%esp),%eax
514002:	2b 83 2c 01 00 00    	sub    0x12c(%ebx),%eax
514008:	89 44 24 10          	mov    %eax,0x10(%esp)
51400c:	8d 78 f8             	lea    -0x8(%eax),%edi
51400f:	b8 0f 00 00 00       	mov    $0xf,%eax
514014:	2b 83 28 01 00 00    	sub    0x128(%ebx),%eax
51401a:	57                   	push   %edi
51401b:	50                   	push   %eax
51401c:	ff 74 24 1c          	push   0x1c(%esp)
514020:	e8 fb c0 fd ff       	call   0x4f0120
514025:	83 c4 04             	add    $0x4,%esp
514028:	50                   	push   %eax
514029:	8d 83 38 01 00 00    	lea    0x138(%ebx),%eax
51402f:	50                   	push   %eax
514030:	e8 7b 1b fe ff       	call   0x4f5bb0
514035:	83 c4 10             	add    $0x10,%esp
514038:	85 c0                	test   %eax,%eax
51403a:	0f 85 2c 01 00 00    	jne    0x51416c
514040:	ff b3 30 01 00 00    	push   0x130(%ebx)
514046:	ff 74 24 18          	push   0x18(%esp)
51404a:	e8 61 c0 fd ff       	call   0x4f00b0
51404f:	83 c4 04             	add    $0x4,%esp
514052:	50                   	push   %eax
514053:	8d 83 38 01 00 00    	lea    0x138(%ebx),%eax
514059:	50                   	push   %eax
51405a:	e8 11 10 fe ff       	call   0x4f5070
51405f:	ff 74 24 20          	push   0x20(%esp)
514063:	83 c5 08             	add    $0x8,%ebp
514066:	83 c6 08             	add    $0x8,%esi
514069:	e8 e2 31 fd ff       	call   0x4e7250
51406e:	8b 8b 68 01 00 00    	mov    0x168(%ebx),%ecx
514074:	83 c4 10             	add    $0x10,%esp
514077:	85 c0                	test   %eax,%eax
514079:	74 6b                	je     0x5140e6
51407b:	85 c9                	test   %ecx,%ecx
51407d:	74 15                	je     0x514094
51407f:	51                   	push   %ecx
514080:	57                   	push   %edi
514081:	56                   	push   %esi
514082:	55                   	push   %ebp
514083:	8d ab 38 01 00 00    	lea    0x138(%ebx),%ebp
514089:	55                   	push   %ebp
51408a:	e8 b1 17 fe ff       	call   0x4f5840
51408f:	83 c4 14             	add    $0x14,%esp
514092:	eb 12                	jmp    0x5140a6
514094:	57                   	push   %edi
514095:	56                   	push   %esi
514096:	55                   	push   %ebp
514097:	8d ab 38 01 00 00    	lea    0x138(%ebx),%ebp
51409d:	55                   	push   %ebp
51409e:	e8 5d 14 fe ff       	call   0x4f5500
5140a3:	83 c4 10             	add    $0x10,%esp
5140a6:	85 c0                	test   %eax,%eax
5140a8:	0f 85 be 00 00 00    	jne    0x51416c
5140ae:	ff b3 2c 01 00 00    	push   0x12c(%ebx)
5140b4:	8d 04 37             	lea    (%edi,%esi,1),%eax
5140b7:	50                   	push   %eax
5140b8:	55                   	push   %ebp
5140b9:	e8 62 1b fe ff       	call   0x4f5c20
5140be:	83 c4 0c             	add    $0xc,%esp
5140c1:	85 c0                	test   %eax,%eax
5140c3:	0f 84 a3 00 00 00    	je     0x51416c
5140c9:	8b 83 2c 01 00 00    	mov    0x12c(%ebx),%eax
5140cf:	03 44 24 10          	add    0x10(%esp),%eax
5140d3:	5f                   	pop    %edi
5140d4:	5e                   	pop    %esi
5140d5:	5d                   	pop    %ebp
5140d6:	5b                   	pop    %ebx
5140d7:	8b 4c 24 18          	mov    0x18(%esp),%ecx
5140db:	33 cc                	xor    %esp,%ecx
5140dd:	e8 44 d9 0b 00       	call   0x5d1a26
5140e2:	83 c4 1c             	add    $0x1c,%esp
5140e5:	c3                   	ret
5140e6:	8d 83 38 01 00 00    	lea    0x138(%ebx),%eax
5140ec:	85 c9                	test   %ecx,%ecx
5140ee:	74 0f                	je     0x5140ff
5140f0:	51                   	push   %ecx
5140f1:	57                   	push   %edi
5140f2:	56                   	push   %esi
5140f3:	55                   	push   %ebp
5140f4:	50                   	push   %eax
5140f5:	e8 36 12 fe ff       	call   0x4f5330
5140fa:	83 c4 14             	add    $0x14,%esp
5140fd:	eb 0c                	jmp    0x51410b
5140ff:	57                   	push   %edi
514100:	56                   	push   %esi
514101:	55                   	push   %ebp
514102:	50                   	push   %eax
514103:	e8 28 10 fe ff       	call   0x4f5130
514108:	83 c4 10             	add    $0x10,%esp
51410b:	f7 d8                	neg    %eax
51410d:	1b c0                	sbb    %eax,%eax
51410f:	40                   	inc    %eax
514110:	85 c0                	test   %eax,%eax
514112:	74 4e                	je     0x514162
514114:	ff b3 2c 01 00 00    	push   0x12c(%ebx)
51411a:	8d 44 24 1c          	lea    0x1c(%esp),%eax
51411e:	50                   	push   %eax
51411f:	8d 83 38 01 00 00    	lea    0x138(%ebx),%eax
514125:	50                   	push   %eax
514126:	e8 f5 1a fe ff       	call   0x4f5c20
51412b:	83 c4 0c             	add    $0xc,%esp
51412e:	85 c0                	test   %eax,%eax
514130:	74 30                	je     0x514162
514132:	ff b3 2c 01 00 00    	push   0x12c(%ebx)
514138:	8d 0c 2f             	lea    (%edi,%ebp,1),%ecx
51413b:	51                   	push   %ecx
51413c:	8d 44 24 20          	lea    0x20(%esp),%eax
514140:	50                   	push   %eax
514141:	e8 0a d9 ee ff       	call   0x401a50
514146:	83 c4 0c             	add    $0xc,%esp
514149:	85 c0                	test   %eax,%eax
51414b:	75 15                	jne    0x514162
51414d:	8b c7                	mov    %edi,%eax
51414f:	5f                   	pop    %edi
514150:	5e                   	pop    %esi
514151:	5d                   	pop    %ebp
514152:	5b                   	pop    %ebx
514153:	8b 4c 24 18          	mov    0x18(%esp),%ecx
514157:	33 cc                	xor    %esp,%ecx
514159:	e8 c8 d8 0b 00       	call   0x5d1a26
51415e:	83 c4 1c             	add    $0x1c,%esp
514161:	c3                   	ret
514162:	57                   	push   %edi
514163:	56                   	push   %esi
514164:	e8 77 d8 ee ff       	call   0x4019e0
514169:	83 c4 08             	add    $0x8,%esp
51416c:	8b 4c 24 28          	mov    0x28(%esp),%ecx
514170:	83 c8 ff             	or     $0xffffffff,%eax
514173:	5f                   	pop    %edi
514174:	5e                   	pop    %esi
514175:	5d                   	pop    %ebp
514176:	5b                   	pop    %ebx
514177:	33 cc                	xor    %esp,%ecx
514179:	e8 a8 d8 0b 00       	call   0x5d1a26
51417e:	83 c4 1c             	add    $0x1c,%esp
514181:	c3                   	ret
514182:	cc                   	int3
514183:	cc                   	int3
514184:	cc                   	int3
514185:	cc                   	int3
514186:	cc                   	int3
514187:	cc                   	int3
514188:	cc                   	int3
514189:	cc                   	int3
51418a:	cc                   	int3
51418b:	cc                   	int3
51418c:	cc                   	int3
51418d:	cc                   	int3
51418e:	cc                   	int3
51418f:	cc                   	int3
514190:	56                   	push   %esi
514191:	8b 74 24 08          	mov    0x8(%esp),%esi
514195:	57                   	push   %edi
514196:	56                   	push   %esi
514197:	e8 34 bf fd ff       	call   0x4f00d0
51419c:	83 c4 04             	add    $0x4,%esp
51419f:	8b f8                	mov    %eax,%edi
5141a1:	57                   	push   %edi
5141a2:	56                   	push   %esi
5141a3:	e8 88 bf fd ff       	call   0x4f0130
5141a8:	83 c4 04             	add    $0x4,%esp
5141ab:	c1 e0 03             	shl    $0x3,%eax
5141ae:	50                   	push   %eax
5141af:	ff 74 24 18          	push   0x18(%esp)
5141b3:	e8 e8 3a f0 ff       	call   0x417ca0
5141b8:	83 c4 0c             	add    $0xc,%esp
5141bb:	85 c0                	test   %eax,%eax
5141bd:	79 23                	jns    0x5141e2
5141bf:	68 dd 00 00 00       	push   $0xdd
5141c4:	68 14 12 63 00       	push   $0x631214
5141c9:	68 9d 00 00 00       	push   $0x9d
5141ce:	68 9f 00 00 00       	push   $0x9f
5141d3:	6a 06                	push   $0x6
5141d5:	e8 a6 4d fc ff       	call   0x4d8f80
5141da:	83 c4 14             	add    $0x14,%esp
5141dd:	33 c0                	xor    %eax,%eax
5141df:	5f                   	pop    %edi
5141e0:	5e                   	pop    %esi
5141e1:	c3                   	ret
5141e2:	56                   	push   %esi
5141e3:	e8 d8 be fd ff       	call   0x4f00c0
5141e8:	50                   	push   %eax
5141e9:	e8 c2 c0 fd ff       	call   0x4f02b0
5141ee:	25 07 00 0f 00       	and    $0xf0007,%eax
5141f3:	83 c4 08             	add    $0x8,%esp
5141f6:	83 f8 01             	cmp    $0x1,%eax
5141f9:	74 05                	je     0x514200
5141fb:	83 f8 02             	cmp    $0x2,%eax
5141fe:	75 13                	jne    0x514213
514200:	83 7c 24 18 00       	cmpl   $0x0,0x18(%esp)
514205:	75 0c                	jne    0x514213
514207:	33 c9                	xor    %ecx,%ecx
514209:	83 f8 02             	cmp    $0x2,%eax
51420c:	b8 90 6f 41 00       	mov    $0x416f90,%eax
514211:	eb 0a                	jmp    0x51421d
514213:	33 c9                	xor    %ecx,%ecx
514215:	83 f8 02             	cmp    $0x2,%eax
514218:	b8 60 6b 41 00       	mov    $0x416b60,%eax
51421d:	ba 40 8d 41 00       	mov    $0x418d40,%edx
514222:	89 87 18 01 00 00    	mov    %eax,0x118(%edi)
514228:	0f 44 ca             	cmove  %edx,%ecx
51422b:	b8 01 00 00 00       	mov    $0x1,%eax
514230:	89 8f 1c 01 00 00    	mov    %ecx,0x11c(%edi)
514236:	5f                   	pop    %edi
514237:	5e                   	pop    %esi
514238:	c3                   	ret
514239:	cc                   	int3
51423a:	cc                   	int3
51423b:	cc                   	int3
51423c:	cc                   	int3
51423d:	cc                   	int3
51423e:	cc                   	int3
51423f:	cc                   	int3
514240:	56                   	push   %esi
514241:	8b 74 24 08          	mov    0x8(%esp),%esi
514245:	57                   	push   %edi
514246:	56                   	push   %esi
514247:	e8 84 be fd ff       	call   0x4f00d0
51424c:	83 c4 04             	add    $0x4,%esp
51424f:	8b f8                	mov    %eax,%edi
514251:	83 bf 1c 01 00 00 00 	cmpl   $0x0,0x11c(%edi)
514258:	56                   	push   %esi
514259:	74 33                	je     0x51428e
51425b:	e8 f0 2f fd ff       	call   0x4e7250
514260:	83 c4 04             	add    $0x4,%esp
514263:	50                   	push   %eax
514264:	56                   	push   %esi
514265:	e8 b6 be fd ff       	call   0x4f0120
51426a:	83 c4 04             	add    $0x4,%esp
51426d:	50                   	push   %eax
51426e:	8b 87 1c 01 00 00    	mov    0x11c(%edi),%eax
514274:	57                   	push   %edi
514275:	ff 74 24 24          	push   0x24(%esp)
514279:	ff 74 24 20          	push   0x20(%esp)
51427d:	ff 74 24 28          	push   0x28(%esp)
514281:	ff d0                	call   *%eax
514283:	83 c4 18             	add    $0x18,%esp
514286:	b8 01 00 00 00       	mov    $0x1,%eax
51428b:	5f                   	pop    %edi
51428c:	5e                   	pop    %esi
51428d:	c3                   	ret
51428e:	e8 bd 2f fd ff       	call   0x4e7250
514293:	8b 8f 18 01 00 00    	mov    0x118(%edi),%ecx
514299:	83 c4 04             	add    $0x4,%esp
51429c:	51                   	push   %ecx
51429d:	56                   	push   %esi
51429e:	85 c0                	test   %eax,%eax
5142a0:	74 26                	je     0x5142c8
5142a2:	e8 79 be fd ff       	call   0x4f0120
5142a7:	83 c4 04             	add    $0x4,%esp
5142aa:	50                   	push   %eax
5142ab:	57                   	push   %edi
5142ac:	ff 74 24 24          	push   0x24(%esp)
5142b0:	ff 74 24 20          	push   0x20(%esp)
5142b4:	ff 74 24 28          	push   0x28(%esp)
5142b8:	e8 d3 eb fd ff       	call   0x4f2e90
5142bd:	83 c4 18             	add    $0x18,%esp
5142c0:	b8 01 00 00 00       	mov    $0x1,%eax
5142c5:	5f                   	pop    %edi
5142c6:	5e                   	pop    %esi
5142c7:	c3                   	ret
5142c8:	e8 53 be fd ff       	call   0x4f0120
5142cd:	83 c4 04             	add    $0x4,%esp
5142d0:	50                   	push   %eax
5142d1:	57                   	push   %edi
5142d2:	ff 74 24 24          	push   0x24(%esp)
5142d6:	ff 74 24 20          	push   0x20(%esp)
5142da:	ff 74 24 28          	push   0x28(%esp)
5142de:	e8 ad e8 fd ff       	call   0x4f2b90
5142e3:	83 c4 18             	add    $0x18,%esp
5142e6:	b8 01 00 00 00       	mov    $0x1,%eax
5142eb:	5f                   	pop    %edi
5142ec:	5e                   	pop    %esi
5142ed:	c3                   	ret
5142ee:	cc                   	int3
5142ef:	cc                   	int3
5142f0:	b8 04 00 00 00       	mov    $0x4,%eax
5142f5:	e8 b6 d4 0b 00       	call   0x5d17b0
5142fa:	53                   	push   %ebx
5142fb:	55                   	push   %ebp
5142fc:	56                   	push   %esi
5142fd:	8b 74 24 14          	mov    0x14(%esp),%esi
514301:	56                   	push   %esi
514302:	e8 99 bd fd ff       	call   0x4f00a0
514307:	56                   	push   %esi
514308:	8b d8                	mov    %eax,%ebx
51430a:	e8 c1 bd fd ff       	call   0x4f00d0
51430f:	8b 6c 24 28          	mov    0x28(%esp),%ebp
514313:	83 c4 08             	add    $0x8,%esp
514316:	8b c8                	mov    %eax,%ecx
514318:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
51431c:	3b eb                	cmp    %ebx,%ebp
51431e:	72 34                	jb     0x514354
514320:	8b 44 24 18          	mov    0x18(%esp),%eax
514324:	2b eb                	sub    %ebx,%ebp
514326:	8b 74 24 1c          	mov    0x1c(%esp),%esi
51432a:	57                   	push   %edi
51432b:	33 ff                	xor    %edi,%edi
51432d:	2b c6                	sub    %esi,%eax
51432f:	89 44 24 1c          	mov    %eax,0x1c(%esp)
514333:	51                   	push   %ecx
514334:	03 c6                	add    %esi,%eax
514336:	50                   	push   %eax
514337:	8b 81 18 01 00 00    	mov    0x118(%ecx),%eax
51433d:	56                   	push   %esi
51433e:	ff d0                	call   *%eax
514340:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
514344:	03 fb                	add    %ebx,%edi
514346:	8b 44 24 28          	mov    0x28(%esp),%eax
51434a:	83 c4 0c             	add    $0xc,%esp
51434d:	03 f3                	add    %ebx,%esi
51434f:	3b fd                	cmp    %ebp,%edi
514351:	76 e0                	jbe    0x514333
514353:	5f                   	pop    %edi
514354:	5e                   	pop    %esi
514355:	5d                   	pop    %ebp
514356:	b8 01 00 00 00       	mov    $0x1,%eax
51435b:	5b                   	pop    %ebx
51435c:	59                   	pop    %ecx
51435d:	c3                   	ret
51435e:	cc                   	int3
51435f:	cc                   	int3
514360:	b8 04 00 00 00       	mov    $0x4,%eax
514365:	e8 46 d4 0b 00       	call   0x5d17b0