57ac0c:	e8 f7 fc ff ff       	call   0x57a908
57ac11:	8b 53 30             	mov    0x30(%ebx),%edx
57ac14:	8b c3                	mov    %ebx,%eax
57ac16:	e8 31 fe ff ff       	call   0x57aa4c
57ac1b:	8b c3                	mov    %ebx,%eax
57ac1d:	e8 c6 fc ff ff       	call   0x57a8e8
57ac22:	89 04 24             	mov    %eax,(%esp)
57ac25:	83 3c 24 ff          	cmpl   $0xffffffff,(%esp)
57ac29:	0f 84 99 00 00 00    	je     0x57acc8
57ac2f:	ff 43 40             	incl   0x40(%ebx)
57ac32:	8b 3c 24             	mov    (%esp),%edi
57ac35:	c1 e7 0c             	shl    $0xc,%edi
57ac38:	03 fd                	add    %ebp,%edi
57ac3a:	8b 4c 24 08          	mov    0x8(%esp),%ecx
57ac3e:	8b 34 24             	mov    (%esp),%esi
57ac41:	d3 e6                	shl    %cl,%esi
57ac43:	33 f5                	xor    %ebp,%esi
57ac45:	8b 44 b3 50          	mov    0x50(%ebx,%esi,4),%eax
57ac49:	3b f8                	cmp    %eax,%edi
57ac4b:	75 0a                	jne    0x57ac57
57ac4d:	0f b7 ac 73 7c 4e 00 	movzwl 0x4e7c(%ebx,%esi,2),%ebp
57ac54:	00
57ac55:	eb c4                	jmp    0x57ac1b
57ac57:	85 c0                	test   %eax,%eax
57ac59:	7c 31                	jl     0x57ac8c
57ac5b:	85 f6                	test   %esi,%esi
57ac5d:	75 07                	jne    0x57ac66
57ac5f:	b8 01 00 00 00       	mov    $0x1,%eax
57ac64:	eb 06                	jmp    0x57ac6c
57ac66:	8b 44 24 04          	mov    0x4(%esp),%eax
57ac6a:	2b c6                	sub    %esi,%eax
57ac6c:	2b f0                	sub    %eax,%esi
57ac6e:	85 f6                	test   %esi,%esi
57ac70:	7d 04                	jge    0x57ac76
57ac72:	03 74 24 04          	add    0x4(%esp),%esi
57ac76:	8b 54 b3 50          	mov    0x50(%ebx,%esi,4),%edx
57ac7a:	3b fa                	cmp    %edx,%edi
57ac7c:	75 0a                	jne    0x57ac88
57ac7e:	0f b7 ac 73 7c 4e 00 	movzwl 0x4e7c(%ebx,%esi,2),%ebp
57ac85:	00
57ac86:	eb 93                	jmp    0x57ac1b
57ac88:	85 d2                	test   %edx,%edx
57ac8a:	7f e0                	jg     0x57ac6c
57ac8c:	8b c3                	mov    %ebx,%eax
57ac8e:	8b d5                	mov    %ebp,%edx
57ac90:	e8 b7 fd ff ff       	call   0x57aa4c
57ac95:	ff 43 44             	incl   0x44(%ebx)
57ac98:	8b 2c 24             	mov    (%esp),%ebp
57ac9b:	81 7b 38 00 10 00 00 	cmpl   $0x1000,0x38(%ebx)
57aca2:	7d 18                	jge    0x57acbc
57aca4:	66 8b 43 38          	mov    0x38(%ebx),%ax
57aca8:	66 89 84 73 7c 4e 00 	mov    %ax,0x4e7c(%ebx,%esi,2)
57acaf:	00
57acb0:	ff 43 38             	incl   0x38(%ebx)
57acb3:	89 7c b3 50          	mov    %edi,0x50(%ebx,%esi,4)
57acb7:	e9 5f ff ff ff       	jmp    0x57ac1b
57acbc:	8b c3                	mov    %ebx,%eax
57acbe:	e8 81 fe ff ff       	call   0x57ab44
57acc3:	e9 53 ff ff ff       	jmp    0x57ac1b
57acc8:	8b c3                	mov    %ebx,%eax
57acca:	8b d5                	mov    %ebp,%edx
57accc:	e8 7b fd ff ff       	call   0x57aa4c
57acd1:	ff 43 44             	incl   0x44(%ebx)
57acd4:	8b 53 34             	mov    0x34(%ebx),%edx
57acd7:	8b c3                	mov    %ebx,%eax
57acd9:	e8 6e fd ff ff       	call   0x57aa4c
57acde:	83 c4 0c             	add    $0xc,%esp
57ace1:	5d                   	pop    %ebp
57ace2:	5f                   	pop    %edi
57ace3:	5e                   	pop    %esi
57ace4:	5b                   	pop    %ebx
57ace5:	c3                   	ret
57ace6:	8b c0                	mov    %eax,%eax
57ace8:	55                   	push   %ebp
57ace9:	8b ec                	mov    %esp,%ebp
57aceb:	83 c4 f8             	add    $0xfffffff8,%esp
57acee:	53                   	push   %ebx
57acef:	56                   	push   %esi
57acf0:	57                   	push   %edi
57acf1:	8b f9                	mov    %ecx,%edi
57acf3:	8b f2                	mov    %edx,%esi
57acf5:	89 45 fc             	mov    %eax,-0x4(%ebp)
57acf8:	b8 a4 76 00 00       	mov    $0x76a4,%eax
57acfd:	e8 aa 7a e8 ff       	call   0x4027ac
57ad02:	8b d8                	mov    %eax,%ebx
57ad04:	8a 45 10             	mov    0x10(%ebp),%al
57ad07:	88 43 1c             	mov    %al,0x1c(%ebx)
57ad0a:	89 3b                	mov    %edi,(%ebx)
57ad0c:	89 73 04             	mov    %esi,0x4(%ebx)
57ad0f:	8b 45 0c             	mov    0xc(%ebp),%eax
57ad12:	89 43 20             	mov    %eax,0x20(%ebx)
57ad15:	33 d2                	xor    %edx,%edx
57ad17:	89 93 94 75 00 00    	mov    %edx,0x7594(%ebx)
57ad1d:	33 d2                	xor    %edx,%edx
57ad1f:	89 93 98 75 00 00    	mov    %edx,0x7598(%ebx)
57ad25:	0f af fe             	imul   %esi,%edi
57ad28:	89 7b 14             	mov    %edi,0x14(%ebx)
57ad2b:	33 d2                	xor    %edx,%edx
57ad2d:	89 53 18             	mov    %edx,0x18(%ebx)
57ad30:	33 d2                	xor    %edx,%edx
57ad32:	89 53 38             	mov    %edx,0x38(%ebx)
57ad35:	83 7d 08 01          	cmpl   $0x1,0x8(%ebp)
57ad39:	7f 07                	jg     0x57ad42
57ad3b:	be 02 00 00 00       	mov    $0x2,%esi
57ad40:	eb 03                	jmp    0x57ad45
57ad42:	8b 75 08             	mov    0x8(%ebp),%esi
57ad45:	33 d2                	xor    %edx,%edx
57ad47:	89 53 08             	mov    %edx,0x8(%ebx)
57ad4a:	33 d2                	xor    %edx,%edx
57ad4c:	89 53 0c             	mov    %edx,0xc(%ebx)
57ad4f:	89 43 10             	mov    %eax,0x10(%ebx)
57ad52:	8b c6                	mov    %esi,%eax
57ad54:	88 45 fb             	mov    %al,-0x5(%ebp)
57ad57:	8d 55 fb             	lea    -0x5(%ebp),%edx
57ad5a:	b9 01 00 00 00       	mov    $0x1,%ecx
57ad5f:	8b 45 fc             	mov    -0x4(%ebp),%eax
57ad62:	8b 38                	mov    (%eax),%edi
57ad64:	ff 57 0c             	call   *0xc(%edi)
57ad67:	46                   	inc    %esi
57ad68:	89 73 24             	mov    %esi,0x24(%ebx)
57ad6b:	8b 45 fc             	mov    -0x4(%ebp),%eax
57ad6e:	89 83 9c 76 00 00    	mov    %eax,0x769c(%ebx)
57ad74:	8b c3                	mov    %ebx,%eax
57ad76:	e8 f5 fd ff ff       	call   0x57ab70
57ad7b:	c6 45 fb 00          	movb   $0x0,-0x5(%ebp)
57ad7f:	8d 55 fb             	lea    -0x5(%ebp),%edx
57ad82:	b9 01 00 00 00       	mov    $0x1,%ecx
57ad87:	8b 45 fc             	mov    -0x4(%ebp),%eax
57ad8a:	8b 30                	mov    (%eax),%esi
57ad8c:	ff 56 0c             	call   *0xc(%esi)
57ad8f:	ba a4 76 00 00       	mov    $0x76a4,%edx
57ad94:	8b c3                	mov    %ebx,%eax
57ad96:	e8 31 7a e8 ff       	call   0x4027cc
57ad9b:	5f                   	pop    %edi
57ad9c:	5e                   	pop    %esi
57ad9d:	5b                   	pop    %ebx
57ad9e:	59                   	pop    %ecx
57ad9f:	59                   	pop    %ecx
57ada0:	5d                   	pop    %ebp
57ada1:	c2 0c 00             	ret    $0xc
57ada4:	55                   	push   %ebp
57ada5:	8b ec                	mov    %esp,%ebp
57ada7:	33 c0                	xor    %eax,%eax
57ada9:	55                   	push   %ebp
57adaa:	68 c9 ad 57 00       	push   $0x57adc9
57adaf:	64 ff 30             	push   %fs:(%eax)
57adb2:	64 89 20             	mov    %esp,%fs:(%eax)
57adb5:	ff 05 10 28 6b 00    	incl   0x6b2810
57adbb:	33 c0                	xor    %eax,%eax
57adbd:	5a                   	pop    %edx
57adbe:	59                   	pop    %ecx
57adbf:	59                   	pop    %ecx
57adc0:	64 89 10             	mov    %edx,%fs:(%eax)
57adc3:	68 d0 ad 57 00       	push   $0x57add0
57adc8:	c3                   	ret
57adc9:	e9 3e 94 e8 ff       	jmp    0x40420c
57adce:	eb f8                	jmp    0x57adc8
57add0:	5d                   	pop    %ebp
57add1:	c3                   	ret
57add2:	8b c0                	mov    %eax,%eax
57add4:	83 2d 10 28 6b 00 01 	subl   $0x1,0x6b2810
57addb:	c3                   	ret
57addc:	55                   	push   %ebp
57addd:	8b ec                	mov    %esp,%ebp
57addf:	51                   	push   %ecx
57ade0:	8b d0                	mov    %eax,%edx
57ade2:	8b 42 0c             	mov    0xc(%edx),%eax
57ade5:	c1 e8 03             	shr    $0x3,%eax
57ade8:	8b 4a 04             	mov    0x4(%edx),%ecx
57adeb:	8d 04 01             	lea    (%ecx,%eax,1),%eax
57adee:	8b 00                	mov    (%eax),%eax
57adf0:	89 45 fc             	mov    %eax,-0x4(%ebp)
57adf3:	8b 45 fc             	mov    -0x4(%ebp),%eax
57adf6:	0f c8                	bswap  %eax
57adf8:	89 45 fc             	mov    %eax,-0x4(%ebp)
57adfb:	8b 4a 0c             	mov    0xc(%edx),%ecx
57adfe:	83 e1 07             	and    $0x7,%ecx
57ae01:	8b 45 fc             	mov    -0x4(%ebp),%eax
57ae04:	d3 e0                	shl    %cl,%eax
57ae06:	b9 20 00 00 00       	mov    $0x20,%ecx
57ae0b:	2b 4a 10             	sub    0x10(%edx),%ecx
57ae0e:	d3 e8                	shr    %cl,%eax
57ae10:	89 45 fc             	mov    %eax,-0x4(%ebp)
57ae13:	8b 42 10             	mov    0x10(%edx),%eax
57ae16:	01 42 0c             	add    %eax,0xc(%edx)
57ae19:	8b 45 fc             	mov    -0x4(%ebp),%eax
57ae1c:	59                   	pop    %ecx
57ae1d:	5d                   	pop    %ebp
57ae1e:	c3                   	ret
57ae1f:	90                   	nop
57ae20:	53                   	push   %ebx
57ae21:	56                   	push   %esi
57ae22:	57                   	push   %edi
57ae23:	8b f8                	mov    %eax,%edi
57ae25:	8b 77 1c             	mov    0x1c(%edi),%esi
57ae28:	4e                   	dec    %esi
57ae29:	81 ee 00 01 00 00    	sub    $0x100,%esi
57ae2f:	7c 1e                	jl     0x57ae4f
57ae31:	46                   	inc    %esi
57ae32:	bb 00 01 00 00       	mov    $0x100,%ebx
57ae37:	8b c3                	mov    %ebx,%eax
57ae39:	03 c0                	add    %eax,%eax
57ae3b:	83 7c c7 24 08       	cmpl   $0x8,0x24(%edi,%eax,8)
57ae40:	7e 09                	jle    0x57ae4b
57ae42:	8b 44 c7 20          	mov    0x20(%edi,%eax,8),%eax
57ae46:	e8 81 79 e8 ff       	call   0x4027cc
57ae4b:	43                   	inc    %ebx
57ae4c:	4e                   	dec    %esi
57ae4d:	75 e8                	jne    0x57ae37
57ae4f:	33 c0                	xor    %eax,%eax
57ae51:	89 47 1c             	mov    %eax,0x1c(%edi)
57ae54:	5f                   	pop    %edi
57ae55:	5e                   	pop    %esi
57ae56:	5b                   	pop    %ebx
57ae57:	c3                   	ret
57ae58:	53                   	push   %ebx
57ae59:	8b d8                	mov    %eax,%ebx
57ae5b:	8b c3                	mov    %ebx,%eax
57ae5d:	e8 be ff ff ff       	call   0x57ae20
57ae62:	c7 43 1c 02 01 00 00 	movl   $0x102,0x1c(%ebx)
57ae69:	c7 43 10 09 00 00 00 	movl   $0x9,0x10(%ebx)
57ae70:	5b                   	pop    %ebx
57ae71:	c3                   	ret
57ae72:	8b c0                	mov    %eax,%eax
57ae74:	53                   	push   %ebx
57ae75:	56                   	push   %esi
57ae76:	8b d8                	mov    %eax,%ebx
57ae78:	80 bb 30 00 01 00 00 	cmpb   $0x0,0x10030(%ebx)
57ae7f:	75 46                	jne    0x57aec7
57ae81:	3b 53 1c             	cmp    0x1c(%ebx),%edx
57ae84:	7c 0a                	jl     0x57ae90
57ae86:	c6 83 30 00 01 00 01 	movb   $0x1,0x10030(%ebx)
57ae8d:	5e                   	pop    %esi
57ae8e:	5b                   	pop    %ebx
57ae8f:	c3                   	ret
57ae90:	81 fa 00 01 00 00    	cmp    $0x100,%edx
57ae96:	7d 10                	jge    0x57aea8
57ae98:	8b 03                	mov    (%ebx),%eax
57ae9a:	8b 4b 14             	mov    0x14(%ebx),%ecx
57ae9d:	03 c1                	add    %ecx,%eax
57ae9f:	50                   	push   %eax
57aea0:	58                   	pop    %eax
57aea1:	88 10                	mov    %dl,(%eax)
57aea3:	ff 43 14             	incl   0x14(%ebx)
57aea6:	eb 1f                	jmp    0x57aec7
57aea8:	8b c2                	mov    %edx,%eax
57aeaa:	03 c0                	add    %eax,%eax
57aeac:	8d 74 c3 20          	lea    0x20(%ebx,%eax,8),%esi
57aeb0:	8b 03                	mov    (%ebx),%eax
57aeb2:	8b 53 14             	mov    0x14(%ebx),%edx
57aeb5:	03 c2                	add    %edx,%eax
57aeb7:	8b 4e 04             	mov    0x4(%esi),%ecx
57aeba:	8b 16                	mov    (%esi),%edx
57aebc:	e8 ff cf e8 ff       	call   0x407ec0
57aec1:	8b 46 04             	mov    0x4(%esi),%eax
57aec4:	01 43 14             	add    %eax,0x14(%ebx)
57aec7:	5e                   	pop    %esi
57aec8:	5b                   	pop    %ebx
57aec9:	c3                   	ret
57aeca:	8b c0                	mov    %eax,%eax
57aecc:	53                   	push   %ebx
57aecd:	56                   	push   %esi
57aece:	57                   	push   %edi
57aecf:	55                   	push   %ebp
57aed0:	51                   	push   %ecx
57aed1:	8b ea                	mov    %edx,%ebp
57aed3:	89 04 24             	mov    %eax,(%esp)
57aed6:	8b 1c 24             	mov    (%esp),%ebx
57aed9:	80 bb 30 00 01 00 00 	cmpb   $0x0,0x10030(%ebx)
57aee0:	0f 85 e9 00 00 00    	jne    0x57afcf
57aee6:	8b 53 1c             	mov    0x1c(%ebx),%edx
57aee9:	8b c2                	mov    %edx,%eax
57aeeb:	03 c0                	add    %eax,%eax
57aeed:	8d 74 c3 20          	lea    0x20(%ebx,%eax,8),%esi
57aef1:	8b 43 18             	mov    0x18(%ebx),%eax
57aef4:	3d 00 01 00 00       	cmp    $0x100,%eax
57aef9:	7d 18                	jge    0x57af13
57aefb:	bf 01 00 00 00       	mov    $0x1,%edi
57af00:	c7 46 04 02 00 00 00 	movl   $0x2,0x4(%esi)
57af07:	8d 46 08             	lea    0x8(%esi),%eax
57af0a:	89 06                	mov    %eax,(%esi)
57af0c:	8a 53 18             	mov    0x18(%ebx),%dl
57af0f:	88 10                	mov    %dl,(%eax)
57af11:	eb 48                	jmp    0x57af5b
57af13:	3b d0                	cmp    %eax,%edx
57af15:	7f 0c                	jg     0x57af23
57af17:	c6 83 30 00 01 00 01 	movb   $0x1,0x10030(%ebx)
57af1e:	e9 ac 00 00 00       	jmp    0x57afcf
57af23:	8b 43 18             	mov    0x18(%ebx),%eax
57af26:	03 c0                	add    %eax,%eax
57af28:	8b 7c c3 24          	mov    0x24(%ebx,%eax,8),%edi
57af2c:	8d 47 01             	lea    0x1(%edi),%eax
57af2f:	89 46 04             	mov    %eax,0x4(%esi)
57af32:	83 7e 04 08          	cmpl   $0x8,0x4(%esi)
57af36:	7e 0c                	jle    0x57af44
57af38:	8b 46 04             	mov    0x4(%esi),%eax
57af3b:	e8 6c 78 e8 ff       	call   0x4027ac
57af40:	89 06                	mov    %eax,(%esi)
57af42:	eb 05                	jmp    0x57af49
57af44:	8d 46 08             	lea    0x8(%esi),%eax
57af47:	89 06                	mov    %eax,(%esi)
57af49:	8b 43 18             	mov    0x18(%ebx),%eax
57af4c:	03 c0                	add    %eax,%eax
57af4e:	8b 54 c3 20          	mov    0x20(%ebx,%eax,8),%edx
57af52:	8b cf                	mov    %edi,%ecx
57af54:	8b 06                	mov    (%esi),%eax
57af56:	e8 65 cf e8 ff       	call   0x407ec0
57af5b:	81 fd 00 01 00 00    	cmp    $0x100,%ebp
57af61:	7d 09                	jge    0x57af6c
57af63:	8b 06                	mov    (%esi),%eax
57af65:	8b d5                	mov    %ebp,%edx
57af67:	88 14 38             	mov    %dl,(%eax,%edi,1)
57af6a:	eb 1d                	jmp    0x57af89
57af6c:	3b 6b 1c             	cmp    0x1c(%ebx),%ebp
57af6f:	7c 09                	jl     0x57af7a
57af71:	c6 83 30 00 01 00 01 	movb   $0x1,0x10030(%ebx)
57af78:	eb 55                	jmp    0x57afcf
57af7a:	8b 06                	mov    (%esi),%eax
57af7c:	8b d5                	mov    %ebp,%edx
57af7e:	03 d2                	add    %edx,%edx
57af80:	8b 54 d3 20          	mov    0x20(%ebx,%edx,8),%edx
57af84:	8a 12                	mov    (%edx),%dl
57af86:	88 14 38             	mov    %dl,(%eax,%edi,1)
57af89:	ff 43 1c             	incl   0x1c(%ebx)
57af8c:	8b 43 1c             	mov    0x1c(%ebx),%eax
57af8f:	2d ff 01 00 00       	sub    $0x1ff,%eax
57af94:	74 10                	je     0x57afa6
57af96:	2d 00 02 00 00       	sub    $0x200,%eax
57af9b:	74 12                	je     0x57afaf
57af9d:	2d 00 04 00 00       	sub    $0x400,%eax
57afa2:	74 14                	je     0x57afb8
57afa4:	eb 19                	jmp    0x57afbf
57afa6:	c7 43 10 0a 00 00 00 	movl   $0xa,0x10(%ebx)
57afad:	eb 10                	jmp    0x57afbf
57afaf:	c7 43 10 0b 00 00 00 	movl   $0xb,0x10(%ebx)
57afb6:	eb 07                	jmp    0x57afbf
57afb8:	c7 43 10 0c 00 00 00 	movl   $0xc,0x10(%ebx)
57afbf:	81 7b 1c 00 10 00 00 	cmpl   $0x1000,0x1c(%ebx)
57afc6:	7e 07                	jle    0x57afcf
57afc8:	c6 83 30 00 01 00 01 	movb   $0x1,0x10030(%ebx)
57afcf:	5a                   	pop    %edx
57afd0:	5d                   	pop    %ebp
57afd1:	5f                   	pop    %edi
57afd2:	5e                   	pop    %esi
57afd3:	5b                   	pop    %ebx
57afd4:	c3                   	ret
57afd5:	8d 40 00             	lea    0x0(%eax),%eax
57afd8:	53                   	push   %ebx
57afd9:	56                   	push   %esi
57afda:	57                   	push   %edi