5587d5:	0f b7 55 da          	movzwl -0x26(%ebp),%edx
5587d9:	8b 45 d4             	mov    -0x2c(%ebp),%eax
5587dc:	8b 18                	mov    (%eax),%ebx
5587de:	ff 53 24             	call   *0x24(%ebx)
5587e1:	0f b7 45 da          	movzwl -0x26(%ebp),%eax
5587e5:	83 c0 07             	add    $0x7,%eax
5587e8:	c1 e8 03             	shr    $0x3,%eax
5587eb:	66 89 45 dc          	mov    %ax,-0x24(%ebp)
5587ef:	eb 1d                	jmp    0x55880e
5587f1:	6a 05                	push   $0x5
5587f3:	0f b7 4d d2          	movzwl -0x2e(%ebp),%ecx
5587f7:	0f b7 55 da          	movzwl -0x26(%ebp),%edx
5587fb:	8b 45 d4             	mov    -0x2c(%ebp),%eax
5587fe:	8b 18                	mov    (%eax),%ebx
558800:	ff 53 24             	call   *0x24(%ebx)
558803:	66 8b 45 da          	mov    -0x26(%ebp),%ax
558807:	8d 04 40             	lea    (%eax,%eax,2),%eax
55880a:	66 89 45 dc          	mov    %ax,-0x24(%ebp)
55880e:	33 d2                	xor    %edx,%edx
558810:	55                   	push   %ebp
558811:	68 e0 89 55 00       	push   $0x5589e0
558816:	64 ff 32             	push   %fs:(%edx)
558819:	64 89 22             	mov    %esp,%fs:(%edx)
55881c:	0f b7 45 dc          	movzwl -0x24(%ebp),%eax
558820:	e8 87 9f ea ff       	call   0x4027ac
558825:	8b 55 c8             	mov    -0x38(%ebp),%edx
558828:	89 82 04 24 00 00    	mov    %eax,0x2404(%edx)
55882e:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
558832:	75 7e                	jne    0x5588b2
558834:	66 83 7d de 20       	cmpw   $0x20,-0x22(%ebp)
558839:	75 06                	jne    0x558841
55883b:	f6 45 f7 08          	testb  $0x8,-0x9(%ebp)
55883f:	75 06                	jne    0x558847
558841:	80 7d ed 20          	cmpb   $0x20,-0x13(%ebp)
558845:	75 6b                	jne    0x5588b2
558847:	8b 45 0c             	mov    0xc(%ebp),%eax
55884a:	83 38 00             	cmpl   $0x0,(%eax)
55884d:	75 11                	jne    0x558860
55884f:	b2 01                	mov    $0x1,%dl
558851:	a1 a4 fd 5e 00       	mov    0x5efda4,%eax
558856:	e8 19 a3 09 00       	call   0x5f2b74
55885b:	8b 55 0c             	mov    0xc(%ebp),%edx
55885e:	89 02                	mov    %eax,(%edx)
558860:	6a 08                	push   $0x8
558862:	0f b7 4d d2          	movzwl -0x2e(%ebp),%ecx
558866:	0f b7 55 da          	movzwl -0x26(%ebp),%edx
55886a:	8b 45 0c             	mov    0xc(%ebp),%eax
55886d:	8b 00                	mov    (%eax),%eax
55886f:	e8 cc a6 09 00       	call   0x5f2f40
558874:	8b 45 0c             	mov    0xc(%ebp),%eax
558877:	8b 00                	mov    (%eax),%eax
558879:	ba ff 00 00 00       	mov    $0xff,%edx
55887e:	e8 a1 be 09 00       	call   0x5f4724
558883:	0f b7 45 da          	movzwl -0x26(%ebp),%eax
558887:	e8 20 9f ea ff       	call   0x4027ac
55888c:	8b d8                	mov    %eax,%ebx
55888e:	8b 45 c8             	mov    -0x38(%ebp),%eax
558891:	89 98 0c 24 00 00    	mov    %ebx,0x240c(%eax)
558897:	0f b7 55 da          	movzwl -0x26(%ebp),%edx
55889b:	8b c3                	mov    %ebx,%eax
55889d:	b9 ff 00 00 00       	mov    $0xff,%ecx
5588a2:	e8 99 a9 ea ff       	call   0x403240
5588a7:	8b 45 0c             	mov    0xc(%ebp),%eax
5588aa:	8b 00                	mov    (%eax),%eax
5588ac:	c6 40 68 00          	movb   $0x0,0x68(%eax)
5588b0:	eb 0b                	jmp    0x5588bd
5588b2:	8b 45 c8             	mov    -0x38(%ebp),%eax
5588b5:	33 d2                	xor    %edx,%edx
5588b7:	89 90 0c 24 00 00    	mov    %edx,0x240c(%eax)
5588bd:	8a 45 f7             	mov    -0x9(%ebp),%al
5588c0:	8b d0                	mov    %eax,%edx
5588c2:	80 e2 20             	and    $0x20,%dl
5588c5:	80 fa 20             	cmp    $0x20,%dl
5588c8:	74 13                	je     0x5588dd
5588ca:	24 10                	and    $0x10,%al
5588cc:	3c 10                	cmp    $0x10,%al
5588ce:	74 0d                	je     0x5588dd
5588d0:	66 8b 45 d2          	mov    -0x2e(%ebp),%ax
5588d4:	48                   	dec    %eax
5588d5:	66 c7 45 cc ff ff    	movw   $0xffff,-0x34(%ebp)
5588db:	eb 08                	jmp    0x5588e5
5588dd:	33 c0                	xor    %eax,%eax
5588df:	66 c7 45 cc 01 00    	movw   $0x1,-0x34(%ebp)
5588e5:	8b 55 c8             	mov    -0x38(%ebp),%edx
5588e8:	c7 82 2c 26 00 00 ff 	movl   $0xffffffff,0x262c(%edx)
5588ef:	ff ff ff
5588f2:	8b d8                	mov    %eax,%ebx
5588f4:	66 c7 45 ce 00 00    	movw   $0x0,-0x32(%ebp)
5588fa:	8a 45 e8             	mov    -0x18(%ebp),%al
5588fd:	48                   	dec    %eax
5588fe:	2c 03                	sub    $0x3,%al
558900:	72 0a                	jb     0x55890c
558902:	04 fb                	add    $0xfb,%al
558904:	2c 03                	sub    $0x3,%al
558906:	0f 83 a0 00 00 00    	jae    0x5589ac
55890c:	55                   	push   %ebp
55890d:	e8 e6 f9 ff ff       	call   0x5582f8
558912:	59                   	pop    %ecx
558913:	55                   	push   %ebp
558914:	8b 45 c8             	mov    -0x38(%ebp),%eax
558917:	8b 80 04 24 00 00    	mov    0x2404(%eax),%eax
55891d:	e8 0a f6 ff ff       	call   0x557f2c
558922:	59                   	pop    %ecx
558923:	0f bf fb             	movswl %bx,%edi
558926:	8b d7                	mov    %edi,%edx
558928:	8b 45 d4             	mov    -0x2c(%ebp),%eax
55892b:	8b 08                	mov    (%eax),%ecx
55892d:	ff 11                	call   *(%ecx)
55892f:	0f b7 4d dc          	movzwl -0x24(%ebp),%ecx
558933:	50                   	push   %eax
558934:	8b 45 c8             	mov    -0x38(%ebp),%eax
558937:	8b 80 04 24 00 00    	mov    0x2404(%eax),%eax
55893d:	5a                   	pop    %edx
55893e:	e8 dd a0 ea ff       	call   0x402a20
558943:	8b 45 c8             	mov    -0x38(%ebp),%eax
558946:	83 b8 0c 24 00 00 00 	cmpl   $0x0,0x240c(%eax)
55894d:	74 1e                	je     0x55896d
55894f:	8b d7                	mov    %edi,%edx
558951:	8b 45 0c             	mov    0xc(%ebp),%eax
558954:	8b 00                	mov    (%eax),%eax
558956:	e8 b9 bd 09 00       	call   0x5f4714
55895b:	0f b7 4d da          	movzwl -0x26(%ebp),%ecx
55895f:	8b 55 c8             	mov    -0x38(%ebp),%edx
558962:	8b 92 0c 24 00 00    	mov    0x240c(%edx),%edx
558968:	e8 53 f5 ea ff       	call   0x407ec0
55896d:	66 ff 45 ce          	incw   -0x32(%ebp)
558971:	66 03 5d cc          	add    -0x34(%ebp),%bx
558975:	ff 46 0c             	incl   0xc(%esi)
558978:	66 83 7e 02 00       	cmpw   $0x0,0x2(%esi)
55897d:	74 15                	je     0x558994
55897f:	db 46 0c             	fildl  0xc(%esi)
558982:	dc 4e 18             	fmull  0x18(%esi)
558985:	e8 42 a3 ea ff       	call   0x402ccc
55898a:	8b c8                	mov    %eax,%ecx
55898c:	8b 56 08             	mov    0x8(%esi),%edx
55898f:	8b 46 04             	mov    0x4(%esi),%eax
558992:	ff 16                	call   *(%esi)
558994:	66 8b 45 ce          	mov    -0x32(%ebp),%ax
558998:	66 3b 45 d2          	cmp    -0x2e(%ebp),%ax
55899c:	73 14                	jae    0x5589b2
55899e:	8b 46 28             	mov    0x28(%esi),%eax
5589a1:	80 38 01             	cmpb   $0x1,(%eax)
5589a4:	0f 85 62 ff ff ff    	jne    0x55890c
5589aa:	eb 06                	jmp    0x5589b2
5589ac:	8b 46 28             	mov    0x28(%esi),%eax
5589af:	c6 00 01             	movb   $0x1,(%eax)
5589b2:	33 c0                	xor    %eax,%eax
5589b4:	5a                   	pop    %edx
5589b5:	59                   	pop    %ecx
5589b6:	59                   	pop    %ecx
5589b7:	64 89 10             	mov    %edx,%fs:(%eax)
5589ba:	68 ed 89 55 00       	push   $0x5589ed
5589bf:	8b 45 c8             	mov    -0x38(%ebp),%eax
5589c2:	8b 80 04 24 00 00    	mov    0x2404(%eax),%eax
5589c8:	e8 ff 9d ea ff       	call   0x4027cc
5589cd:	8b 45 c8             	mov    -0x38(%ebp),%eax
5589d0:	8b 80 0c 24 00 00    	mov    0x240c(%eax),%eax
5589d6:	85 c0                	test   %eax,%eax
5589d8:	74 05                	je     0x5589df
5589da:	e8 ed 9d ea ff       	call   0x4027cc
5589df:	c3                   	ret
5589e0:	e9 27 b8 ea ff       	jmp    0x40420c
5589e5:	eb d8                	jmp    0x5589bf
5589e7:	8b 46 28             	mov    0x28(%esi),%eax
5589ea:	c6 00 01             	movb   $0x1,(%eax)
5589ed:	ba 30 26 00 00       	mov    $0x2630,%edx
5589f2:	8b 45 fc             	mov    -0x4(%ebp),%eax
5589f5:	e8 d2 9d ea ff       	call   0x4027cc
5589fa:	8b 45 0c             	mov    0xc(%ebp),%eax
5589fd:	83 38 00             	cmpl   $0x0,(%eax)
558a00:	74 29                	je     0x558a2b
558a02:	8b 45 0c             	mov    0xc(%ebp),%eax
558a05:	8b 00                	mov    (%eax),%eax
558a07:	e8 e0 a3 09 00       	call   0x5f2dec
558a0c:	8b 45 0c             	mov    0xc(%ebp),%eax
558a0f:	8b 00                	mov    (%eax),%eax
558a11:	e8 4a bd 09 00       	call   0x5f4760
558a16:	84 c0                	test   %al,%al
558a18:	74 11                	je     0x558a2b
558a1a:	8b 45 0c             	mov    0xc(%ebp),%eax
558a1d:	8b 00                	mov    (%eax),%eax
558a1f:	e8 54 b0 ea ff       	call   0x403a78
558a24:	8b 45 0c             	mov    0xc(%ebp),%eax
558a27:	33 d2                	xor    %edx,%edx
558a29:	89 10                	mov    %edx,(%eax)
558a2b:	5f                   	pop    %edi
558a2c:	5e                   	pop    %esi
558a2d:	5b                   	pop    %ebx
558a2e:	8b e5                	mov    %ebp,%esp
558a30:	5d                   	pop    %ebp
558a31:	c2 10 00             	ret    $0x10
558a34:	00 00                	add    %al,(%eax)
558a36:	c8 42 55 8b          	enter  $0x5542,$0x8b
558a3a:	ec                   	in     (%dx),%al
558a3b:	53                   	push   %ebx
558a3c:	56                   	push   %esi
558a3d:	8b 5d 08             	mov    0x8(%ebp),%ebx
558a40:	83 c3 ee             	add    $0xffffffee,%ebx
558a43:	8b 75 08             	mov    0x8(%ebp),%esi
558a46:	8b 76 e8             	mov    -0x18(%esi),%esi
558a49:	8b 06                	mov    (%esi),%eax
558a4b:	8b 80 38 01 00 00    	mov    0x138(%eax),%eax
558a51:	e8 ca c0 ea ff       	call   0x404b20
558a56:	40                   	inc    %eax
558a57:	88 03                	mov    %al,(%ebx)
558a59:	8b 45 08             	mov    0x8(%ebp),%eax
558a5c:	8a 40 e4             	mov    -0x1c(%eax),%al
558a5f:	88 43 10             	mov    %al,0x10(%ebx)
558a62:	c6 43 11 00          	movb   $0x0,0x11(%ebx)
558a66:	8b 45 08             	mov    0x8(%ebp),%eax
558a69:	8b 40 e4             	mov    -0x1c(%eax),%eax
558a6c:	83 f8 08             	cmp    $0x8,%eax
558a6f:	7f 0f                	jg     0x558a80
558a71:	74 52                	je     0x558ac5
558a73:	48                   	dec    %eax
558a74:	74 21                	je     0x558a97
558a76:	83 e8 03             	sub    $0x3,%eax
558a79:	74 4a                	je     0x558ac5
558a7b:	e9 20 01 00 00       	jmp    0x558ba0
558a80:	83 e8 18             	sub    $0x18,%eax
558a83:	0f 84 bf 00 00 00    	je     0x558b48
558a89:	83 e8 08             	sub    $0x8,%eax
558a8c:	0f 84 e1 00 00 00    	je     0x558b73
558a92:	e9 09 01 00 00       	jmp    0x558ba0
558a97:	c6 43 01 00          	movb   $0x0,0x1(%ebx)
558a9b:	8b 06                	mov    (%esi),%eax
558a9d:	80 b8 34 01 00 00 00 	cmpb   $0x0,0x134(%eax)
558aa4:	74 06                	je     0x558aac
558aa6:	c6 43 02 0b          	movb   $0xb,0x2(%ebx)
558aaa:	eb 04                	jmp    0x558ab0
558aac:	c6 43 02 03          	movb   $0x3,0x2(%ebx)
558ab0:	66 c7 43 03 00 00    	movw   $0x0,0x3(%ebx)
558ab6:	66 c7 43 05 00 00    	movw   $0x0,0x5(%ebx)
558abc:	c6 43 07 00          	movb   $0x0,0x7(%ebx)
558ac0:	e9 db 00 00 00       	jmp    0x558ba0
558ac5:	8b 45 08             	mov    0x8(%ebp),%eax
558ac8:	83 78 e4 08          	cmpl   $0x8,-0x1c(%eax)
558acc:	75 44                	jne    0x558b12
558ace:	8b 06                	mov    (%esi),%eax
558ad0:	80 b8 60 01 00 00 00 	cmpb   $0x0,0x160(%eax)
558ad7:	74 39                	je     0x558b12
558ad9:	c6 43 01 00          	movb   $0x0,0x1(%ebx)
558add:	8b 06                	mov    (%esi),%eax
558adf:	80 b8 34 01 00 00 00 	cmpb   $0x0,0x134(%eax)
558ae6:	74 06                	je     0x558aee
558ae8:	c6 43 02 0b          	movb   $0xb,0x2(%ebx)
558aec:	eb 04                	jmp    0x558af2
558aee:	c6 43 02 03          	movb   $0x3,0x2(%ebx)
558af2:	66 c7 43 03 00 00    	movw   $0x0,0x3(%ebx)
558af8:	8b 45 08             	mov    0x8(%ebp),%eax
558afb:	8b 48 e4             	mov    -0x1c(%eax),%ecx
558afe:	66 b8 01 00          	mov    $0x1,%ax
558b02:	66 d3 e0             	shl    %cl,%ax
558b05:	66 89 43 05          	mov    %ax,0x5(%ebx)
558b09:	c6 43 07 18          	movb   $0x18,0x7(%ebx)
558b0d:	e9 8e 00 00 00       	jmp    0x558ba0
558b12:	c6 43 01 01          	movb   $0x1,0x1(%ebx)
558b16:	8b 06                	mov    (%esi),%eax
558b18:	80 b8 34 01 00 00 00 	cmpb   $0x0,0x134(%eax)
558b1f:	74 06                	je     0x558b27
558b21:	c6 43 02 09          	movb   $0x9,0x2(%ebx)
558b25:	eb 04                	jmp    0x558b2b
558b27:	c6 43 02 01          	movb   $0x1,0x2(%ebx)
558b2b:	66 c7 43 03 00 00    	movw   $0x0,0x3(%ebx)
558b31:	8b 45 08             	mov    0x8(%ebp),%eax
558b34:	8b 48 e4             	mov    -0x1c(%eax),%ecx
558b37:	66 b8 01 00          	mov    $0x1,%ax
558b3b:	66 d3 e0             	shl    %cl,%ax
558b3e:	66 89 43 05          	mov    %ax,0x5(%ebx)
558b42:	c6 43 07 18          	movb   $0x18,0x7(%ebx)
558b46:	eb 58                	jmp    0x558ba0
558b48:	c6 43 01 00          	movb   $0x0,0x1(%ebx)
558b4c:	8b 06                	mov    (%esi),%eax
558b4e:	80 b8 34 01 00 00 00 	cmpb   $0x0,0x134(%eax)
558b55:	74 06                	je     0x558b5d
558b57:	c6 43 02 0a          	movb   $0xa,0x2(%ebx)
558b5b:	eb 04                	jmp    0x558b61
558b5d:	c6 43 02 02          	movb   $0x2,0x2(%ebx)
558b61:	66 c7 43 03 00 00    	movw   $0x0,0x3(%ebx)
558b67:	66 c7 43 05 00 00    	movw   $0x0,0x5(%ebx)
558b6d:	c6 43 07 00          	movb   $0x0,0x7(%ebx)
558b71:	eb 2d                	jmp    0x558ba0
558b73:	c6 43 01 00          	movb   $0x0,0x1(%ebx)
558b77:	8b 06                	mov    (%esi),%eax
558b79:	80 b8 34 01 00 00 00 	cmpb   $0x0,0x134(%eax)
558b80:	74 06                	je     0x558b88
558b82:	c6 43 02 0a          	movb   $0xa,0x2(%ebx)
558b86:	eb 04                	jmp    0x558b8c
558b88:	c6 43 02 02          	movb   $0x2,0x2(%ebx)
558b8c:	66 c7 43 03 00 00    	movw   $0x0,0x3(%ebx)
558b92:	66 c7 43 05 00 00    	movw   $0x0,0x5(%ebx)
558b98:	c6 43 07 00          	movb   $0x0,0x7(%ebx)
558b9c:	80 4b 11 08          	orb    $0x8,0x11(%ebx)
558ba0:	8b 06                	mov    (%esi),%eax
558ba2:	66 8b 80 2c 01 00 00 	mov    0x12c(%eax),%ax
558ba9:	66 89 43 08          	mov    %ax,0x8(%ebx)
558bad:	8b 06                	mov    (%esi),%eax
558baf:	66 8b 80 30 01 00 00 	mov    0x130(%eax),%ax
558bb6:	66 89 43 0a          	mov    %ax,0xa(%ebx)
558bba:	8b 45 08             	mov    0x8(%ebp),%eax
558bbd:	66 8b 40 e0          	mov    -0x20(%eax),%ax
558bc1:	66 89 43 0c          	mov    %ax,0xc(%ebx)
558bc5:	8b 45 08             	mov    0x8(%ebp),%eax
558bc8:	66 8b 40 dc          	mov    -0x24(%eax),%ax
558bcc:	66 89 43 0e          	mov    %ax,0xe(%ebx)
558bd0:	80 4b 11 20          	orb    $0x20,0x11(%ebx)
558bd4:	6a 12                	push   $0x12
558bd6:	8b cb                	mov    %ebx,%ecx
558bd8:	8b 45 08             	mov    0x8(%ebp),%eax
558bdb:	8b 50 0c             	mov    0xc(%eax),%edx
558bde:	8b 52 28             	mov    0x28(%edx),%edx
558be1:	8b 45 08             	mov    0x8(%ebp),%eax
558be4:	8b 40 d8             	mov    -0x28(%eax),%eax
558be7:	e8 10 d3 09 00       	call   0x5f5efc
558bec:	8b 06                	mov    (%esi),%eax
558bee:	8b 80 38 01 00 00    	mov    0x138(%eax),%eax
558bf4:	e8 27 bf ea ff       	call   0x404b20
558bf9:	40                   	inc    %eax
558bfa:	50                   	push   %eax
558bfb:	8b 06                	mov    (%esi),%eax
558bfd:	8b 80 38 01 00 00    	mov    0x138(%eax),%eax
558c03:	e8 10 c1 ea ff       	call   0x404d18
558c08:	8b c8                	mov    %eax,%ecx
558c0a:	8b 45 08             	mov    0x8(%ebp),%eax
558c0d:	8b 50 0c             	mov    0xc(%eax),%edx
558c10:	8b 52 28             	mov    0x28(%edx),%edx
558c13:	8b 45 08             	mov    0x8(%ebp),%eax
558c16:	8b 40 d8             	mov    -0x28(%eax),%eax
558c19:	e8 de d2 09 00       	call   0x5f5efc
558c1e:	80 7b 01 01          	cmpb   $0x1,0x1(%ebx)
558c22:	75 31                	jne    0x558c55
558c24:	8b 45 08             	mov    0x8(%ebp),%eax
558c27:	8b 48 e4             	mov    -0x1c(%eax),%ecx
558c2a:	b8 01 00 00 00       	mov    $0x1,%eax
558c2f:	d3 e0                	shl    %cl,%eax
558c31:	8d 04 40             	lea    (%eax,%eax,2),%eax
558c34:	50                   	push   %eax
558c35:	8b 45 08             	mov    0x8(%ebp),%eax
558c38:	8b 40 d4             	mov    -0x2c(%eax),%eax
558c3b:	8d 88 00 20 00 00    	lea    0x2000(%eax),%ecx
558c41:	8b 45 08             	mov    0x8(%ebp),%eax
558c44:	8b 50 0c             	mov    0xc(%eax),%edx
558c47:	8b 52 28             	mov    0x28(%edx),%edx
558c4a:	8b 45 08             	mov    0x8(%ebp),%eax
558c4d:	8b 40 d8             	mov    -0x28(%eax),%eax
558c50:	e8 a7 d2 09 00       	call   0x5f5efc
558c55:	5e                   	pop    %esi
558c56:	5b                   	pop    %ebx
558c57:	5d                   	pop    %ebp
558c58:	c3                   	ret