57df62:	8b d0                	mov    %eax,%edx
57df64:	83 c4 04             	add    $0x4,%esp
57df67:	33 c0                	xor    %eax,%eax
57df69:	83 fa 01             	cmp    $0x1,%edx
57df6c:	0f 44 d0             	cmove  %eax,%edx
57df6f:	89 54 24 14          	mov    %edx,0x14(%esp)
57df73:	85 db                	test   %ebx,%ebx
57df75:	0f 8e 55 01 00 00    	jle    0x57e0d0
57df7b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
57df80:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
57df84:	0f 8e 46 01 00 00    	jle    0x57e0d0
57df8a:	8b 46 18             	mov    0x18(%esi),%eax
57df8d:	8b 7e 1c             	mov    0x1c(%esi),%edi
57df90:	3b c7                	cmp    %edi,%eax
57df92:	0f 85 87 00 00 00    	jne    0x57e01f
57df98:	8d 86 40 01 00 00    	lea    0x140(%esi),%eax
57df9e:	68 00 10 00 00       	push   $0x1000
57dfa3:	50                   	push   %eax
57dfa4:	ff 74 24 18          	push   0x18(%esp)
57dfa8:	89 46 18             	mov    %eax,0x18(%esi)
57dfab:	89 46 1c             	mov    %eax,0x1c(%esi)
57dfae:	e8 8d b4 f7 ff       	call   0x4f9440
57dfb3:	8b f8                	mov    %eax,%edi
57dfb5:	83 c4 0c             	add    $0xc,%esp
57dfb8:	85 ff                	test   %edi,%edi
57dfba:	7e 69                	jle    0x57e025
57dfbc:	01 7e 1c             	add    %edi,0x1c(%esi)
57dfbf:	8b 54 24 14          	mov    0x14(%esp),%edx
57dfc3:	81 fb 00 01 00 00    	cmp    $0x100,%ebx
57dfc9:	0f 86 90 00 00 00    	jbe    0x57e05f
57dfcf:	8b cb                	mov    %ebx,%ecx
57dfd1:	8b c7                	mov    %edi,%eax
57dfd3:	2b ca                	sub    %edx,%ecx
57dfd5:	3b f9                	cmp    %ecx,%edi
57dfd7:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
57dfdb:	0f 4f c1             	cmovg  %ecx,%eax
57dfde:	50                   	push   %eax
57dfdf:	ff 76 18             	push   0x18(%esi)
57dfe2:	8d 44 24 20          	lea    0x20(%esp),%eax
57dfe6:	50                   	push   %eax
57dfe7:	ff 74 24 34          	push   0x34(%esp)
57dfeb:	ff 76 14             	push   0x14(%esi)
57dfee:	e8 7d e9 f5 ff       	call   0x4dc970
57dff3:	83 c4 14             	add    $0x14,%esp
57dff6:	85 c0                	test   %eax,%eax
57dff8:	0f 84 f8 00 00 00    	je     0x57e0f6
57dffe:	8b 44 24 18          	mov    0x18(%esp),%eax
57e002:	03 e8                	add    %eax,%ebp
57e004:	01 44 24 28          	add    %eax,0x28(%esp)
57e008:	2b d8                	sub    %eax,%ebx
57e00a:	8b 44 24 1c          	mov    0x1c(%esp),%eax
57e00e:	2b f8                	sub    %eax,%edi
57e010:	85 ff                	test   %edi,%edi
57e012:	7f 48                	jg     0x57e05c
57e014:	8b 46 1c             	mov    0x1c(%esi),%eax
57e017:	89 46 18             	mov    %eax,0x18(%esi)
57e01a:	e9 9f 00 00 00       	jmp    0x57e0be
57e01f:	2b f8                	sub    %eax,%edi
57e021:	85 ff                	test   %edi,%edi
57e023:	7f 9e                	jg     0x57dfc3
57e025:	6a 08                	push   $0x8
57e027:	ff 74 24 14          	push   0x14(%esp)
57e02b:	e8 70 b4 f7 ff       	call   0x4f94a0
57e030:	83 c4 08             	add    $0x8,%esp
57e033:	85 c0                	test   %eax,%eax
57e035:	0f 85 90 00 00 00    	jne    0x57e0cb
57e03b:	8d 46 20             	lea    0x20(%esi),%eax
57e03e:	89 7e 08             	mov    %edi,0x8(%esi)
57e041:	56                   	push   %esi
57e042:	50                   	push   %eax
57e043:	ff 76 14             	push   0x14(%esi)
57e046:	e8 85 e5 f5 ff       	call   0x4dc5d0
57e04b:	8b 3e                	mov    (%esi),%edi
57e04d:	83 c4 0c             	add    $0xc,%esp
57e050:	89 46 10             	mov    %eax,0x10(%esi)
57e053:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
57e05a:	eb 3d                	jmp    0x57e099
57e05c:	01 46 18             	add    %eax,0x18(%esi)
57e05f:	81 ff 00 01 00 00    	cmp    $0x100,%edi
57e065:	b8 00 01 00 00       	mov    $0x100,%eax
57e06a:	0f 47 f8             	cmova  %eax,%edi
57e06d:	8d 46 20             	lea    0x20(%esi),%eax
57e070:	57                   	push   %edi
57e071:	ff 76 18             	push   0x18(%esi)
57e074:	56                   	push   %esi
57e075:	50                   	push   %eax
57e076:	ff 76 14             	push   0x14(%esi)
57e079:	e8 f2 e8 f5 ff       	call   0x4dc970
57e07e:	83 c4 14             	add    $0x14,%esp
57e081:	85 c0                	test   %eax,%eax
57e083:	0f 84 86 00 00 00    	je     0x57e10f
57e089:	01 7e 18             	add    %edi,0x18(%esi)
57e08c:	8b 3e                	mov    (%esi),%edi
57e08e:	c7 46 08 01 00 00 00 	movl   $0x1,0x8(%esi)
57e095:	85 ff                	test   %edi,%edi
57e097:	74 25                	je     0x57e0be
57e099:	3b fb                	cmp    %ebx,%edi
57e09b:	0f 4f fb             	cmovg  %ebx,%edi
57e09e:	85 ff                	test   %edi,%edi
57e0a0:	7e 2e                	jle    0x57e0d0
57e0a2:	57                   	push   %edi
57e0a3:	8d 46 20             	lea    0x20(%esi),%eax
57e0a6:	50                   	push   %eax
57e0a7:	ff 74 24 30          	push   0x30(%esp)
57e0ab:	e8 20 4d 05 00       	call   0x5d2dd0
57e0b0:	83 c4 0c             	add    $0xc,%esp
57e0b3:	89 7e 04             	mov    %edi,0x4(%esi)
57e0b6:	03 ef                	add    %edi,%ebp
57e0b8:	2b df                	sub    %edi,%ebx
57e0ba:	01 7c 24 28          	add    %edi,0x28(%esp)
57e0be:	85 db                	test   %ebx,%ebx
57e0c0:	7e 0e                	jle    0x57e0d0
57e0c2:	8b 54 24 14          	mov    0x14(%esp),%edx
57e0c6:	e9 b5 fe ff ff       	jmp    0x57df80
57e0cb:	85 ed                	test   %ebp,%ebp
57e0cd:	0f 44 ef             	cmove  %edi,%ebp
57e0d0:	8b 7c 24 24          	mov    0x24(%esp),%edi
57e0d4:	6a 0f                	push   $0xf
57e0d6:	57                   	push   %edi
57e0d7:	e8 24 aa f7 ff       	call   0x4f8b00
57e0dc:	57                   	push   %edi
57e0dd:	e8 2e aa f7 ff       	call   0x4f8b10
57e0e2:	83 c4 0c             	add    $0xc,%esp
57e0e5:	85 ed                	test   %ebp,%ebp
57e0e7:	75 03                	jne    0x57e0ec
57e0e9:	8b 6e 08             	mov    0x8(%esi),%ebp
57e0ec:	5f                   	pop    %edi
57e0ed:	5e                   	pop    %esi
57e0ee:	8b c5                	mov    %ebp,%eax
57e0f0:	5d                   	pop    %ebp
57e0f1:	5b                   	pop    %ebx
57e0f2:	83 c4 10             	add    $0x10,%esp
57e0f5:	c3                   	ret
57e0f6:	8b 7c 24 24          	mov    0x24(%esp),%edi
57e0fa:	6a 0f                	push   $0xf
57e0fc:	57                   	push   %edi
57e0fd:	e8 fe a9 f7 ff       	call   0x4f8b00
57e102:	83 c4 08             	add    $0x8,%esp
57e105:	5f                   	pop    %edi
57e106:	5e                   	pop    %esi
57e107:	5d                   	pop    %ebp
57e108:	33 c0                	xor    %eax,%eax
57e10a:	5b                   	pop    %ebx
57e10b:	83 c4 10             	add    $0x10,%esp
57e10e:	c3                   	ret
57e10f:	8b 7c 24 24          	mov    0x24(%esp),%edi
57e113:	6a 0f                	push   $0xf
57e115:	57                   	push   %edi
57e116:	e8 e5 a9 f7 ff       	call   0x4f8b00
57e11b:	83 c4 08             	add    $0x8,%esp
57e11e:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
57e125:	33 c0                	xor    %eax,%eax
57e127:	5f                   	pop    %edi
57e128:	5e                   	pop    %esi
57e129:	5d                   	pop    %ebp
57e12a:	5b                   	pop    %ebx
57e12b:	83 c4 10             	add    $0x10,%esp
57e12e:	c3                   	ret
57e12f:	cc                   	int3
57e130:	b8 04 00 00 00       	mov    $0x4,%eax
57e135:	e8 76 36 05 00       	call   0x5d17b0
57e13a:	53                   	push   %ebx
57e13b:	8b 5c 24 0c          	mov    0xc(%esp),%ebx
57e13f:	55                   	push   %ebp
57e140:	56                   	push   %esi
57e141:	57                   	push   %edi
57e142:	53                   	push   %ebx
57e143:	bf 01 00 00 00       	mov    $0x1,%edi
57e148:	e8 53 26 f7 ff       	call   0x4f07a0
57e14d:	53                   	push   %ebx
57e14e:	8b f0                	mov    %eax,%esi
57e150:	e8 cb b0 f7 ff       	call   0x4f9220
57e155:	83 c4 08             	add    $0x8,%esp
57e158:	89 44 24 10          	mov    %eax,0x10(%esp)
57e15c:	85 f6                	test   %esi,%esi
57e15e:	0f 84 8a 01 00 00    	je     0x57e2ee
57e164:	8b 6c 24 1c          	mov    0x1c(%esp),%ebp
57e168:	8d 4d ff             	lea    -0x1(%ebp),%ecx
57e16b:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
57e171:	77 5f                	ja     0x57e1d2
57e173:	0f b6 89 1c e3 57 00 	movzbl 0x57e31c(%ecx),%ecx
57e17a:	ff 24 8d f8 e2 57 00 	jmp    *0x57e2f8(,%ecx,4)
57e181:	ff 76 14             	push   0x14(%esi)
57e184:	89 7e 10             	mov    %edi,0x10(%esi)
57e187:	c7 46 0c 00 00 00 00 	movl   $0x0,0xc(%esi)
57e18e:	e8 bd 90 f6 ff       	call   0x4e7250
57e193:	50                   	push   %eax
57e194:	6a 00                	push   $0x0
57e196:	6a 00                	push   $0x0
57e198:	6a 00                	push   $0x0
57e19a:	6a 00                	push   $0x0
57e19c:	ff 76 14             	push   0x14(%esi)
57e19f:	e8 4c e4 f5 ff       	call   0x4dc5f0
57e1a4:	83 c4 1c             	add    $0x1c,%esp
57e1a7:	85 c0                	test   %eax,%eax
57e1a9:	0f 84 3f 01 00 00    	je     0x57e2ee
57e1af:	ff 74 24 24          	push   0x24(%esp)
57e1b3:	ff 74 24 24          	push   0x24(%esp)
57e1b7:	55                   	push   %ebp
57e1b8:	ff 74 24 1c          	push   0x1c(%esp)
57e1bc:	e8 6f a9 f7 ff       	call   0x4f8b30
57e1c1:	83 c4 10             	add    $0x10,%esp
57e1c4:	8b f8                	mov    %eax,%edi
57e1c6:	5f                   	pop    %edi
57e1c7:	5e                   	pop    %esi
57e1c8:	5d                   	pop    %ebp
57e1c9:	5b                   	pop    %ebx
57e1ca:	59                   	pop    %ecx
57e1cb:	c3                   	ret
57e1cc:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
57e1d0:	7e 14                	jle    0x57e1e6
57e1d2:	ff 74 24 24          	push   0x24(%esp)
57e1d6:	ff 74 24 24          	push   0x24(%esp)
57e1da:	55                   	push   %ebp
57e1db:	50                   	push   %eax
57e1dc:	e8 4f a9 f7 ff       	call   0x4f8b30
57e1e1:	8b f8                	mov    %eax,%edi
57e1e3:	83 c4 10             	add    $0x10,%esp
57e1e6:	8b c7                	mov    %edi,%eax
57e1e8:	5f                   	pop    %edi
57e1e9:	5e                   	pop    %esi
57e1ea:	5d                   	pop    %ebp
57e1eb:	5b                   	pop    %ebx
57e1ec:	59                   	pop    %ecx
57e1ed:	c3                   	ret
57e1ee:	8b 3e                	mov    (%esi),%edi
57e1f0:	2b 7e 04             	sub    0x4(%esi),%edi
57e1f3:	85 ff                	test   %edi,%edi
57e1f5:	7f ef                	jg     0x57e1e6
57e1f7:	eb d9                	jmp    0x57e1d2
57e1f9:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
57e200:	8b 06                	mov    (%esi),%eax
57e202:	3b 46 04             	cmp    0x4(%esi),%eax
57e205:	74 1c                	je     0x57e223
57e207:	6a 00                	push   $0x0
57e209:	6a 00                	push   $0x0
57e20b:	53                   	push   %ebx
57e20c:	e8 1f fb ff ff       	call   0x57dd30
57e211:	83 c4 0c             	add    $0xc,%esp
57e214:	85 c0                	test   %eax,%eax
57e216:	0f 88 d4 00 00 00    	js     0x57e2f0
57e21c:	8b 06                	mov    (%esi),%eax
57e21e:	3b 46 04             	cmp    0x4(%esi),%eax
57e221:	75 e4                	jne    0x57e207
57e223:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
57e227:	75 86                	jne    0x57e1af
57e229:	56                   	push   %esi
57e22a:	8d 46 20             	lea    0x20(%esi),%eax
57e22d:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
57e234:	50                   	push   %eax
57e235:	ff 76 14             	push   0x14(%esi)
57e238:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
57e23f:	e8 8c e3 f5 ff       	call   0x4dc5d0
57e244:	8b f8                	mov    %eax,%edi
57e246:	83 c4 0c             	add    $0xc,%esp
57e249:	89 7e 10             	mov    %edi,0x10(%esi)
57e24c:	85 ff                	test   %edi,%edi
57e24e:	7f b0                	jg     0x57e200
57e250:	5f                   	pop    %edi
57e251:	5e                   	pop    %esi
57e252:	5d                   	pop    %ebp
57e253:	5b                   	pop    %ebx
57e254:	59                   	pop    %ecx
57e255:	c3                   	ret
57e256:	8b 7e 10             	mov    0x10(%esi),%edi
57e259:	8b c7                	mov    %edi,%eax
57e25b:	5f                   	pop    %edi
57e25c:	5e                   	pop    %esi
57e25d:	5d                   	pop    %ebp
57e25e:	5b                   	pop    %ebx
57e25f:	59                   	pop    %ecx
57e260:	c3                   	ret
57e261:	6a 0f                	push   $0xf
57e263:	53                   	push   %ebx
57e264:	e8 97 a8 f7 ff       	call   0x4f8b00
57e269:	ff 74 24 2c          	push   0x2c(%esp)
57e26d:	ff 74 24 2c          	push   0x2c(%esp)
57e271:	55                   	push   %ebp
57e272:	ff 74 24 24          	push   0x24(%esp)
57e276:	e8 b5 a8 f7 ff       	call   0x4f8b30
57e27b:	53                   	push   %ebx
57e27c:	8b f8                	mov    %eax,%edi
57e27e:	e8 8d a8 f7 ff       	call   0x4f8b10
57e283:	83 c4 1c             	add    $0x1c,%esp
57e286:	8b c7                	mov    %edi,%eax
57e288:	5f                   	pop    %edi
57e289:	5e                   	pop    %esi
57e28a:	5d                   	pop    %ebp
57e28b:	5b                   	pop    %ebx
57e28c:	59                   	pop    %ecx
57e28d:	c3                   	ret
57e28e:	8b 44 24 24          	mov    0x24(%esp),%eax
57e292:	8b 4e 14             	mov    0x14(%esi),%ecx
57e295:	6a 01                	push   $0x1
57e297:	53                   	push   %ebx
57e298:	89 08                	mov    %ecx,(%eax)
57e29a:	e8 f1 b1 f7 ff       	call   0x4f9490
57e29f:	83 c4 08             	add    $0x8,%esp
57e2a2:	8b c7                	mov    %edi,%eax
57e2a4:	5f                   	pop    %edi
57e2a5:	5e                   	pop    %esi
57e2a6:	5d                   	pop    %ebp
57e2a7:	5b                   	pop    %ebx
57e2a8:	59                   	pop    %ecx
57e2a9:	c3                   	ret
57e2aa:	8b 5c 24 24          	mov    0x24(%esp),%ebx
57e2ae:	53                   	push   %ebx
57e2af:	e8 ec 24 f7 ff       	call   0x4f07a0
57e2b4:	83 c4 04             	add    $0x4,%esp
57e2b7:	8b f8                	mov    %eax,%edi
57e2b9:	e8 b2 e1 f5 ff       	call   0x4dc470
57e2be:	89 47 14             	mov    %eax,0x14(%edi)
57e2c1:	85 c0                	test   %eax,%eax
57e2c3:	74 29                	je     0x57e2ee
57e2c5:	ff 76 14             	push   0x14(%esi)
57e2c8:	50                   	push   %eax
57e2c9:	e8 72 df f5 ff       	call   0x4dc240
57e2ce:	8b f8                	mov    %eax,%edi
57e2d0:	83 c4 08             	add    $0x8,%esp
57e2d3:	85 ff                	test   %edi,%edi
57e2d5:	0f 84 0b ff ff ff    	je     0x57e1e6
57e2db:	6a 01                	push   $0x1
57e2dd:	53                   	push   %ebx
57e2de:	e8 ad b1 f7 ff       	call   0x4f9490
57e2e3:	83 c4 08             	add    $0x8,%esp
57e2e6:	8b c7                	mov    %edi,%eax
57e2e8:	5f                   	pop    %edi
57e2e9:	5e                   	pop    %esi
57e2ea:	5d                   	pop    %ebp
57e2eb:	5b                   	pop    %ebx
57e2ec:	59                   	pop    %ecx
57e2ed:	c3                   	ret
57e2ee:	33 c0                	xor    %eax,%eax
57e2f0:	5f                   	pop    %edi
57e2f1:	5e                   	pop    %esi
57e2f2:	5d                   	pop    %ebp
57e2f3:	5b                   	pop    %ebx
57e2f4:	59                   	pop    %ecx
57e2f5:	c3                   	ret
57e2f6:	66 90                	xchg   %ax,%ax
57e2f8:	81 e1 57 00 cc e1    	and    $0xe1cc0057,%ecx
57e2fe:	57                   	push   %edi
57e2ff:	00 ee                	add    %ch,%dh
57e301:	e1 57                	loope  0x57e35a
57e303:	00 00                	add    %al,(%eax)
57e305:	e2 57                	loop   0x57e35e
57e307:	00 aa e2 57 00 61    	add    %ch,0x610057e2(%edx)
57e30d:	e2 57                	loop   0x57e366
57e30f:	00 56 e2             	add    %dl,-0x1e(%esi)
57e312:	57                   	push   %edi