598122:	83 c4 04             	add    $0x4,%esp
598125:	eb 03                	jmp    0x59812a
598127:	83 c8 ff             	or     $0xffffffff,%eax
59812a:	8b 5c 24 18          	mov    0x18(%esp),%ebx
59812e:	56                   	push   %esi
59812f:	6a 00                	push   $0x0
598131:	50                   	push   %eax
598132:	55                   	push   %ebp
598133:	85 db                	test   %ebx,%ebx
598135:	74 08                	je     0x59813f
598137:	53                   	push   %ebx
598138:	e8 43 34 ff ff       	call   0x58b580
59813d:	eb 09                	jmp    0x598148
59813f:	ff 74 24 2c          	push   0x2c(%esp)
598143:	e8 08 34 ff ff       	call   0x58b550
598148:	83 c4 14             	add    $0x14,%esp
59814b:	85 c0                	test   %eax,%eax
59814d:	75 0b                	jne    0x59815a
59814f:	5f                   	pop    %edi
598150:	5e                   	pop    %esi
598151:	5d                   	pop    %ebp
598152:	b8 8d 01 00 00       	mov    $0x18d,%eax
598157:	5b                   	pop    %ebx
598158:	59                   	pop    %ecx
598159:	c3                   	ret
59815a:	56                   	push   %esi
59815b:	81 cf 12 00 06 00    	or     $0x60012,%edi
598161:	e8 3a 44 fc ff       	call   0x55c5a0
598166:	83 c4 04             	add    $0x4,%esp
598169:	a9 00 20 00 00       	test   $0x2000,%eax
59816e:	75 5e                	jne    0x5981ce
598170:	6a 00                	push   $0x0
598172:	8d 44 24 28          	lea    0x28(%esp),%eax
598176:	50                   	push   %eax
598177:	8d 44 24 18          	lea    0x18(%esp),%eax
59817b:	50                   	push   %eax
59817c:	8d 44 24 34          	lea    0x34(%esp),%eax
598180:	50                   	push   %eax
598181:	56                   	push   %esi
598182:	e8 a9 8c f8 ff       	call   0x520e30
598187:	8b 4c 24 38          	mov    0x38(%esp),%ecx
59818b:	83 c4 14             	add    $0x14,%esp
59818e:	83 ca ff             	or     $0xffffffff,%edx
598191:	85 c0                	test   %eax,%eax
598193:	8b 44 24 28          	mov    0x28(%esp),%eax
598197:	0f 44 ca             	cmove  %edx,%ecx
59819a:	85 c0                	test   %eax,%eax
59819c:	56                   	push   %esi
59819d:	0f 44 44 24 14       	cmove  0x14(%esp),%eax
5981a2:	89 4c 24 28          	mov    %ecx,0x28(%esp)
5981a6:	89 44 24 2c          	mov    %eax,0x2c(%esp)
5981aa:	50                   	push   %eax
5981ab:	51                   	push   %ecx
5981ac:	57                   	push   %edi
5981ad:	85 db                	test   %ebx,%ebx
5981af:	74 08                	je     0x5981b9
5981b1:	53                   	push   %ebx
5981b2:	e8 c9 33 ff ff       	call   0x58b580
5981b7:	eb 09                	jmp    0x5981c2
5981b9:	ff 74 24 2c          	push   0x2c(%esp)
5981bd:	e8 8e 33 ff ff       	call   0x58b550
5981c2:	83 c4 14             	add    $0x14,%esp
5981c5:	85 c0                	test   %eax,%eax
5981c7:	b8 8e 01 00 00       	mov    $0x18e,%eax
5981cc:	74 05                	je     0x5981d3
5981ce:	b8 01 00 00 00       	mov    $0x1,%eax
5981d3:	5f                   	pop    %edi
5981d4:	5e                   	pop    %esi
5981d5:	5d                   	pop    %ebp
5981d6:	5b                   	pop    %ebx
5981d7:	59                   	pop    %ecx
5981d8:	c3                   	ret
5981d9:	cc                   	int3
5981da:	cc                   	int3
5981db:	cc                   	int3
5981dc:	cc                   	int3
5981dd:	cc                   	int3
5981de:	cc                   	int3
5981df:	cc                   	int3
5981e0:	b8 08 00 00 00       	mov    $0x8,%eax
5981e5:	e8 c6 95 03 00       	call   0x5d17b0
5981ea:	53                   	push   %ebx
5981eb:	55                   	push   %ebp
5981ec:	56                   	push   %esi
5981ed:	8b 74 24 20          	mov    0x20(%esp),%esi
5981f1:	57                   	push   %edi
5981f2:	85 f6                	test   %esi,%esi
5981f4:	75 16                	jne    0x59820c
5981f6:	56                   	push   %esi
5981f7:	ff 74 24 24          	push   0x24(%esp)
5981fb:	e8 80 d0 f4 ff       	call   0x4e5280
598200:	83 c4 08             	add    $0x8,%esp
598203:	8b f0                	mov    %eax,%esi
598205:	bf 01 00 00 00       	mov    $0x1,%edi
59820a:	eb 02                	jmp    0x59820e
59820c:	33 ff                	xor    %edi,%edi
59820e:	8b 44 24 28          	mov    0x28(%esp),%eax
598212:	bb 00 10 00 00       	mov    $0x1000,%ebx
598217:	85 c0                	test   %eax,%eax
598219:	56                   	push   %esi
59821a:	0f 44 d8             	cmove  %eax,%ebx
59821d:	8b c3                	mov    %ebx,%eax
59821f:	0d 10 00 06 00       	or     $0x60010,%eax
598224:	89 44 24 28          	mov    %eax,0x28(%esp)
598228:	e8 03 ff fb ff       	call   0x558130
59822d:	83 c4 04             	add    $0x4,%esp
598230:	85 c0                	test   %eax,%eax
598232:	74 0b                	je     0x59823f
598234:	50                   	push   %eax
598235:	e8 e6 8e f5 ff       	call   0x4f1120
59823a:	83 c4 04             	add    $0x4,%esp
59823d:	eb 03                	jmp    0x598242
59823f:	83 c8 ff             	or     $0xffffffff,%eax
598242:	8b 6c 24 1c          	mov    0x1c(%esp),%ebp
598246:	56                   	push   %esi
598247:	6a 00                	push   $0x0
598249:	50                   	push   %eax
59824a:	ff 74 24 30          	push   0x30(%esp)
59824e:	85 ed                	test   %ebp,%ebp
598250:	74 08                	je     0x59825a
598252:	55                   	push   %ebp
598253:	e8 28 33 ff ff       	call   0x58b580
598258:	eb 07                	jmp    0x598261
59825a:	6a 00                	push   $0x0
59825c:	e8 ef 32 ff ff       	call   0x58b550
598261:	83 c4 14             	add    $0x14,%esp
598264:	85 c0                	test   %eax,%eax
598266:	75 0d                	jne    0x598275
598268:	5f                   	pop    %edi
598269:	5e                   	pop    %esi
59826a:	5d                   	pop    %ebp
59826b:	b8 8f 01 00 00       	mov    $0x18f,%eax
598270:	5b                   	pop    %ebx
598271:	83 c4 08             	add    $0x8,%esp
598274:	c3                   	ret
598275:	8b c3                	mov    %ebx,%eax
598277:	0d 12 00 06 00       	or     $0x60012,%eax
59827c:	56                   	push   %esi
59827d:	89 44 24 28          	mov    %eax,0x28(%esp)
598281:	e8 1a 43 fc ff       	call   0x55c5a0
598286:	83 c4 04             	add    $0x4,%esp
598289:	a9 00 20 00 00       	test   $0x2000,%eax
59828e:	75 69                	jne    0x5982f9
598290:	6a 00                	push   $0x0
598292:	8d 44 24 2c          	lea    0x2c(%esp),%eax
598296:	50                   	push   %eax
598297:	8d 44 24 18          	lea    0x18(%esp),%eax
59829b:	50                   	push   %eax
59829c:	8d 44 24 28          	lea    0x28(%esp),%eax
5982a0:	50                   	push   %eax
5982a1:	56                   	push   %esi
5982a2:	e8 89 8b f8 ff       	call   0x520e30
5982a7:	8b 4c 24 3c          	mov    0x3c(%esp),%ecx
5982ab:	83 c4 14             	add    $0x14,%esp
5982ae:	85 c0                	test   %eax,%eax
5982b0:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
5982b5:	0f 44 c8             	cmove  %eax,%ecx
5982b8:	8b 44 24 1c          	mov    0x1c(%esp),%eax
5982bc:	85 c0                	test   %eax,%eax
5982be:	89 4c 24 28          	mov    %ecx,0x28(%esp)
5982c2:	56                   	push   %esi
5982c3:	0f 44 44 24 14       	cmove  0x14(%esp),%eax
5982c8:	89 44 24 20          	mov    %eax,0x20(%esp)
5982cc:	50                   	push   %eax
5982cd:	51                   	push   %ecx
5982ce:	ff 74 24 30          	push   0x30(%esp)
5982d2:	85 ed                	test   %ebp,%ebp
5982d4:	74 08                	je     0x5982de
5982d6:	55                   	push   %ebp
5982d7:	e8 a4 32 ff ff       	call   0x58b580
5982dc:	eb 07                	jmp    0x5982e5
5982de:	6a 00                	push   $0x0
5982e0:	e8 6b 32 ff ff       	call   0x58b550
5982e5:	83 c4 14             	add    $0x14,%esp
5982e8:	85 c0                	test   %eax,%eax
5982ea:	75 0d                	jne    0x5982f9
5982ec:	5f                   	pop    %edi
5982ed:	5e                   	pop    %esi
5982ee:	5d                   	pop    %ebp
5982ef:	b8 8e 01 00 00       	mov    $0x18e,%eax
5982f4:	5b                   	pop    %ebx
5982f5:	83 c4 08             	add    $0x8,%esp
5982f8:	c3                   	ret
5982f9:	8b 74 24 20          	mov    0x20(%esp),%esi
5982fd:	56                   	push   %esi
5982fe:	e8 bd cd f4 ff       	call   0x4e50c0
598303:	83 c4 04             	add    $0x4,%esp
598306:	3b f8                	cmp    %eax,%edi
598308:	0f 8d da 00 00 00    	jge    0x5983e8
59830e:	81 cb 11 00 06 00    	or     $0x60011,%ebx
598314:	89 5c 24 28          	mov    %ebx,0x28(%esp)
598318:	57                   	push   %edi
598319:	56                   	push   %esi
59831a:	e8 61 cf f4 ff       	call   0x4e5280
59831f:	8b f0                	mov    %eax,%esi
598321:	83 cb ff             	or     $0xffffffff,%ebx
598324:	56                   	push   %esi
598325:	e8 06 fe fb ff       	call   0x558130
59832a:	83 c4 0c             	add    $0xc,%esp
59832d:	85 c0                	test   %eax,%eax
59832f:	74 0b                	je     0x59833c
598331:	50                   	push   %eax
598332:	e8 e9 8d f5 ff       	call   0x4f1120
598337:	83 c4 04             	add    $0x4,%esp
59833a:	8b d8                	mov    %eax,%ebx
59833c:	56                   	push   %esi
59833d:	6a 00                	push   $0x0
59833f:	53                   	push   %ebx
598340:	ff 74 24 34          	push   0x34(%esp)
598344:	85 ed                	test   %ebp,%ebp
598346:	74 08                	je     0x598350
598348:	55                   	push   %ebp
598349:	e8 32 32 ff ff       	call   0x58b580
59834e:	eb 07                	jmp    0x598357
598350:	6a 00                	push   $0x0
598352:	e8 f9 31 ff ff       	call   0x58b550
598357:	83 c4 14             	add    $0x14,%esp
59835a:	85 c0                	test   %eax,%eax
59835c:	0f 84 93 00 00 00    	je     0x5983f5
598362:	56                   	push   %esi
598363:	e8 38 42 fc ff       	call   0x55c5a0
598368:	83 c4 04             	add    $0x4,%esp
59836b:	a9 00 20 00 00       	test   $0x2000,%eax
598370:	75 60                	jne    0x5983d2
598372:	6a 00                	push   $0x0
598374:	8d 44 24 20          	lea    0x20(%esp),%eax
598378:	50                   	push   %eax
598379:	8d 44 24 1c          	lea    0x1c(%esp),%eax
59837d:	50                   	push   %eax
59837e:	8d 44 24 1c          	lea    0x1c(%esp),%eax
598382:	50                   	push   %eax
598383:	56                   	push   %esi
598384:	e8 a7 8a f8 ff       	call   0x520e30
598389:	8b 4c 24 30          	mov    0x30(%esp),%ecx
59838d:	83 c4 14             	add    $0x14,%esp
598390:	85 c0                	test   %eax,%eax
598392:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
598397:	0f 44 c8             	cmove  %eax,%ecx
59839a:	8b 44 24 10          	mov    0x10(%esp),%eax
59839e:	85 c0                	test   %eax,%eax
5983a0:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
5983a4:	56                   	push   %esi
5983a5:	0f 44 44 24 18       	cmove  0x18(%esp),%eax
5983aa:	89 44 24 14          	mov    %eax,0x14(%esp)
5983ae:	50                   	push   %eax
5983af:	51                   	push   %ecx
5983b0:	ff 74 24 30          	push   0x30(%esp)
5983b4:	85 ed                	test   %ebp,%ebp
5983b6:	74 08                	je     0x5983c0
5983b8:	55                   	push   %ebp
5983b9:	e8 c2 31 ff ff       	call   0x58b580
5983be:	eb 07                	jmp    0x5983c7
5983c0:	6a 00                	push   $0x0
5983c2:	e8 89 31 ff ff       	call   0x58b550
5983c7:	83 c4 14             	add    $0x14,%esp
5983ca:	85 c0                	test   %eax,%eax
5983cc:	0f 84 1a ff ff ff    	je     0x5982ec
5983d2:	8b 74 24 20          	mov    0x20(%esp),%esi
5983d6:	47                   	inc    %edi
5983d7:	56                   	push   %esi
5983d8:	e8 e3 cc f4 ff       	call   0x4e50c0
5983dd:	83 c4 04             	add    $0x4,%esp
5983e0:	3b f8                	cmp    %eax,%edi
5983e2:	0f 8c 30 ff ff ff    	jl     0x598318
5983e8:	5f                   	pop    %edi
5983e9:	5e                   	pop    %esi
5983ea:	5d                   	pop    %ebp
5983eb:	b8 01 00 00 00       	mov    $0x1,%eax
5983f0:	5b                   	pop    %ebx
5983f1:	83 c4 08             	add    $0x8,%esp
5983f4:	c3                   	ret
5983f5:	5f                   	pop    %edi
5983f6:	5e                   	pop    %esi
5983f7:	5d                   	pop    %ebp
5983f8:	b8 8d 01 00 00       	mov    $0x18d,%eax
5983fd:	5b                   	pop    %ebx
5983fe:	83 c4 08             	add    $0x8,%esp
598401:	c3                   	ret
598402:	cc                   	int3
598403:	cc                   	int3
598404:	cc                   	int3
598405:	cc                   	int3
598406:	cc                   	int3
598407:	cc                   	int3
598408:	cc                   	int3
598409:	cc                   	int3
59840a:	cc                   	int3
59840b:	cc                   	int3
59840c:	cc                   	int3
59840d:	cc                   	int3
59840e:	cc                   	int3
59840f:	cc                   	int3
598410:	b8 0c 00 00 00       	mov    $0xc,%eax
598415:	e8 96 93 03 00       	call   0x5d17b0
59841a:	53                   	push   %ebx
59841b:	8b 5c 24 14          	mov    0x14(%esp),%ebx
59841f:	55                   	push   %ebp
598420:	57                   	push   %edi
598421:	bf 0b 00 00 00       	mov    $0xb,%edi
598426:	8b 43 7c             	mov    0x7c(%ebx),%eax
598429:	89 7c 24 1c          	mov    %edi,0x1c(%esp)
59842d:	c7 80 a4 02 00 00 00 	movl   $0x0,0x2a4(%eax)
598434:	00 00 00
598437:	8b 43 7c             	mov    0x7c(%ebx),%eax
59843a:	c7 80 a0 02 00 00 00 	movl   $0x0,0x2a0(%eax)
598441:	00 00 00
598444:	8d 44 24 10          	lea    0x10(%esp),%eax
598448:	8b 6b 7c             	mov    0x7c(%ebx),%ebp
59844b:	50                   	push   %eax
59844c:	6a 01                	push   $0x1
59844e:	81 c5 a4 02 00 00    	add    $0x2a4,%ebp
598454:	53                   	push   %ebx
598455:	89 6c 24 20          	mov    %ebp,0x20(%esp)
598459:	e8 f2 05 00 00       	call   0x598a50
59845e:	83 c4 0c             	add    $0xc,%esp
598461:	89 44 24 0c          	mov    %eax,0xc(%esp)
598465:	85 c0                	test   %eax,%eax
598467:	74 79                	je     0x5984e2
598469:	8b 6c 24 10          	mov    0x10(%esp),%ebp
59846d:	56                   	push   %esi
59846e:	66 90                	xchg   %ax,%ax
598470:	0f b7 45 00          	movzwl 0x0(%ebp),%eax
598474:	33 c9                	xor    %ecx,%ecx
598476:	be b8 76 66 00       	mov    $0x6676b8,%esi
59847b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
598480:	66 39 46 04          	cmp    %ax,0x4(%esi)
598484:	74 0b                	je     0x598491
598486:	41                   	inc    %ecx
598487:	83 c6 20             	add    $0x20,%esi
59848a:	83 f9 17             	cmp    $0x17,%ecx
59848d:	72 f1                	jb     0x598480
59848f:	eb 42                	jmp    0x5984d3
598491:	ff 76 14             	push   0x14(%esi)
598494:	e8 f7 2d ff ff       	call   0x58b290
598499:	8b f8                	mov    %eax,%edi
59849b:	83 c4 04             	add    $0x4,%esp
59849e:	85 ff                	test   %edi,%edi
5984a0:	74 2d                	je     0x5984cf
5984a2:	8b 44 24 20          	mov    0x20(%esp),%eax
5984a6:	85 47 04             	test   %eax,0x4(%edi)
5984a9:	74 24                	je     0x5984cf
5984ab:	56                   	push   %esi
5984ac:	68 0e 00 05 00       	push   $0x5000e
5984b1:	53                   	push   %ebx
5984b2:	e8 e9 06 00 00       	call   0x598ba0
5984b7:	83 c4 0c             	add    $0xc,%esp
5984ba:	85 c0                	test   %eax,%eax
5984bc:	74 11                	je     0x5984cf
5984be:	8b 47 04             	mov    0x4(%edi),%eax
5984c1:	8b 7c 24 20          	mov    0x20(%esp),%edi