56fc78:	ff 4c 24 38          	decl   0x38(%esp)
56fc7c:	8b 4c 24 24          	mov    0x24(%esp),%ecx
56fc80:	8b 44 24 18          	mov    0x18(%esp),%eax
56fc84:	3b c8                	cmp    %eax,%ecx
56fc86:	7c 2d                	jl     0x56fcb5
56fc88:	ff 4c 24 38          	decl   0x38(%esp)
56fc8c:	eb 27                	jmp    0x56fcb5
56fc8e:	6a ff                	push   $0xffffffff
56fc90:	68 c0 e3 ff ff       	push   $0xffffe3c0
56fc95:	8b 06                	mov    (%esi),%eax
56fc97:	8b 14 9e             	mov    (%esi,%ebx,4),%edx
56fc9a:	03 c2                	add    %edx,%eax
56fc9c:	99                   	cltd
56fc9d:	e8 e2 b3 fe ff       	call   0x55b084
56fca2:	0f ac d0 0d          	shrd   $0xd,%edx,%eax
56fca6:	01 45 00             	add    %eax,0x0(%ebp)
56fca9:	8b c3                	mov    %ebx,%eax
56fcab:	c1 e0 02             	shl    $0x2,%eax
56fcae:	c1 fa 0d             	sar    $0xd,%edx
56fcb1:	03 e8                	add    %eax,%ebp
56fcb3:	03 f0                	add    %eax,%esi
56fcb5:	8b 54 24 38          	mov    0x38(%esp),%edx
56fcb9:	83 44 24 38 ff       	addl   $0xffffffff,0x38(%esp)
56fcbe:	85 d2                	test   %edx,%edx
56fcc0:	7f cc                	jg     0x56fc8e
56fcc2:	8b 4c 24 24          	mov    0x24(%esp),%ecx
56fcc6:	8b 44 24 18          	mov    0x18(%esp),%eax
56fcca:	3b c8                	cmp    %eax,%ecx
56fccc:	7c 19                	jl     0x56fce7
56fcce:	8b 44 24 3c          	mov    0x3c(%esp),%eax
56fcd2:	99                   	cltd
56fcd3:	52                   	push   %edx
56fcd4:	50                   	push   %eax
56fcd5:	8b 06                	mov    (%esi),%eax
56fcd7:	99                   	cltd
56fcd8:	e8 a7 b3 fe ff       	call   0x55b084
56fcdd:	0f ac d0 0d          	shrd   $0xd,%edx,%eax
56fce1:	c1 fa 0d             	sar    $0xd,%edx
56fce4:	01 45 00             	add    %eax,0x0(%ebp)
56fce7:	8b 44 24 18          	mov    0x18(%esp),%eax
56fceb:	8b 54 24 14          	mov    0x14(%esp),%edx
56fcef:	2b c2                	sub    %edx,%eax
56fcf1:	8b 6c 24 10          	mov    0x10(%esp),%ebp
56fcf5:	8b 74 24 1c          	mov    0x1c(%esp),%esi
56fcf9:	89 44 24 40          	mov    %eax,0x40(%esp)
56fcfd:	c7 44 24 44 64 03 00 	movl   $0x364,0x44(%esp)
56fd04:	00
56fd05:	8b 4c 24 20          	mov    0x20(%esp),%ecx
56fd09:	8b 44 24 14          	mov    0x14(%esp),%eax
56fd0d:	3b c8                	cmp    %eax,%ecx
56fd0f:	7c 24                	jl     0x56fd35
56fd11:	8b 44 24 44          	mov    0x44(%esp),%eax
56fd15:	99                   	cltd
56fd16:	52                   	push   %edx
56fd17:	50                   	push   %eax
56fd18:	8b 06                	mov    (%esi),%eax
56fd1a:	99                   	cltd
56fd1b:	e8 64 b3 fe ff       	call   0x55b084
56fd20:	0f ac d0 0d          	shrd   $0xd,%edx,%eax
56fd24:	c1 fa 0d             	sar    $0xd,%edx
56fd27:	01 45 00             	add    %eax,0x0(%ebp)
56fd2a:	8b d3                	mov    %ebx,%edx
56fd2c:	c1 e2 02             	shl    $0x2,%edx
56fd2f:	03 ea                	add    %edx,%ebp
56fd31:	ff 4c 24 40          	decl   0x40(%esp)
56fd35:	8b 4c 24 18          	mov    0x18(%esp),%ecx
56fd39:	8b 44 24 24          	mov    0x24(%esp),%eax
56fd3d:	3b c8                	cmp    %eax,%ecx
56fd3f:	7e 2d                	jle    0x56fd6e
56fd41:	ff 4c 24 40          	decl   0x40(%esp)
56fd45:	eb 27                	jmp    0x56fd6e
56fd47:	6a 00                	push   $0x0
56fd49:	68 b2 01 00 00       	push   $0x1b2
56fd4e:	8b 06                	mov    (%esi),%eax
56fd50:	8b 14 9e             	mov    (%esi,%ebx,4),%edx
56fd53:	03 c2                	add    %edx,%eax
56fd55:	99                   	cltd
56fd56:	e8 29 b3 fe ff       	call   0x55b084
56fd5b:	0f ac d0 0d          	shrd   $0xd,%edx,%eax
56fd5f:	01 45 00             	add    %eax,0x0(%ebp)
56fd62:	8b c3                	mov    %ebx,%eax
56fd64:	c1 e0 02             	shl    $0x2,%eax
56fd67:	c1 fa 0d             	sar    $0xd,%edx
56fd6a:	03 e8                	add    %eax,%ebp
56fd6c:	03 f0                	add    %eax,%esi
56fd6e:	8b 54 24 40          	mov    0x40(%esp),%edx
56fd72:	83 44 24 40 ff       	addl   $0xffffffff,0x40(%esp)
56fd77:	85 d2                	test   %edx,%edx
56fd79:	7f cc                	jg     0x56fd47
56fd7b:	8b 4c 24 18          	mov    0x18(%esp),%ecx
56fd7f:	8b 44 24 24          	mov    0x24(%esp),%eax
56fd83:	3b c8                	cmp    %eax,%ecx
56fd85:	7e 19                	jle    0x56fda0
56fd87:	8b 44 24 44          	mov    0x44(%esp),%eax
56fd8b:	99                   	cltd
56fd8c:	52                   	push   %edx
56fd8d:	50                   	push   %eax
56fd8e:	8b 06                	mov    (%esi),%eax
56fd90:	99                   	cltd
56fd91:	e8 ee b2 fe ff       	call   0x55b084
56fd96:	0f ac d0 0d          	shrd   $0xd,%edx,%eax
56fd9a:	c1 fa 0d             	sar    $0xd,%edx
56fd9d:	01 45 00             	add    %eax,0x0(%ebp)
56fda0:	8b 44 24 24          	mov    0x24(%esp),%eax
56fda4:	8b 54 24 20          	mov    0x20(%esp),%edx
56fda8:	2b c2                	sub    %edx,%eax
56fdaa:	8b 74 24 10          	mov    0x10(%esp),%esi
56fdae:	8b 6c 24 1c          	mov    0x1c(%esp),%ebp
56fdb2:	89 44 24 48          	mov    %eax,0x48(%esp)
56fdb6:	c7 44 24 4c 82 65 00 	movl   $0x6582,0x4c(%esp)
56fdbd:	00
56fdbe:	8b 4c 24 20          	mov    0x20(%esp),%ecx
56fdc2:	8b 44 24 14          	mov    0x14(%esp),%eax
56fdc6:	3b c8                	cmp    %eax,%ecx
56fdc8:	7d 24                	jge    0x56fdee
56fdca:	8b 44 24 4c          	mov    0x4c(%esp),%eax
56fdce:	99                   	cltd
56fdcf:	52                   	push   %edx
56fdd0:	50                   	push   %eax
56fdd1:	8b 06                	mov    (%esi),%eax
56fdd3:	99                   	cltd
56fdd4:	e8 ab b2 fe ff       	call   0x55b084
56fdd9:	0f ac d0 0d          	shrd   $0xd,%edx,%eax
56fddd:	c1 fa 0d             	sar    $0xd,%edx
56fde0:	01 45 00             	add    %eax,0x0(%ebp)
56fde3:	8b d3                	mov    %ebx,%edx
56fde5:	c1 e2 02             	shl    $0x2,%edx
56fde8:	03 ea                	add    %edx,%ebp
56fdea:	ff 4c 24 48          	decl   0x48(%esp)
56fdee:	8b 4c 24 24          	mov    0x24(%esp),%ecx
56fdf2:	8b 44 24 18          	mov    0x18(%esp),%eax
56fdf6:	3b c8                	cmp    %eax,%ecx
56fdf8:	7c 2d                	jl     0x56fe27
56fdfa:	ff 4c 24 48          	decl   0x48(%esp)
56fdfe:	eb 27                	jmp    0x56fe27
56fe00:	6a 00                	push   $0x0
56fe02:	68 c1 32 00 00       	push   $0x32c1
56fe07:	8b 06                	mov    (%esi),%eax
56fe09:	8b 14 9e             	mov    (%esi,%ebx,4),%edx
56fe0c:	03 c2                	add    %edx,%eax
56fe0e:	99                   	cltd
56fe0f:	e8 70 b2 fe ff       	call   0x55b084
56fe14:	0f ac d0 0d          	shrd   $0xd,%edx,%eax
56fe18:	01 45 00             	add    %eax,0x0(%ebp)
56fe1b:	8b c3                	mov    %ebx,%eax
56fe1d:	c1 e0 02             	shl    $0x2,%eax
56fe20:	c1 fa 0d             	sar    $0xd,%edx
56fe23:	03 e8                	add    %eax,%ebp
56fe25:	03 f0                	add    %eax,%esi
56fe27:	8b 54 24 48          	mov    0x48(%esp),%edx
56fe2b:	83 44 24 48 ff       	addl   $0xffffffff,0x48(%esp)
56fe30:	85 d2                	test   %edx,%edx
56fe32:	7f cc                	jg     0x56fe00
56fe34:	8b 4c 24 24          	mov    0x24(%esp),%ecx
56fe38:	8b 44 24 18          	mov    0x18(%esp),%eax
56fe3c:	3b c8                	cmp    %eax,%ecx
56fe3e:	7c 19                	jl     0x56fe59
56fe40:	8b 44 24 4c          	mov    0x4c(%esp),%eax
56fe44:	99                   	cltd
56fe45:	52                   	push   %edx
56fe46:	50                   	push   %eax
56fe47:	8b 06                	mov    (%esi),%eax
56fe49:	99                   	cltd
56fe4a:	e8 35 b2 fe ff       	call   0x55b084
56fe4f:	0f ac d0 0d          	shrd   $0xd,%edx,%eax
56fe53:	c1 fa 0d             	sar    $0xd,%edx
56fe56:	01 45 00             	add    %eax,0x0(%ebp)
56fe59:	53                   	push   %ebx
56fe5a:	8b 54 24 14          	mov    0x14(%esp),%edx
56fe5e:	52                   	push   %edx
56fe5f:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
56fe63:	51                   	push   %ecx
56fe64:	8b 44 24 24          	mov    0x24(%esp),%eax
56fe68:	50                   	push   %eax
56fe69:	8b 54 24 2c          	mov    0x2c(%esp),%edx
56fe6d:	52                   	push   %edx
56fe6e:	8b 4c 24 34          	mov    0x34(%esp),%ecx
56fe72:	51                   	push   %ecx
56fe73:	8b 44 24 3c          	mov    0x3c(%esp),%eax
56fe77:	50                   	push   %eax
56fe78:	8b 4c 24 28          	mov    0x28(%esp),%ecx
56fe7c:	8b d7                	mov    %edi,%edx
56fe7e:	8b 44 24 24          	mov    0x24(%esp),%eax
56fe82:	e8 75 e8 ff ff       	call   0x56e6fc
56fe87:	8b 54 24 28          	mov    0x28(%esp),%edx
56fe8b:	c1 e2 02             	shl    $0x2,%edx
56fe8e:	01 54 24 08          	add    %edx,0x8(%esp)
56fe92:	8b 4c 24 2c          	mov    0x2c(%esp),%ecx
56fe96:	83 44 24 2c ff       	addl   $0xffffffff,0x2c(%esp)
56fe9b:	85 c9                	test   %ecx,%ecx
56fe9d:	0f 8f 27 fc ff ff    	jg     0x56faca
56fea3:	eb 05                	jmp    0x56feaa
56fea5:	e8 9e ac fe ff       	call   0x55ab48
56feaa:	83 c4 50             	add    $0x50,%esp
56fead:	5d                   	pop    %ebp
56feae:	5f                   	pop    %edi
56feaf:	5e                   	pop    %esi
56feb0:	5b                   	pop    %ebx
56feb1:	c3                   	ret
56feb2:	90                   	nop
56feb3:	90                   	nop
56feb4:	53                   	push   %ebx
56feb5:	56                   	push   %esi
56feb6:	8b f0                	mov    %eax,%esi
56feb8:	e8 37 00 00 00       	call   0x56fef4
56febd:	8b d8                	mov    %eax,%ebx
56febf:	85 c0                	test   %eax,%eax
56fec1:	75 05                	jne    0x56fec8
56fec3:	33 c0                	xor    %eax,%eax
56fec5:	5e                   	pop    %esi
56fec6:	5b                   	pop    %ebx
56fec7:	c3                   	ret
56fec8:	4e                   	dec    %esi
56fec9:	74 05                	je     0x56fed0
56fecb:	4e                   	dec    %esi
56fecc:	74 0a                	je     0x56fed8
56fece:	eb 10                	jmp    0x56fee0
56fed0:	c7 03 44 0c 6a 00    	movl   $0x6a0c44,(%ebx)
56fed6:	eb 14                	jmp    0x56feec
56fed8:	c7 03 58 0c 6a 00    	movl   $0x6a0c58,(%ebx)
56fede:	eb 0c                	jmp    0x56feec
56fee0:	8b c3                	mov    %ebx,%eax
56fee2:	e8 4d 00 00 00       	call   0x56ff34
56fee7:	33 c0                	xor    %eax,%eax
56fee9:	5e                   	pop    %esi
56feea:	5b                   	pop    %ebx
56feeb:	c3                   	ret
56feec:	8b c3                	mov    %ebx,%eax
56feee:	5e                   	pop    %esi
56feef:	5b                   	pop    %ebx
56fef0:	c3                   	ret
56fef1:	90                   	nop
56fef2:	90                   	nop
56fef3:	90                   	nop
56fef4:	53                   	push   %ebx
56fef5:	b8 04 00 00 00       	mov    $0x4,%eax
56fefa:	e8 7d 84 00 00       	call   0x57837c
56feff:	8b d8                	mov    %eax,%ebx
56ff01:	85 c0                	test   %eax,%eax
56ff03:	75 04                	jne    0x56ff09
56ff05:	33 c0                	xor    %eax,%eax
56ff07:	5b                   	pop    %ebx
56ff08:	c3                   	ret
56ff09:	33 d2                	xor    %edx,%edx
56ff0b:	8b c3                	mov    %ebx,%eax
56ff0d:	89 13                	mov    %edx,(%ebx)
56ff0f:	5b                   	pop    %ebx
56ff10:	c3                   	ret
56ff11:	90                   	nop
56ff12:	90                   	nop
56ff13:	90                   	nop
56ff14:	53                   	push   %ebx
56ff15:	56                   	push   %esi
56ff16:	8b f0                	mov    %eax,%esi
56ff18:	e8 d7 ff ff ff       	call   0x56fef4
56ff1d:	8b d8                	mov    %eax,%ebx
56ff1f:	85 c0                	test   %eax,%eax
56ff21:	75 05                	jne    0x56ff28
56ff23:	33 c0                	xor    %eax,%eax
56ff25:	5e                   	pop    %esi
56ff26:	5b                   	pop    %ebx
56ff27:	c3                   	ret
56ff28:	8b 16                	mov    (%esi),%edx
56ff2a:	8b c3                	mov    %ebx,%eax
56ff2c:	89 13                	mov    %edx,(%ebx)
56ff2e:	5e                   	pop    %esi
56ff2f:	5b                   	pop    %ebx
56ff30:	c3                   	ret
56ff31:	90                   	nop
56ff32:	90                   	nop
56ff33:	90                   	nop
56ff34:	e8 4b 84 00 00       	call   0x578384
56ff39:	c3                   	ret
56ff3a:	90                   	nop
56ff3b:	90                   	nop
56ff3c:	55                   	push   %ebp
56ff3d:	8b ec                	mov    %esp,%ebp
56ff3f:	53                   	push   %ebx
56ff40:	56                   	push   %esi
56ff41:	57                   	push   %edi
56ff42:	f7 c2 00 00 01 00    	test   $0x10000,%edx
56ff48:	8b 75 08             	mov    0x8(%ebp),%esi
56ff4b:	74 08                	je     0x56ff55
56ff4d:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
56ff50:	8b 7d 14             	mov    0x14(%ebp),%edi
56ff53:	eb 05                	jmp    0x56ff5a
56ff55:	8b d9                	mov    %ecx,%ebx
56ff57:	8b 7d 18             	mov    0x18(%ebp),%edi
56ff5a:	e8 0d 01 00 00       	call   0x57006c
56ff5f:	83 f8 02             	cmp    $0x2,%eax
56ff62:	74 17                	je     0x56ff7b
56ff64:	68 46 04 00 00       	push   $0x446
56ff69:	68 e0 0d 6a 00       	push   $0x6a0de0
56ff6e:	68 be 0d 6a 00       	push   $0x6a0dbe
56ff73:	e8 c8 ab fe ff       	call   0x55ab40
56ff78:	83 c4 0c             	add    $0xc,%esp
56ff7b:	3b fb                	cmp    %ebx,%edi
56ff7d:	7d 17                	jge    0x56ff96
56ff7f:	68 47 04 00 00       	push   $0x447
56ff84:	68 f8 0d 6a 00       	push   $0x6a0df8
56ff89:	68 eb 0d 6a 00       	push   $0x6a0deb
56ff8e:	e8 ad ab fe ff       	call   0x55ab40
56ff93:	83 c4 0c             	add    $0xc,%esp
56ff96:	85 db                	test   %ebx,%ebx
56ff98:	7d 17                	jge    0x56ffb1
56ff9a:	68 48 04 00 00       	push   $0x448
56ff9f:	68 18 0e 6a 00       	push   $0x6a0e18
56ffa4:	68 03 0e 6a 00       	push   $0x6a0e03
56ffa9:	e8 92 ab fe ff       	call   0x55ab40
56ffae:	83 c4 0c             	add    $0xc,%esp
56ffb1:	8d 43 01             	lea    0x1(%ebx),%eax
56ffb4:	d1 f8                	sar    $1,%eax
56ffb6:	85 ff                	test   %edi,%edi
56ffb8:	89 06                	mov    %eax,(%esi)
56ffba:	7d 17                	jge    0x56ffd3
56ffbc:	68 49 04 00 00       	push   $0x449
56ffc1:	68 36 0e 6a 00       	push   $0x6a0e36
56ffc6:	68 23 0e 6a 00       	push   $0x6a0e23
56ffcb:	e8 70 ab fe ff       	call   0x55ab40
56ffd0:	83 c4 0c             	add    $0xc,%esp
56ffd3:	8d 57 01             	lea    0x1(%edi),%edx
56ffd6:	d1 fa                	sar    $1,%edx
56ffd8:	89 56 04             	mov    %edx,0x4(%esi)
56ffdb:	89 5e 08             	mov    %ebx,0x8(%esi)
56ffde:	8b 4e 04             	mov    0x4(%esi),%ecx
56ffe1:	8b 06                	mov    (%esi),%eax
56ffe3:	03 cb                	add    %ebx,%ecx
56ffe5:	2b c8                	sub    %eax,%ecx
56ffe7:	85 db                	test   %ebx,%ebx
56ffe9:	89 4e 0c             	mov    %ecx,0xc(%esi)
56ffec:	7d 17                	jge    0x570005
56ffee:	68 4c 04 00 00       	push   $0x44c
56fff3:	68 55 0e 6a 00       	push   $0x6a0e55
56fff8:	68 41 0e 6a 00       	push   $0x6a0e41
56fffd:	e8 3e ab fe ff       	call   0x55ab40
570002:	83 c4 0c             	add    $0xc,%esp
570005:	d1 fb                	sar    $1,%ebx
570007:	85 ff                	test   %edi,%edi
570009:	89 5e 10             	mov    %ebx,0x10(%esi)
57000c:	7d 17                	jge    0x570025
57000e:	68 4d 04 00 00       	push   $0x44d
570013:	68 72 0e 6a 00       	push   $0x6a0e72
570018:	68 60 0e 6a 00       	push   $0x6a0e60
57001d:	e8 1e ab fe ff       	call   0x55ab40
570022:	83 c4 0c             	add    $0xc,%esp
570025:	8b d7                	mov    %edi,%edx
570027:	d1 fa                	sar    $1,%edx
570029:	89 56 14             	mov    %edx,0x14(%esi)
57002c:	8b 46 0c             	mov    0xc(%esi),%eax
57002f:	89 46 18             	mov    %eax,0x18(%esi)