54278a:	68 9a bd 69 00       	push   $0x69bd9a
54278f:	56                   	push   %esi
542790:	e8 a7 3b fe ff       	call   0x52633c
542795:	83 c4 0c             	add    $0xc,%esp
542798:	85 c0                	test   %eax,%eax
54279a:	75 10                	jne    0x5427ac
54279c:	8b cf                	mov    %edi,%ecx
54279e:	8b d5                	mov    %ebp,%edx
5427a0:	8b c3                	mov    %ebx,%eax
5427a2:	e8 0d 99 00 00       	call   0x54c0b4
5427a7:	e9 bb fc ff ff       	jmp    0x542467
5427ac:	6a 04                	push   $0x4
5427ae:	68 bd bd 69 00       	push   $0x69bdbd
5427b3:	56                   	push   %esi
5427b4:	e8 83 3b fe ff       	call   0x52633c
5427b9:	83 c4 0c             	add    $0xc,%esp
5427bc:	85 c0                	test   %eax,%eax
5427be:	75 10                	jne    0x5427d0
5427c0:	8b cf                	mov    %edi,%ecx
5427c2:	8b d5                	mov    %ebp,%edx
5427c4:	8b c3                	mov    %ebx,%eax
5427c6:	e8 a5 9a 00 00       	call   0x54c270
5427cb:	e9 97 fc ff ff       	jmp    0x542467
5427d0:	6a 04                	push   $0x4
5427d2:	68 c7 bd 69 00       	push   $0x69bdc7
5427d7:	56                   	push   %esi
5427d8:	e8 5f 3b fe ff       	call   0x52633c
5427dd:	83 c4 0c             	add    $0xc,%esp
5427e0:	85 c0                	test   %eax,%eax
5427e2:	75 10                	jne    0x5427f4
5427e4:	8b cf                	mov    %edi,%ecx
5427e6:	8b d5                	mov    %ebp,%edx
5427e8:	8b c3                	mov    %ebx,%eax
5427ea:	e8 9d a7 00 00       	call   0x54cf8c
5427ef:	e9 73 fc ff ff       	jmp    0x542467
5427f4:	6a 04                	push   $0x4
5427f6:	68 cc bd 69 00       	push   $0x69bdcc
5427fb:	56                   	push   %esi
5427fc:	e8 3b 3b fe ff       	call   0x52633c
542801:	83 c4 0c             	add    $0xc,%esp
542804:	85 c0                	test   %eax,%eax
542806:	75 10                	jne    0x542818
542808:	8b cf                	mov    %edi,%ecx
54280a:	8b d5                	mov    %ebp,%edx
54280c:	8b c3                	mov    %ebx,%eax
54280e:	e8 a9 a6 00 00       	call   0x54cebc
542813:	e9 4f fc ff ff       	jmp    0x542467
542818:	6a 04                	push   $0x4
54281a:	68 d1 bd 69 00       	push   $0x69bdd1
54281f:	56                   	push   %esi
542820:	e8 17 3b fe ff       	call   0x52633c
542825:	83 c4 0c             	add    $0xc,%esp
542828:	85 c0                	test   %eax,%eax
54282a:	75 10                	jne    0x54283c
54282c:	8b cf                	mov    %edi,%ecx
54282e:	8b d5                	mov    %ebp,%edx
542830:	8b c3                	mov    %ebx,%eax
542832:	e8 21 9c 00 00       	call   0x54c458
542837:	e9 2b fc ff ff       	jmp    0x542467
54283c:	6a 04                	push   $0x4
54283e:	68 d6 bd 69 00       	push   $0x69bdd6
542843:	56                   	push   %esi
542844:	e8 f3 3a fe ff       	call   0x52633c
542849:	83 c4 0c             	add    $0xc,%esp
54284c:	85 c0                	test   %eax,%eax
54284e:	75 10                	jne    0x542860
542850:	8b cf                	mov    %edi,%ecx
542852:	8b d5                	mov    %ebp,%edx
542854:	8b c3                	mov    %ebx,%eax
542856:	e8 31 a8 00 00       	call   0x54d08c
54285b:	e9 07 fc ff ff       	jmp    0x542467
542860:	8b cf                	mov    %edi,%ecx
542862:	8b d5                	mov    %ebp,%edx
542864:	8b c3                	mov    %ebx,%eax
542866:	e8 75 a9 00 00       	call   0x54d1e0
54286b:	e9 f7 fb ff ff       	jmp    0x542467
542870:	5a                   	pop    %edx
542871:	5d                   	pop    %ebp
542872:	5f                   	pop    %edi
542873:	5e                   	pop    %esi
542874:	5b                   	pop    %ebx
542875:	c3                   	ret
542876:	90                   	nop
542877:	90                   	nop
542878:	53                   	push   %ebx
542879:	8b d8                	mov    %eax,%ebx
54287b:	56                   	push   %esi
54287c:	8b f2                	mov    %edx,%esi
54287e:	f6 43 2c 40          	testb  $0x40,0x2c(%ebx)
542882:	75 09                	jne    0x54288d
542884:	8b c3                	mov    %ebx,%eax
542886:	e8 41 b7 00 00       	call   0x54dfcc
54288b:	eb 0c                	jmp    0x542899
54288d:	ba cf a3 69 00       	mov    $0x69a3cf,%edx
542892:	8b c3                	mov    %ebx,%eax
542894:	e8 c3 86 00 00       	call   0x54af5c
542899:	8b d6                	mov    %esi,%edx
54289b:	8b c3                	mov    %ebx,%eax
54289d:	e8 8e 43 00 00       	call   0x546c30
5428a2:	5e                   	pop    %esi
5428a3:	5b                   	pop    %ebx
5428a4:	c3                   	ret
5428a5:	90                   	nop
5428a6:	90                   	nop
5428a7:	90                   	nop
5428a8:	f6 40 2c 40          	testb  $0x40,0x2c(%eax)
5428ac:	75 05                	jne    0x5428b3
5428ae:	e8 19 b7 00 00       	call   0x54dfcc
5428b3:	c3                   	ret
5428b4:	53                   	push   %ebx
5428b5:	56                   	push   %esi
5428b6:	57                   	push   %edi
5428b7:	8b d8                	mov    %eax,%ebx
5428b9:	55                   	push   %ebp
5428ba:	51                   	push   %ecx
5428bb:	f6 43 2c 40          	testb  $0x40,0x2c(%ebx)
5428bf:	8b ea                	mov    %edx,%ebp
5428c1:	8b f9                	mov    %ecx,%edi
5428c3:	75 07                	jne    0x5428cc
5428c5:	8b c3                	mov    %ebx,%eax
5428c7:	e8 00 b7 00 00       	call   0x54dfcc
5428cc:	8b 93 a4 00 00 00    	mov    0xa4(%ebx),%edx
5428d2:	85 d2                	test   %edx,%edx
5428d4:	75 08                	jne    0x5428de
5428d6:	8a 8b e4 00 00 00    	mov    0xe4(%ebx),%cl
5428dc:	84 c9                	test   %cl,%cl
5428de:	8a 83 e3 00 00 00    	mov    0xe3(%ebx),%al
5428e4:	84 c0                	test   %al,%al
5428e6:	0f 84 ca 01 00 00    	je     0x542ab6
5428ec:	f6 43 30 02          	testb  $0x2,0x30(%ebx)
5428f0:	0f 84 c0 01 00 00    	je     0x542ab6
5428f6:	33 d2                	xor    %edx,%edx
5428f8:	8a 93 e4 00 00 00    	mov    0xe4(%ebx),%dl
5428fe:	83 fa 06             	cmp    $0x6,%edx
542901:	0f 87 af 01 00 00    	ja     0x542ab6
542907:	ff 24 95 0e 29 54 00 	jmp    *0x54290e(,%edx,4)
54290e:	2a 29                	sub    (%ecx),%ch
542910:	54                   	push   %esp
542911:	00 5f 29             	add    %bl,0x29(%edi)
542914:	54                   	push   %esp
542915:	00 9f 29 54 00 e2    	add    %bl,-0x1dffabd7(%edi)
54291b:	29 54 00 22          	sub    %edx,0x22(%eax,%eax,1)
54291f:	2a 54 00 65          	sub    0x65(%eax,%eax,1),%dl
542923:	2a 54 00 a1          	sub    -0x5f(%eax,%eax,1),%dl
542927:	2a 54 00 f6          	sub    -0xa(%eax,%eax,1),%dl
54292b:	83 a4 00 00 00 07 0f 	andl   $0xffffff84,0xf070000(%eax,%eax,1)
542932:	84
542933:	7f 01                	jg     0x542936
542935:	00 00                	add    %al,(%eax)
542937:	85 ff                	test   %edi,%edi
542939:	74 18                	je     0x542953
54293b:	33 c9                	xor    %ecx,%ecx
54293d:	8b d7                	mov    %edi,%edx
54293f:	8a 8b e4 00 00 00    	mov    0xe4(%ebx),%cl
542945:	8b c3                	mov    %ebx,%eax
542947:	8b 0c 8d 68 be 69 00 	mov    0x69be68(,%ecx,4),%ecx
54294e:	e8 51 aa 00 00       	call   0x54d3a4
542953:	8b c3                	mov    %ebx,%eax
542955:	e8 e6 b3 00 00       	call   0x54dd40
54295a:	e9 13 04 00 00       	jmp    0x542d72
54295f:	f6 83 a4 00 00 00 07 	testb  $0x7,0xa4(%ebx)
542966:	75 0f                	jne    0x542977
542968:	8b 93 88 00 00 00    	mov    0x88(%ebx),%edx
54296e:	83 fa 05             	cmp    $0x5,%edx
542971:	0f 83 3f 01 00 00    	jae    0x542ab6
542977:	85 ff                	test   %edi,%edi
542979:	74 18                	je     0x542993
54297b:	33 c9                	xor    %ecx,%ecx
54297d:	8b d7                	mov    %edi,%edx
54297f:	8a 8b e4 00 00 00    	mov    0xe4(%ebx),%cl
542985:	8b c3                	mov    %ebx,%eax
542987:	8b 0c 8d 68 be 69 00 	mov    0x69be68(,%ecx,4),%ecx
54298e:	e8 11 aa 00 00       	call   0x54d3a4
542993:	8b c3                	mov    %ebx,%eax
542995:	e8 a6 b3 00 00       	call   0x54dd40
54299a:	e9 d3 03 00 00       	jmp    0x542d72
54299f:	8b 93 a4 00 00 00    	mov    0xa4(%ebx),%edx
5429a5:	83 e2 07             	and    $0x7,%edx
5429a8:	83 fa 04             	cmp    $0x4,%edx
5429ab:	0f 84 05 01 00 00    	je     0x542ab6
5429b1:	85 ff                	test   %edi,%edi
5429b3:	74 21                	je     0x5429d6
5429b5:	f6 83 a4 00 00 00 04 	testb  $0x4,0xa4(%ebx)
5429bc:	74 18                	je     0x5429d6
5429be:	33 c9                	xor    %ecx,%ecx
5429c0:	8b d7                	mov    %edi,%edx
5429c2:	8a 8b e4 00 00 00    	mov    0xe4(%ebx),%cl
5429c8:	8b c3                	mov    %ebx,%eax
5429ca:	8b 0c 8d 68 be 69 00 	mov    0x69be68(,%ecx,4),%ecx
5429d1:	e8 ce a9 00 00       	call   0x54d3a4
5429d6:	8b c3                	mov    %ebx,%eax
5429d8:	e8 63 b3 00 00       	call   0x54dd40
5429dd:	e9 90 03 00 00       	jmp    0x542d72
5429e2:	f6 83 a4 00 00 00 03 	testb  $0x3,0xa4(%ebx)
5429e9:	75 0f                	jne    0x5429fa
5429eb:	8b 93 88 00 00 00    	mov    0x88(%ebx),%edx
5429f1:	83 fa 03             	cmp    $0x3,%edx
5429f4:	0f 83 bc 00 00 00    	jae    0x542ab6
5429fa:	85 ff                	test   %edi,%edi
5429fc:	74 18                	je     0x542a16
5429fe:	33 c9                	xor    %ecx,%ecx
542a00:	8b d7                	mov    %edi,%edx
542a02:	8a 8b e4 00 00 00    	mov    0xe4(%ebx),%cl
542a08:	8b c3                	mov    %ebx,%eax
542a0a:	8b 0c 8d 68 be 69 00 	mov    0x69be68(,%ecx,4),%ecx
542a11:	e8 8e a9 00 00       	call   0x54d3a4
542a16:	8b c3                	mov    %ebx,%eax
542a18:	e8 23 b3 00 00       	call   0x54dd40
542a1d:	e9 50 03 00 00       	jmp    0x542d72
542a22:	8b 93 a4 00 00 00    	mov    0xa4(%ebx),%edx
542a28:	83 e2 03             	and    $0x3,%edx
542a2b:	83 fa 02             	cmp    $0x2,%edx
542a2e:	0f 84 82 00 00 00    	je     0x542ab6
542a34:	85 ff                	test   %edi,%edi
542a36:	74 21                	je     0x542a59
542a38:	f6 83 a4 00 00 00 02 	testb  $0x2,0xa4(%ebx)
542a3f:	74 18                	je     0x542a59
542a41:	33 c9                	xor    %ecx,%ecx
542a43:	8b d7                	mov    %edi,%edx
542a45:	8a 8b e4 00 00 00    	mov    0xe4(%ebx),%cl
542a4b:	8b c3                	mov    %ebx,%eax
542a4d:	8b 0c 8d 68 be 69 00 	mov    0x69be68(,%ecx,4),%ecx
542a54:	e8 4b a9 00 00       	call   0x54d3a4
542a59:	8b c3                	mov    %ebx,%eax
542a5b:	e8 e0 b2 00 00       	call   0x54dd40
542a60:	e9 0d 03 00 00       	jmp    0x542d72
542a65:	f6 83 a4 00 00 00 01 	testb  $0x1,0xa4(%ebx)
542a6c:	75 0b                	jne    0x542a79
542a6e:	8b 93 88 00 00 00    	mov    0x88(%ebx),%edx
542a74:	83 fa 02             	cmp    $0x2,%edx
542a77:	73 3d                	jae    0x542ab6
542a79:	85 ff                	test   %edi,%edi
542a7b:	74 18                	je     0x542a95
542a7d:	33 c9                	xor    %ecx,%ecx
542a7f:	8b d7                	mov    %edi,%edx
542a81:	8a 8b e4 00 00 00    	mov    0xe4(%ebx),%cl
542a87:	8b c3                	mov    %ebx,%eax
542a89:	8b 0c 8d 68 be 69 00 	mov    0x69be68(,%ecx,4),%ecx
542a90:	e8 0f a9 00 00       	call   0x54d3a4
542a95:	8b c3                	mov    %ebx,%eax
542a97:	e8 a4 b2 00 00       	call   0x54dd40
542a9c:	e9 d1 02 00 00       	jmp    0x542d72
542aa1:	f6 83 a4 00 00 00 01 	testb  $0x1,0xa4(%ebx)
542aa8:	75 0c                	jne    0x542ab6
542aaa:	8b c3                	mov    %ebx,%eax
542aac:	e8 8f b2 00 00       	call   0x54dd40
542ab1:	e9 bc 02 00 00       	jmp    0x542d72
542ab6:	f6 43 28 04          	testb  $0x4,0x28(%ebx)
542aba:	75 0c                	jne    0x542ac8
542abc:	ba 16 a4 69 00       	mov    $0x69a416,%edx
542ac1:	8b c3                	mov    %ebx,%eax
542ac3:	e8 f8 83 00 00       	call   0x54aec0
542ac8:	8b 93 ac 00 00 00    	mov    0xac(%ebx),%edx
542ace:	89 53 40             	mov    %edx,0x40(%ebx)
542ad1:	8b 8b 9c 00 00 00    	mov    0x9c(%ebx),%ecx
542ad7:	89 4b 44             	mov    %ecx,0x44(%ebx)
542ada:	8b 43 38             	mov    0x38(%ebx),%eax
542add:	85 c0                	test   %eax,%eax
542adf:	0f 85 b3 00 00 00    	jne    0x542b98
542ae5:	eb 75                	jmp    0x542b5c
542ae7:	33 d2                	xor    %edx,%edx
542ae9:	8b c3                	mov    %ebx,%eax
542aeb:	e8 54 86 00 00       	call   0x54b144
542af0:	8b d4                	mov    %esp,%edx
542af2:	b9 04 00 00 00       	mov    $0x4,%ecx
542af7:	8b c3                	mov    %ebx,%eax
542af9:	e8 5a 81 00 00       	call   0x54ac58
542afe:	8b c4                	mov    %esp,%eax
542b00:	e8 bf 85 00 00       	call   0x54b0c4
542b05:	8b f0                	mov    %eax,%esi
542b07:	89 b3 cc 00 00 00    	mov    %esi,0xcc(%ebx)
542b0d:	81 fe ff ff ff 7f    	cmp    $0x7fffffff,%esi
542b13:	76 0c                	jbe    0x542b21
542b15:	ba 37 a4 69 00       	mov    $0x69a437,%edx
542b1a:	8b c3                	mov    %ebx,%eax
542b1c:	e8 9f 83 00 00       	call   0x54aec0
542b21:	8b c3                	mov    %ebx,%eax
542b23:	e8 a4 c1 00 00       	call   0x54eccc
542b28:	8d b3 dc 00 00 00    	lea    0xdc(%ebx),%esi
542b2e:	8b d6                	mov    %esi,%edx
542b30:	b9 04 00 00 00       	mov    $0x4,%ecx
542b35:	8b c3                	mov    %ebx,%eax
542b37:	e8 e4 85 00 00       	call   0x54b120
542b3c:	6a 04                	push   $0x4
542b3e:	68 77 bd 69 00       	push   $0x69bd77
542b43:	56                   	push   %esi
542b44:	e8 f3 37 fe ff       	call   0x52633c
542b49:	83 c4 0c             	add    $0xc,%esp
542b4c:	85 c0                	test   %eax,%eax
542b4e:	74 0c                	je     0x542b5c
542b50:	ba 4d a4 69 00       	mov    $0x69a44d,%edx
542b55:	8b c3                	mov    %ebx,%eax
542b57:	e8 64 83 00 00       	call   0x54aec0
542b5c:	8b 8b cc 00 00 00    	mov    0xcc(%ebx),%ecx
542b62:	85 c9                	test   %ecx,%ecx
542b64:	74 81                	je     0x542ae7
542b66:	8b 43 70             	mov    0x70(%ebx),%eax
542b69:	89 43 38             	mov    %eax,0x38(%ebx)
542b6c:	8b 53 6c             	mov    0x6c(%ebx),%edx
542b6f:	89 53 34             	mov    %edx,0x34(%ebx)
542b72:	8b 83 cc 00 00 00    	mov    0xcc(%ebx),%eax
542b78:	8b 53 70             	mov    0x70(%ebx),%edx
542b7b:	3b c2                	cmp    %edx,%eax
542b7d:	73 03                	jae    0x542b82
542b7f:	89 43 38             	mov    %eax,0x38(%ebx)
542b82:	8b 4b 38             	mov    0x38(%ebx),%ecx
542b85:	8b 53 6c             	mov    0x6c(%ebx),%edx
542b88:	8b c3                	mov    %ebx,%eax
542b8a:	e8 91 85 00 00       	call   0x54b120
542b8f:	8b 4b 38             	mov    0x38(%ebx),%ecx
542b92:	29 8b cc 00 00 00    	sub    %ecx,0xcc(%ebx)
542b98:	8d 43 34             	lea    0x34(%ebx),%eax
542b9b:	ba 01 00 00 00       	mov    $0x1,%edx
542ba0:	e8 7f 53 fe ff       	call   0x527f24
542ba5:	83 f8 01             	cmp    $0x1,%eax
542ba8:	75 2e                	jne    0x542bd8
542baa:	8b 4b 44             	mov    0x44(%ebx),%ecx
542bad:	85 c9                	test   %ecx,%ecx
542baf:	75 11                	jne    0x542bc2
542bb1:	8b 43 38             	mov    0x38(%ebx),%eax
542bb4:	85 c0                	test   %eax,%eax
542bb6:	75 0a                	jne    0x542bc2
542bb8:	8b 93 cc 00 00 00    	mov    0xcc(%ebx),%edx
542bbe:	85 d2                	test   %edx,%edx
542bc0:	74 0c                	je     0x542bce
542bc2:	ba 63 a4 69 00       	mov    $0x69a463,%edx
542bc7:	8b c3                	mov    %ebx,%eax
542bc9:	e8 f2 82 00 00       	call   0x54aec0
542bce:	83 4b 28 08          	orl    $0x8,0x28(%ebx)
542bd2:	83 4b 2c 20          	orl    $0x20,0x2c(%ebx)
542bd6:	eb 27                	jmp    0x542bff
542bd8:	85 c0                	test   %eax,%eax
542bda:	74 18                	je     0x542bf4
542bdc:	8b 4b 4c             	mov    0x4c(%ebx),%ecx
542bdf:	85 c9                	test   %ecx,%ecx
542be1:	74 05                	je     0x542be8
542be3:	8b 53 4c             	mov    0x4c(%ebx),%edx
542be6:	eb 05                	jmp    0x542bed
542be8:	ba 79 a4 69 00       	mov    $0x69a479,%edx
542bed:	8b c3                	mov    %ebx,%eax
542bef:	e8 cc 82 00 00       	call   0x54aec0
542bf4:	8b 4b 44             	mov    0x44(%ebx),%ecx
542bf7:	85 c9                	test   %ecx,%ecx
542bf9:	0f 85 db fe ff ff    	jne    0x542ada
542bff:	8a 83 e6 00 00 00    	mov    0xe6(%ebx),%al
542c05:	88 83 c8 00 00 00    	mov    %al,0xc8(%ebx)
542c0b:	8b 93 a0 00 00 00    	mov    0xa0(%ebx),%edx
542c11:	89 93 c0 00 00 00    	mov    %edx,0xc0(%ebx)
542c17:	33 d2                	xor    %edx,%edx
542c19:	8a 8b ea 00 00 00    	mov    0xea(%ebx),%cl