5f8092:	50                   	push   %eax
5f8093:	53                   	push   %ebx
5f8094:	8a 45 08             	mov    0x8(%ebp),%al
5f8097:	50                   	push   %eax
5f8098:	8b c6                	mov    %esi,%eax
5f809a:	e8 39 f8 ff ff       	call   0x5f78d8
5f809f:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5f80a2:	8b d7                	mov    %edi,%edx
5f80a4:	e8 93 fe ff ff       	call   0x5f7f3c
5f80a9:	8b d7                	mov    %edi,%edx
5f80ab:	8b c6                	mov    %esi,%eax
5f80ad:	e8 12 fa ff ff       	call   0x5f7ac4
5f80b2:	8b 55 fc             	mov    -0x4(%ebp),%edx
5f80b5:	8b c6                	mov    %esi,%eax
5f80b7:	e8 ac fb ff ff       	call   0x5f7c68
5f80bc:	8b 45 14             	mov    0x14(%ebp),%eax
5f80bf:	50                   	push   %eax
5f80c0:	53                   	push   %ebx
5f80c1:	8a 45 08             	mov    0x8(%ebp),%al
5f80c4:	50                   	push   %eax
5f80c5:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5f80c8:	8b 55 f8             	mov    -0x8(%ebp),%edx
5f80cb:	8b c6                	mov    %esi,%eax
5f80cd:	e8 26 fd ff ff       	call   0x5f7df8
5f80d2:	8b c6                	mov    %esi,%eax
5f80d4:	e8 2f f8 ff ff       	call   0x5f7908
5f80d9:	84 c0                	test   %al,%al
5f80db:	74 1b                	je     0x5f80f8
5f80dd:	8b 45 10             	mov    0x10(%ebp),%eax
5f80e0:	50                   	push   %eax
5f80e1:	53                   	push   %ebx
5f80e2:	8a 45 08             	mov    0x8(%ebp),%al
5f80e5:	50                   	push   %eax
5f80e6:	8b c6                	mov    %esi,%eax
5f80e8:	e8 eb f7 ff ff       	call   0x5f78d8
5f80ed:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5f80f0:	8b 55 f8             	mov    -0x8(%ebp),%edx
5f80f3:	e8 00 fd ff ff       	call   0x5f7df8
5f80f8:	5f                   	pop    %edi
5f80f9:	5e                   	pop    %esi
5f80fa:	5b                   	pop    %ebx
5f80fb:	8b e5                	mov    %ebp,%esp
5f80fd:	5d                   	pop    %ebp
5f80fe:	c2 10 00             	ret    $0x10
5f8101:	8d 40 00             	lea    0x0(%eax),%eax
5f8104:	55                   	push   %ebp
5f8105:	8b ec                	mov    %esp,%ebp
5f8107:	83 c4 f8             	add    $0xfffffff8,%esp
5f810a:	53                   	push   %ebx
5f810b:	56                   	push   %esi
5f810c:	57                   	push   %edi
5f810d:	89 4d f8             	mov    %ecx,-0x8(%ebp)
5f8110:	89 55 fc             	mov    %edx,-0x4(%ebp)
5f8113:	8b f0                	mov    %eax,%esi
5f8115:	b2 01                	mov    $0x1,%dl
5f8117:	a1 18 ff 5e 00       	mov    0x5eff18,%eax
5f811c:	e8 83 f4 ff ff       	call   0x5f75a4
5f8121:	8b d8                	mov    %eax,%ebx
5f8123:	8b c6                	mov    %esi,%eax
5f8125:	8b 10                	mov    (%eax),%edx
5f8127:	ff 52 10             	call   *0x10(%edx)
5f812a:	50                   	push   %eax
5f812b:	8b 4d 14             	mov    0x14(%ebp),%ecx
5f812e:	2b 4d f8             	sub    -0x8(%ebp),%ecx
5f8131:	41                   	inc    %ecx
5f8132:	8b 55 18             	mov    0x18(%ebp),%edx
5f8135:	2b 55 fc             	sub    -0x4(%ebp),%edx
5f8138:	42                   	inc    %edx
5f8139:	8b c3                	mov    %ebx,%eax
5f813b:	8b 38                	mov    (%eax),%edi
5f813d:	ff 57 24             	call   *0x24(%edi)
5f8140:	8b 45 f8             	mov    -0x8(%ebp),%eax
5f8143:	50                   	push   %eax
5f8144:	6a 00                	push   $0x0
5f8146:	6a 00                	push   $0x0
5f8148:	8b c3                	mov    %ebx,%eax
5f814a:	8b 10                	mov    (%eax),%edx
5f814c:	ff 52 0c             	call   *0xc(%edx)
5f814f:	50                   	push   %eax
5f8150:	8b c3                	mov    %ebx,%eax
5f8152:	8b 10                	mov    (%eax),%edx
5f8154:	ff 52 08             	call   *0x8(%edx)
5f8157:	50                   	push   %eax
5f8158:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5f815b:	8b d3                	mov    %ebx,%edx
5f815d:	8b c6                	mov    %esi,%eax
5f815f:	e8 c4 29 00 00       	call   0x5fab28
5f8164:	8b 45 18             	mov    0x18(%ebp),%eax
5f8167:	50                   	push   %eax
5f8168:	8b 45 14             	mov    0x14(%ebp),%eax
5f816b:	50                   	push   %eax
5f816c:	db 45 08             	fildl  0x8(%ebp)
5f816f:	83 c4 f8             	add    $0xfffffff8,%esp
5f8172:	dd 1c 24             	fstpl  (%esp)
5f8175:	9b                   	fwait
5f8176:	8b 4d f8             	mov    -0x8(%ebp),%ecx
5f8179:	8b 55 fc             	mov    -0x4(%ebp),%edx
5f817c:	8b c6                	mov    %esi,%eax
5f817e:	e8 35 41 00 00       	call   0x5fc2b8
5f8183:	6a 00                	push   $0x0
5f8185:	8b 45 10             	mov    0x10(%ebp),%eax
5f8188:	50                   	push   %eax
5f8189:	8b 45 0c             	mov    0xc(%ebp),%eax
5f818c:	50                   	push   %eax
5f818d:	8b c3                	mov    %ebx,%eax
5f818f:	8b 10                	mov    (%eax),%edx
5f8191:	ff 52 0c             	call   *0xc(%edx)
5f8194:	50                   	push   %eax
5f8195:	8b c3                	mov    %ebx,%eax
5f8197:	8b 10                	mov    (%eax),%edx
5f8199:	ff 52 08             	call   *0x8(%edx)
5f819c:	50                   	push   %eax
5f819d:	33 c9                	xor    %ecx,%ecx
5f819f:	8b d6                	mov    %esi,%edx
5f81a1:	8b c3                	mov    %ebx,%eax
5f81a3:	e8 80 29 00 00       	call   0x5fab28
5f81a8:	8b c3                	mov    %ebx,%eax
5f81aa:	e8 c9 b8 e0 ff       	call   0x403a78
5f81af:	5f                   	pop    %edi
5f81b0:	5e                   	pop    %esi
5f81b1:	5b                   	pop    %ebx
5f81b2:	59                   	pop    %ecx
5f81b3:	59                   	pop    %ecx
5f81b4:	5d                   	pop    %ebp
5f81b5:	c2 14 00             	ret    $0x14
5f81b8:	3a 50 40             	cmp    0x40(%eax),%dl
5f81bb:	74 05                	je     0x5f81c2
5f81bd:	e8 ea 27 00 00       	call   0x5fa9ac
5f81c2:	c3                   	ret
5f81c3:	90                   	nop
5f81c4:	53                   	push   %ebx
5f81c5:	56                   	push   %esi
5f81c6:	57                   	push   %edi
5f81c7:	8b d8                	mov    %eax,%ebx
5f81c9:	8b 43 0c             	mov    0xc(%ebx),%eax
5f81cc:	85 c0                	test   %eax,%eax
5f81ce:	74 2c                	je     0x5f81fc
5f81d0:	8b d0                	mov    %eax,%edx
5f81d2:	8b 43 08             	mov    0x8(%ebx),%eax
5f81d5:	e8 16 95 00 00       	call   0x6016f0
5f81da:	eb 20                	jmp    0x5f81fc
5f81dc:	8b d7                	mov    %edi,%edx
5f81de:	4a                   	dec    %edx
5f81df:	8b c6                	mov    %esi,%eax
5f81e1:	e8 da 3b e2 ff       	call   0x41bdc0
5f81e6:	8b d0                	mov    %eax,%edx
5f81e8:	8b 43 08             	mov    0x8(%ebx),%eax
5f81eb:	e8 00 95 00 00       	call   0x6016f0
5f81f0:	8b 43 2c             	mov    0x2c(%ebx),%eax
5f81f3:	8b 50 08             	mov    0x8(%eax),%edx
5f81f6:	4a                   	dec    %edx
5f81f7:	e8 64 3a e2 ff       	call   0x41bc60
5f81fc:	8b 73 2c             	mov    0x2c(%ebx),%esi
5f81ff:	8b 7e 08             	mov    0x8(%esi),%edi
5f8202:	85 ff                	test   %edi,%edi
5f8204:	7f d6                	jg     0x5f81dc
5f8206:	33 c0                	xor    %eax,%eax
5f8208:	89 43 0c             	mov    %eax,0xc(%ebx)
5f820b:	5f                   	pop    %edi
5f820c:	5e                   	pop    %esi
5f820d:	5b                   	pop    %ebx
5f820e:	c3                   	ret
5f820f:	90                   	nop
5f8210:	53                   	push   %ebx
5f8211:	8b d8                	mov    %eax,%ebx
5f8213:	84 d2                	test   %dl,%dl
5f8215:	74 11                	je     0x5f8228
5f8217:	8b 43 18             	mov    0x18(%ebx),%eax
5f821a:	85 c0                	test   %eax,%eax
5f821c:	74 05                	je     0x5f8223
5f821e:	e8 55 b8 e0 ff       	call   0x403a78
5f8223:	33 c0                	xor    %eax,%eax
5f8225:	89 43 18             	mov    %eax,0x18(%ebx)
5f8228:	8b 43 10             	mov    0x10(%ebx),%eax
5f822b:	85 c0                	test   %eax,%eax
5f822d:	74 05                	je     0x5f8234
5f822f:	e8 98 a5 e0 ff       	call   0x4027cc
5f8234:	8b c3                	mov    %ebx,%eax
5f8236:	e8 89 ff ff ff       	call   0x5f81c4
5f823b:	8b 43 08             	mov    0x8(%ebx),%eax
5f823e:	e8 45 91 00 00       	call   0x601388
5f8243:	80 7b 45 00          	cmpb   $0x0,0x45(%ebx)
5f8247:	75 14                	jne    0x5f825d
5f8249:	83 7b 1c 00          	cmpl   $0x0,0x1c(%ebx)
5f824d:	74 0e                	je     0x5f825d
5f824f:	83 7b 20 00          	cmpl   $0x0,0x20(%ebx)
5f8253:	74 08                	je     0x5f825d
5f8255:	8d 43 20             	lea    0x20(%ebx),%eax
5f8258:	e8 37 c9 00 00       	call   0x604b94
5f825d:	80 7b 44 00          	cmpb   $0x0,0x44(%ebx)
5f8261:	75 0e                	jne    0x5f8271
5f8263:	83 7b 24 00          	cmpl   $0x0,0x24(%ebx)
5f8267:	74 08                	je     0x5f8271
5f8269:	8b 43 24             	mov    0x24(%ebx),%eax
5f826c:	e8 07 b8 e0 ff       	call   0x403a78
5f8271:	8b c3                	mov    %ebx,%eax
5f8273:	e8 f0 f7 ff ff       	call   0x5f7a68
5f8278:	33 c0                	xor    %eax,%eax
5f827a:	89 43 1c             	mov    %eax,0x1c(%ebx)
5f827d:	33 c0                	xor    %eax,%eax
5f827f:	89 43 20             	mov    %eax,0x20(%ebx)
5f8282:	33 c0                	xor    %eax,%eax
5f8284:	89 43 24             	mov    %eax,0x24(%ebx)
5f8287:	33 c0                	xor    %eax,%eax
5f8289:	89 43 10             	mov    %eax,0x10(%ebx)
5f828c:	33 c0                	xor    %eax,%eax
5f828e:	89 43 14             	mov    %eax,0x14(%ebx)
5f8291:	33 c0                	xor    %eax,%eax
5f8293:	89 43 30             	mov    %eax,0x30(%ebx)
5f8296:	33 c0                	xor    %eax,%eax
5f8298:	89 43 34             	mov    %eax,0x34(%ebx)
5f829b:	33 c0                	xor    %eax,%eax
5f829d:	89 43 3c             	mov    %eax,0x3c(%ebx)
5f82a0:	33 c0                	xor    %eax,%eax
5f82a2:	89 43 38             	mov    %eax,0x38(%ebx)
5f82a5:	c6 43 43 00          	movb   $0x0,0x43(%ebx)
5f82a9:	c6 43 44 00          	movb   $0x0,0x44(%ebx)
5f82ad:	c6 43 45 00          	movb   $0x0,0x45(%ebx)
5f82b1:	5b                   	pop    %ebx
5f82b2:	c3                   	ret
5f82b3:	90                   	nop
5f82b4:	83 78 30 00          	cmpl   $0x0,0x30(%eax)
5f82b8:	74 15                	je     0x5f82cf
5f82ba:	83 78 34 00          	cmpl   $0x0,0x34(%eax)
5f82be:	74 0f                	je     0x5f82cf
5f82c0:	83 78 3c 00          	cmpl   $0x0,0x3c(%eax)
5f82c4:	74 09                	je     0x5f82cf
5f82c6:	83 78 38 00          	cmpl   $0x0,0x38(%eax)
5f82ca:	74 03                	je     0x5f82cf
5f82cc:	33 c0                	xor    %eax,%eax
5f82ce:	c3                   	ret
5f82cf:	b0 01                	mov    $0x1,%al
5f82d1:	c3                   	ret
5f82d2:	8b c0                	mov    %eax,%eax
5f82d4:	53                   	push   %ebx
5f82d5:	56                   	push   %esi
5f82d6:	57                   	push   %edi
5f82d7:	83 c4 f8             	add    $0xfffffff8,%esp
5f82da:	8b d8                	mov    %eax,%ebx
5f82dc:	83 7b 30 00          	cmpl   $0x0,0x30(%ebx)
5f82e0:	0f 8e 3a 02 00 00    	jle    0x5f8520
5f82e6:	83 7b 34 00          	cmpl   $0x0,0x34(%ebx)
5f82ea:	0f 8e 30 02 00 00    	jle    0x5f8520
5f82f0:	80 7b 40 00          	cmpb   $0x0,0x40(%ebx)
5f82f4:	0f 84 26 02 00 00    	je     0x5f8520
5f82fa:	80 7b 40 02          	cmpb   $0x2,0x40(%ebx)
5f82fe:	75 14                	jne    0x5f8314
5f8300:	b8 00 04 00 00       	mov    $0x400,%eax
5f8305:	e8 a2 a4 e0 ff       	call   0x4027ac
5f830a:	89 43 10             	mov    %eax,0x10(%ebx)
5f830d:	c7 43 14 00 01 00 00 	movl   $0x100,0x14(%ebx)
5f8314:	33 c0                	xor    %eax,%eax
5f8316:	8a 43 40             	mov    0x40(%ebx),%al
5f8319:	8b 34 85 fc 55 6a 00 	mov    0x6a55fc(,%eax,4),%esi
5f8320:	89 73 38             	mov    %esi,0x38(%ebx)
5f8323:	8b 8b 80 00 00 00    	mov    0x80(%ebx),%ecx
5f8329:	8b d6                	mov    %esi,%edx
5f832b:	8b 43 30             	mov    0x30(%ebx),%eax
5f832e:	e8 ad 87 ff ff       	call   0x5f0ae0
5f8333:	8b f8                	mov    %eax,%edi
5f8335:	89 7b 3c             	mov    %edi,0x3c(%ebx)
5f8338:	8b c7                	mov    %edi,%eax
5f833a:	f7 6b 34             	imull  0x34(%ebx)
5f833d:	99                   	cltd
5f833e:	89 04 24             	mov    %eax,(%esp)
5f8341:	89 54 24 04          	mov    %edx,0x4(%esp)
5f8345:	80 7b 42 01          	cmpb   $0x1,0x42(%ebx)
5f8349:	75 17                	jne    0x5f8362
5f834b:	8b 43 48             	mov    0x48(%ebx),%eax
5f834e:	99                   	cltd
5f834f:	3b 54 24 04          	cmp    0x4(%esp),%edx
5f8353:	75 07                	jne    0x5f835c
5f8355:	3b 04 24             	cmp    (%esp),%eax
5f8358:	76 08                	jbe    0x5f8362
5f835a:	eb 02                	jmp    0x5f835e
5f835c:	7e 04                	jle    0x5f8362
5f835e:	c6 43 42 00          	movb   $0x0,0x42(%ebx)
5f8362:	80 7b 42 00          	cmpb   $0x0,0x42(%ebx)
5f8366:	75 17                	jne    0x5f837f
5f8368:	8b 43 48             	mov    0x48(%ebx),%eax
5f836b:	99                   	cltd
5f836c:	3b 54 24 04          	cmp    0x4(%esp),%edx
5f8370:	75 07                	jne    0x5f8379
5f8372:	3b 04 24             	cmp    (%esp),%eax
5f8375:	73 08                	jae    0x5f837f
5f8377:	eb 02                	jmp    0x5f837b
5f8379:	7d 04                	jge    0x5f837f
5f837b:	c6 43 42 01          	movb   $0x1,0x42(%ebx)
5f837f:	80 7b 42 01          	cmpb   $0x1,0x42(%ebx)
5f8383:	75 1d                	jne    0x5f83a2
5f8385:	ff 74 24 04          	push   0x4(%esp)
5f8389:	ff 74 24 04          	push   0x4(%esp)
5f838d:	ba 30 85 5f 00       	mov    $0x5f8530,%edx
5f8392:	8b 43 08             	mov    0x8(%ebx),%eax
5f8395:	e8 22 90 00 00       	call   0x6013bc
5f839a:	84 c0                	test   %al,%al
5f839c:	75 04                	jne    0x5f83a2
5f839e:	c6 43 42 00          	movb   $0x0,0x42(%ebx)
5f83a2:	80 7b 42 00          	cmpb   $0x0,0x42(%ebx)
5f83a6:	75 2b                	jne    0x5f83d3
5f83a8:	8b 04 24             	mov    (%esp),%eax
5f83ab:	83 c0 20             	add    $0x20,%eax
5f83ae:	e8 d1 c7 00 00       	call   0x604b84
5f83b3:	8b f0                	mov    %eax,%esi
5f83b5:	89 73 20             	mov    %esi,0x20(%ebx)
5f83b8:	89 73 1c             	mov    %esi,0x1c(%ebx)
5f83bb:	eb 03                	jmp    0x5f83c0
5f83bd:	ff 43 1c             	incl   0x1c(%ebx)
5f83c0:	8b 43 1c             	mov    0x1c(%ebx),%eax
5f83c3:	25 1f 00 00 80       	and    $0x8000001f,%eax
5f83c8:	79 05                	jns    0x5f83cf
5f83ca:	48                   	dec    %eax
5f83cb:	83 c8 e0             	or     $0xffffffe0,%eax
5f83ce:	40                   	inc    %eax
5f83cf:	85 c0                	test   %eax,%eax
5f83d1:	75 ea                	jne    0x5f83bd
5f83d3:	80 7b 42 02          	cmpb   $0x2,0x42(%ebx)
5f83d7:	0f 85 3f 01 00 00    	jne    0x5f851c
5f83dd:	80 7b 44 00          	cmpb   $0x0,0x44(%ebx)
5f83e1:	75 0f                	jne    0x5f83f2
5f83e3:	b2 01                	mov    $0x1,%dl
5f83e5:	a1 ec 6a 42 00       	mov    0x426aec,%eax
5f83ea:	e8 e1 4d e3 ff       	call   0x42d1d0
5f83ef:	89 43 24             	mov    %eax,0x24(%ebx)
5f83f2:	ba 01 00 00 00       	mov    $0x1,%edx
5f83f7:	8b 43 24             	mov    0x24(%ebx),%eax
5f83fa:	8b 08                	mov    (%eax),%ecx
5f83fc:	ff 51 40             	call   *0x40(%ecx)
5f83ff:	ba 01 00 00 00       	mov    $0x1,%edx
5f8404:	8b 43 24             	mov    0x24(%ebx),%eax
5f8407:	8b 08                	mov    (%eax),%ecx
5f8409:	ff 51 34             	call   *0x34(%ecx)
5f840c:	33 d2                	xor    %edx,%edx
5f840e:	8b 43 24             	mov    0x24(%ebx),%eax
5f8411:	e8 92 63 e3 ff       	call   0x42e7a8
5f8416:	33 c0                	xor    %eax,%eax
5f8418:	8a 43 40             	mov    0x40(%ebx),%al
5f841b:	83 f8 08             	cmp    $0x8,%eax
5f841e:	0f 87 db 00 00 00    	ja     0x5f84ff
5f8424:	ff 24 85 2b 84 5f 00 	jmp    *0x5f842b(,%eax,4)
5f842b:	ff 84 5f 00 4f 84 5f 	incl   0x5f844f00(%edi,%ebx,2)
5f8432:	00 5e 84             	add    %bl,-0x7c(%esi)
5f8435:	5f                   	pop    %edi
5f8436:	00 6d 84             	add    %ch,-0x7c(%ebp)
5f8439:	5f                   	pop    %edi
5f843a:	00 7c 84 5f          	add    %bh,0x5f(%esp,%eax,4)
5f843e:	00 dd                	add    %bl,%ch
5f8440:	84 5f 00             	test   %bl,0x0(%edi)
5f8443:	ad                   	lods   %ds:(%esi),%eax
5f8444:	84 5f 00             	test   %bl,0x0(%edi)