40b892:	0e                   	push   %cs
40b893:	09 07                	or     %eax,(%edi)
40b895:	07                   	pop    %es
40b896:	06                   	push   %es
40b897:	04 08                	add    $0x8,%al
40b899:	04 08                	add    $0x8,%al
40b89b:	02 02                	add    (%edx),%al
40b89d:	08 07                	or     %al,(%edi)
40b89f:	06                   	push   %es
40b8a0:	0b 0d 04 0b 0c 02    	or     0x20c0b04,%ecx
40b8a6:	07                   	pop    %es
40b8a7:	07                   	pop    %es
40b8a8:	05 06 0e 0b 0b       	add    $0xb0b0e06,%eax
40b8ad:	0e                   	push   %cs
40b8ae:	07                   	pop    %es
40b8af:	07                   	pop    %es
40b8b0:	05 06 0e 05 0e       	add    $0xe050e06,%eax
40b8b5:	07                   	pop    %es
40b8b6:	08 07                	or     %al,(%edi)
40b8b8:	06                   	push   %es
40b8b9:	0a 0a                	or     (%edx),%cl
40b8bb:	07                   	pop    %es
40b8bc:	0d 0d 04 07 07       	or     $0x707040d,%eax
40b8c1:	05 0c 0a 06 0b       	add    $0xb060a0c,%eax
40b8c6:	0c 08                	or     $0x8,%al
40b8c8:	07                   	pop    %es
40b8c9:	06                   	push   %es
40b8ca:	08 0c 0c             	or     %cl,(%esp,%ecx,1)
40b8cd:	0a 06                	or     (%esi),%al
40b8cf:	02 0e                	add    (%esi),%cl
40b8d1:	07                   	pop    %es
40b8d2:	05 12 80 b5 12       	add    $0x12b58012,%eax
40b8d7:	80 b9 1d 05 1d 05 1d 	cmpb   $0x1d,0x51d051d(%ecx)
40b8de:	05 05 00 00 12       	add    $0x12000005,%eax
40b8e3:	81 7d 05 20 01 1d 05 	cmpl   $0x51d0120,0x5(%ebp)
40b8ea:	0e                   	push   %cs
40b8eb:	06                   	push   %es
40b8ec:	20 01                	and    %al,(%ecx)
40b8ee:	1d 05 1d 05 05       	sbb    $0x5051d05,%eax
40b8f3:	20 01                	and    %al,(%ecx)
40b8f5:	01 1d 05 06 20 01    	add    %ebx,0x1200605
40b8fb:	01 11                	add    %edx,(%ecx)
40b8fd:	81 89 05 20 00 12 81 	orl    $0x20088d81,0x12002005(%ecx)
40b904:	8d 08 20
40b907:	03 1d 05 1d 05 08    	add    0x8051d05,%ebx
40b90d:	08 04 07             	or     %al,(%edi,%eax,1)
40b910:	01 1d 05 0a 07 05    	add    %ebx,0x5070a05
40b916:	1d 05 12 80 bd       	sbb    $0xbd801205,%eax
40b91b:	1c 1c                	sbb    $0x1c,%al
40b91d:	0e                   	push   %cs
40b91e:	07                   	pop    %es
40b91f:	00 01                	add    %al,(%ecx)
40b921:	12 80 bd 1d 05 0d    	adc    0xd051dbd(%eax),%al
40b927:	00 06                	add    %al,(%esi)
40b929:	1c 1c                	sbb    $0x1c,%al
40b92b:	12 7d 0e             	adc    0xe(%ebp),%bh
40b92e:	1d 1c 1d 0e 1d       	sbb    $0x1d0e1d1c,%eax
40b933:	02 05 00 02 0e 0e    	add    0xe0e0200,%al
40b939:	1c 09                	sbb    $0x9,%al
40b93b:	07                   	pop    %es
40b93c:	05 1d 1c 02 12       	add    $0x12021c1d,%eax
40b941:	15 02 0e 05 00       	adc    $0x50e02,%eax
40b946:	00 12                	add    %dl,(%edx)
40b948:	80 bd 07 20 02 1d 1c 	cmpb   $0x1c,0x1d022007(%ebp)
40b94f:	12 7d 02             	adc    0x2(%ebp),%bh
40b952:	05 00 02 02 0e       	add    $0xe020200,%eax
40b957:	0e                   	push   %cs
40b958:	04 00                	add    $0x0,%al
40b95a:	01 0e                	add    %ecx,(%esi)
40b95c:	0e                   	push   %cs
40b95d:	05 20 00 12 81       	add    $0x81120020,%eax
40b962:	9d                   	popf
40b963:	05 20 00 12 81       	add    $0x81120020,%eax
40b968:	a1 06 07 03 1d       	mov    0x1d030706,%eax
40b96d:	1c 02                	sbb    $0x2,%al
40b96f:	0e                   	push   %cs
40b970:	05 07 01 12 80       	add    $0x80120107,%eax
40b975:	c9                   	leave
40b976:	05 20 01 01 12       	add    $0x12010120,%eax
40b97b:	7d 05                	jge    0x40b982
40b97d:	20 00                	and    %al,(%eax)
40b97f:	12 81 a9 07 20 02    	adc    0x22007a9(%ecx),%al
40b985:	01 11                	add    %edx,(%ecx)
40b987:	81 b1 0c 06 20 01 08 	xorl   $0xad811208,0x120060c(%ecx)
40b98e:	12 81 ad
40b991:	05 20 00 12 81       	add    $0x81120020,%eax
40b996:	b5 08                	mov    $0x8,%ch
40b998:	20 03                	and    %al,(%ebx)
40b99a:	01 12                	add    %edx,(%edx)
40b99c:	81 01 08 08 06 20    	addl   $0x20060808,(%ecx)
40b9a2:	01 01                	add    %eax,(%ecx)
40b9a4:	11 81 b9 07 20 04    	adc    %eax,0x42007b9(%ecx)
40b9aa:	01 08                	add    %ecx,(%eax)
40b9ac:	08 08                	or     %cl,(%eax)
40b9ae:	08 06                	or     %al,(%esi)
40b9b0:	20 01                	and    %al,(%ecx)
40b9b2:	01 11                	add    %edx,(%ecx)
40b9b4:	81 bd 05 20 00 12 81 	cmpl   $0x2006c181,0x12002005(%ebp)
40b9bb:	c1 06 20
40b9be:	01 08                	add    %ecx,(%eax)
40b9c0:	12 81 c5 06 20 01    	adc    0x12006c5(%ecx),%al
40b9c6:	01 12                	add    %edx,(%edx)
40b9c8:	81 c9 07 20 02 01    	or     $0x1022007,%ecx
40b9ce:	12 81 01 08 06 20    	adc    0x20060801(%ecx),%al
40b9d4:	01 01                	add    %eax,(%ecx)
40b9d6:	11 81 cd 06 20 01    	adc    %eax,0x12006cd(%ecx)
40b9dc:	01 11                	add    %edx,(%ecx)
40b9de:	81 d1 06 20 01 01    	adc    $0x1012006,%ecx
40b9e4:	11 81 d9 06 20 01    	adc    %eax,0x12006d9(%ecx)
40b9ea:	01 11                	add    %edx,(%ecx)
40b9ec:	81 dd 06 20 01 01    	sbb    $0x1012006,%ebp
40b9f2:	11 81 71 06 20 01    	adc    %eax,0x1200671(%ecx)
40b9f8:	01 12                	add    %edx,(%edx)
40b9fa:	81 e1 06 20 01 01    	and    $0x1012006,%ecx
40ba00:	11 81 e5 04 07 02    	adc    %eax,0x20704e5(%ecx)
40ba06:	0d 0d 09 07 03       	or     $0x307090d,%eax
40ba0b:	02 12                	add    (%edx),%dl
40ba0d:	80 dd 12             	sbb    $0x12,%ch
40ba10:	80 dd 05             	sbb    $0x5,%ch
40ba13:	20 00                	and    %al,(%eax)
40ba15:	12 80 bd 07 20 02    	adc    0x22007bd(%eax),%al
40ba1b:	01 0e                	add    %ecx,(%esi)
40ba1d:	12 80 bd 05 07 01    	adc    0x10705bd(%eax),%al
40ba23:	12 80 e1 05 07 02    	adc    0x20705e1(%eax),%al
40ba29:	1c 1d                	sbb    $0x1d,%al
40ba2b:	05 07 20 02 1c       	add    $0x1c022007,%eax
40ba30:	0e                   	push   %cs
40ba31:	12 80 e1 02 1d 05    	adc    0x51d02e1(%eax),%al
40ba37:	06                   	push   %es
40ba38:	07                   	pop    %es
40ba39:	02 1c 12             	add    (%edx,%edx,1),%bl
40ba3c:	80 e5 14             	and    $0x14,%ch
40ba3f:	07                   	pop    %es
40ba40:	10 0d 0d 0d 0d 0d    	adc    %cl,0xd0d0d0d
40ba46:	0d 0d 0c 0c 0c       	or     $0xc0c0c0d,%eax
40ba4b:	0c 0c                	or     $0xc,%al
40ba4d:	0c 0c                	or     $0xc,%al
40ba4f:	0c 11                	or     $0x11,%al
40ba51:	80 d4 05             	adc    $0x5,%ah
40ba54:	07                   	pop    %es
40ba55:	01 11                	add    %edx,(%ecx)
40ba57:	80 d4 07             	adc    $0x7,%ah
40ba5a:	07                   	pop    %es
40ba5b:	03 0d 0d 11 80 e0    	add    0xe080110d,%ecx
40ba61:	05 07 01 12 80       	add    $0x80120107,%eax
40ba66:	9c                   	pushf
40ba67:	04 00                	add    $0x0,%al
40ba69:	01 01                	add    %eax,(%ecx)
40ba6b:	02 09                	add    (%ecx),%cl
40ba6d:	15 12 80 f1 02       	adc    $0x2f18012,%eax
40ba72:	0e                   	push   %cs
40ba73:	12 80 a8 06 20 01    	adc    0x12006a8(%eax),%al
40ba79:	13 01                	adc    (%ecx),%eax
40ba7b:	13 00                	adc    (%eax),%eax
40ba7d:	08 15 12 79 02 0e    	or     %dl,0xe027912
40ba83:	12 80 a8 09 15 12    	adc    0x121509a8(%eax),%al
40ba89:	80 f1 02             	xor    $0x2,%cl
40ba8c:	0e                   	push   %cs
40ba8d:	11 80 d4 0a 07 04    	adc    %eax,0x4070ad4(%eax)
40ba93:	12 80 e5 08 08 12    	adc    0x120808e5(%eax),%al
40ba99:	80 fd 04             	cmp    $0x4,%ch
40ba9c:	00 01                	add    %al,(%ecx)
40ba9e:	02 0e                	add    (%esi),%cl
40baa0:	06                   	push   %es
40baa1:	20 01                	and    %al,(%ecx)
40baa3:	01 11                	add    %edx,(%ecx)
40baa5:	81 f1 0e 20 03 12    	xor    $0x1203200e,%ecx
40baab:	80 fd 11             	cmp    $0x11,%ch
40baae:	81 f5 11 81 f9 11    	xor    $0x11f98111,%ebp
40bab4:	80 f9 06             	cmp    $0x6,%cl
40bab7:	20 01                	and    %al,(%ecx)
40bab9:	01 12                	add    %edx,(%edx)
40babb:	80 fd 08             	cmp    $0x8,%ch
40babe:	15 12 79 02 0e       	adc    $0xe027912,%eax
40bac3:	11 80 d4 08 b7 7a    	adc    %eax,0x7ab708d4(%eax)
40bac9:	5c                   	pop    %esp
40baca:	56                   	push   %esi
40bacb:	19 34 e0             	sbb    %esi,(%eax,%eiz,8)
40bace:	89 08                	mov    %ecx,(%eax)
40bad0:	b0 3f                	mov    $0x3f,%al
40bad2:	5f                   	pop    %edi
40bad3:	7f 11                	jg     0x40bae6
40bad5:	d5 0a                	aad    $0xa
40bad7:	3a 04 06             	cmp    (%esi,%eax,1),%al
40bada:	00 00                	add    %al,(%eax)
40badc:	00 02                	add    %al,(%edx)
40bade:	06                   	push   %es
40badf:	0e                   	push   %cs
40bae0:	03 06                	add    (%esi),%eax
40bae2:	12 45 03             	adc    0x3(%ebp),%al
40bae5:	06                   	push   %es
40bae6:	12 49 03             	adc    0x3(%ecx),%cl
40bae9:	06                   	push   %es
40baea:	12 4d 03             	adc    0x3(%ebp),%cl
40baed:	06                   	push   %es
40baee:	12 51 02             	adc    0x2(%ecx),%dl
40baf1:	06                   	push   %es
40baf2:	08 03                	or     %al,(%ebx)
40baf4:	06                   	push   %es
40baf5:	11 5d 03             	adc    %ebx,0x3(%ebp)
40baf8:	06                   	push   %es
40baf9:	12 61 07             	adc    0x7(%ecx),%ah
40bafc:	06                   	push   %es
40bafd:	15 12 6d 01 12       	adc    $0x12016d12,%eax
40bb02:	1c 03                	sbb    $0x3,%al
40bb04:	06                   	push   %es
40bb05:	11 75 02             	adc    %esi,0x2(%ebp)
40bb08:	06                   	push   %es
40bb09:	0a 09                	or     (%ecx),%cl
40bb0b:	06                   	push   %es
40bb0c:	15 12 79 02 12       	adc    $0x12027912,%eax
40bb11:	7d 12                	jge    0x40bb25
40bb13:	2c 03                	sub    $0x3,%al
40bb15:	06                   	push   %es
40bb16:	11 40 04             	adc    %eax,0x4(%eax)
40bb19:	06                   	push   %es
40bb1a:	12 80 c1 04 06 12    	adc    0x120604c1(%eax),%al
40bb20:	80 c5 04             	add    $0x4,%ch
40bb23:	06                   	push   %es
40bb24:	11 80 cd 02 06 1c    	adc    %eax,0x1c0602cd(%eax)
40bb2a:	04 06                	add    $0x6,%al
40bb2c:	12 80 d8 04 06 12    	adc    0x120604d8(%eax),%al
40bb32:	80 cc 04             	or     $0x4,%ah
40bb35:	06                   	push   %es
40bb36:	12 80 a4 04 06 12    	adc    0x120604a4(%eax),%al
40bb3c:	80 dd 04             	sbb    $0x4,%ch
40bb3f:	06                   	push   %es
40bb40:	12 80 e1 02 06 0c    	adc    0xc0602e1(%eax),%al
40bb46:	02 06                	add    (%esi),%al
40bb48:	0d 04 06 11 80       	or     $0x80110604,%eax
40bb4d:	d4 05                	aam    $0x5
40bb4f:	06                   	push   %es
40bb50:	1d 11 80 e0 05       	sbb    $0x5e08011,%eax
40bb55:	06                   	push   %es
40bb56:	1d 11 80 b4 05       	sbb    $0x5b48011,%eax
40bb5b:	06                   	push   %es
40bb5c:	1d 11 80 bc 0a       	sbb    $0xabc8011,%eax
40bb61:	06                   	push   %es
40bb62:	15 12 80 f1 02       	adc    $0x2f18012,%eax
40bb67:	0e                   	push   %cs
40bb68:	12 80 a8 04 06 12    	adc    0x120604a8(%eax),%al
40bb6e:	80 a8 04 06 12 80 c0 	subb   $0xc0,-0x7fedf9fc(%eax)
40bb75:	04 06                	add    $0x6,%al
40bb77:	12 80 c8 0a 06 15    	adc    0x15060ac8(%eax),%al
40bb7d:	12 80 f1 02 0e 11    	adc    0x110e02f1(%eax),%al
40bb83:	80 d4 06             	adc    $0x6,%ah
40bb86:	20 02                	and    %al,(%edx)
40bb88:	01 1c 12             	add    %ebx,(%edx,%edx,1)
40bb8b:	59                   	pop    %ecx
40bb8c:	04 20                	add    $0x20,%al
40bb8e:	00 11                	add    %dl,(%ecx)
40bb90:	5d                   	pop    %ebp
40bb91:	05 20 01 01 11       	add    $0x11010120,%eax
40bb96:	5d                   	pop    %ebp
40bb97:	04 20                	add    $0x20,%al
40bb99:	01 02                	add    %eax,(%edx)
40bb9b:	0e                   	push   %cs
40bb9c:	05 20 01 12 69       	add    $0x69120120,%eax
40bba1:	0e                   	push   %cs
40bba2:	06                   	push   %es
40bba3:	20 03                	and    %al,(%ebx)
40bba5:	02 08                	add    (%eax),%cl
40bba7:	08 08                	or     %cl,(%eax)
40bba9:	04 20                	add    $0x20,%al
40bbab:	00 11                	add    %dl,(%ecx)
40bbad:	75 05                	jne    0x40bbb4
40bbaf:	20 01                	and    %al,(%ecx)
40bbb1:	01 11                	add    %edx,(%ecx)
40bbb3:	75 03                	jne    0x40bbb8
40bbb5:	20 00                	and    %al,(%eax)
40bbb7:	0a 04 20             	or     (%eax,%eiz,1),%al
40bbba:	01 01                	add    %eax,(%ecx)
40bbbc:	0a 06                	or     (%esi),%al
40bbbe:	20 01                	and    %al,(%ecx)
40bbc0:	01 1d 12 2c 04 30    	add    %ebx,0x30042c12
40bbc6:	01 00                	add    %eax,(%eax)
40bbc8:	01 05 20 01 01 12    	add    %eax,0x12010120
40bbce:	2c 07                	sub    $0x7,%al
40bbd0:	30 01                	xor    %al,(%ecx)
40bbd2:	01 02                	add    %eax,(%edx)
40bbd4:	10 1e                	adc    %bl,(%esi)
40bbd6:	00 08                	add    %cl,(%eax)
40bbd8:	20 02                	and    %al,(%edx)
40bbda:	02 12                	add    (%edx),%dl
40bbdc:	7d 10                	jge    0x40bbee
40bbde:	12 2c 05 20 00 1d 12 	adc    0x121d0020(,%eax,1),%ch
40bbe5:	2c 06                	sub    $0x6,%al
40bbe7:	30 01                	xor    %al,(%ecx)
40bbe9:	00 1d 1e 00 07 20    	add    %bl,0x2007001e
40bbef:	01 1d 12 2c 12 7d    	add    %ebx,0x7d122c12
40bbf5:	05 30 01 00 1e       	add    $0x1e000130,%eax
40bbfa:	00 06                	add    %al,(%esi)
40bbfc:	20 01                	and    %al,(%ecx)
40bbfe:	12 2c 12             	adc    (%edx,%edx,1),%ch
40bc01:	7d 06                	jge    0x40bc09
40bc03:	20 01                	and    %al,(%ecx)
40bc05:	02 1d 12 7d 04 30    	add    0x30047d12,%bl
40bc0b:	01 00                	add    %eax,(%eax)
40bc0d:	02 04 20             	add    (%eax,%eiz,1),%al
40bc10:	00 11                	add    %dl,(%ecx)
40bc12:	40                   	inc    %eax
40bc13:	05 20 01 01 11       	add    $0x11010120,%eax
40bc18:	40                   	inc    %eax
40bc19:	03 20                	add    (%eax),%esp
40bc1b:	00 0d 05 20 01 08    	add    %cl,0x8012005
40bc21:	11 40 05             	adc    %eax,0x5(%eax)
40bc24:	20 01                	and    %al,(%ecx)
40bc26:	02 11                	add    (%ecx),%dl
40bc28:	40                   	inc    %eax
40bc29:	04 20                	add    $0x20,%al
40bc2b:	01 02                	add    %eax,(%edx)
40bc2d:	08 04 20             	or     %al,(%eax,%eiz,1)
40bc30:	01 02                	add    %eax,(%edx)
40bc32:	1c 05                	sbb    $0x5,%al
40bc34:	00 01                	add    %al,(%ecx)
40bc36:	0d 11 40 06 00       	or     $0x64011,%eax
40bc3b:	01 11                	add    %edx,(%ecx)
40bc3d:	40                   	inc    %eax
40bc3e:	11 40 07             	adc    %eax,0x7(%eax)
40bc41:	00 02                	add    %al,(%edx)
40bc43:	0d 11 40 11 40       	or     $0x40114011,%eax
40bc48:	05 00 01 02 11       	add    $0x11020100,%eax
40bc4d:	40                   	inc    %eax
40bc4e:	08 00                	or     %al,(%eax)
40bc50:	02 11                	add    (%ecx),%dl
40bc52:	40                   	inc    %eax
40bc53:	11 40 11             	adc    %eax,0x11(%eax)
40bc56:	40                   	inc    %eax
40bc57:	07                   	pop    %es
40bc58:	00 02                	add    %al,(%edx)
40bc5a:	11 40 11             	adc    %eax,0x11(%eax)
40bc5d:	40                   	inc    %eax
40bc5e:	08 07                	or     %al,(%edi)
40bc60:	00 02                	add    %al,(%edx)
40bc62:	02 11                	add    (%ecx),%dl
40bc64:	40                   	inc    %eax
40bc65:	11 40 06             	adc    %eax,0x6(%eax)
40bc68:	00 02                	add    %al,(%edx)
40bc6a:	02 11                	add    (%ecx),%dl
40bc6c:	40                   	inc    %eax
40bc6d:	08 05 00 01 05 11    	or     %al,0x11050100
40bc73:	40                   	inc    %eax
40bc74:	05 00 01 06 11       	add    $0x11060100,%eax
40bc79:	40                   	inc    %eax
40bc7a:	05 00 01 07 11       	add    $0x11070100,%eax
40bc7f:	40                   	inc    %eax
40bc80:	05 00 01 08 11       	add    $0x11080100,%eax
40bc85:	40                   	inc    %eax
40bc86:	05 00 01 09 11       	add    $0x11090100,%eax
40bc8b:	40                   	inc    %eax