41b972:	75 0b                	jne    0x41b97f
41b974:	81 36 00 00 08 00    	xorl   $0x80000,(%esi)
41b97a:	e9 a7 d8 fe ff       	jmp    0x409226
41b97f:	81 0e 00 00 08 00    	orl    $0x80000,(%esi)
41b985:	e9 9c d8 fe ff       	jmp    0x409226
41b98a:	8b 4d e0             	mov    -0x20(%ebp),%ecx
41b98d:	8b 06                	mov    (%esi),%eax
41b98f:	5b                   	pop    %ebx
41b990:	66 3b cb             	cmp    %bx,%cx
41b993:	75 07                	jne    0x41b99c
41b995:	35 00 80 00 00       	xor    $0x8000,%eax
41b99a:	eb 05                	jmp    0x41b9a1
41b99c:	0d 00 80 00 00       	or     $0x8000,%eax
41b9a1:	89 06                	mov    %eax,(%esi)
41b9a3:	e9 0a d9 fe ff       	jmp    0x4092b2
41b9a8:	83 e8 44             	sub    $0x44,%eax
41b9ab:	74 4a                	je     0x41b9f7
41b9ad:	83 e8 08             	sub    $0x8,%eax
41b9b0:	74 26                	je     0x41b9d8
41b9b2:	48                   	dec    %eax
41b9b3:	83 e8 01             	sub    $0x1,%eax
41b9b6:	0f 85 b8 01 00 00    	jne    0x41bb74
41b9bc:	8b 4d e0             	mov    -0x20(%ebp),%ecx
41b9bf:	5b                   	pop    %ebx
41b9c0:	66 3b cb             	cmp    %bx,%cx
41b9c3:	75 0b                	jne    0x41b9d0
41b9c5:	81 0e 00 00 02 00    	orl    $0x20000,(%esi)
41b9cb:	e9 e2 d8 fe ff       	jmp    0x4092b2
41b9d0:	83 0e 02             	orl    $0x2,(%esi)
41b9d3:	e9 da d8 fe ff       	jmp    0x4092b2
41b9d8:	8b 4d e0             	mov    -0x20(%ebp),%ecx
41b9db:	5b                   	pop    %ebx
41b9dc:	66 3b cb             	cmp    %bx,%cx
41b9df:	75 0b                	jne    0x41b9ec
41b9e1:	81 36 80 00 00 00    	xorl   $0x80,(%esi)
41b9e7:	e9 c6 d8 fe ff       	jmp    0x4092b2
41b9ec:	81 0e 80 00 00 00    	orl    $0x80,(%esi)
41b9f2:	e9 bb d8 fe ff       	jmp    0x4092b2
41b9f7:	8b 4d e0             	mov    -0x20(%ebp),%ecx
41b9fa:	5b                   	pop    %ebx
41b9fb:	66 3b cb             	cmp    %bx,%cx
41b9fe:	75 0b                	jne    0x41ba0b
41ba00:	81 36 00 02 00 00    	xorl   $0x200,(%esi)
41ba06:	e9 a7 d8 fe ff       	jmp    0x4092b2
41ba0b:	81 0e 00 02 00 00    	orl    $0x200,(%esi)
41ba11:	e9 9c d8 fe ff       	jmp    0x4092b2
41ba16:	8d 4b 02             	lea    0x2(%ebx),%ecx
41ba19:	33 d2                	xor    %edx,%edx
41ba1b:	66 8b 03             	mov    (%ebx),%ax
41ba1e:	83 c3 02             	add    $0x2,%ebx
41ba21:	66 3b c2             	cmp    %dx,%ax
41ba24:	75 f5                	jne    0x41ba1b
41ba26:	2b d9                	sub    %ecx,%ebx
41ba28:	d1 fb                	sar    $1,%ebx
41ba2a:	83 fb 01             	cmp    $0x1,%ebx
41ba2d:	0f 87 37 01 00 00    	ja     0x41bb6a
41ba33:	89 56 0c             	mov    %edx,0xc(%esi)
41ba36:	89 56 14             	mov    %edx,0x14(%esi)
41ba39:	e9 f8 d7 fe ff       	jmp    0x409236
41ba3e:	83 e8 01             	sub    $0x1,%eax
41ba41:	74 6b                	je     0x41baae
41ba43:	83 e8 03             	sub    $0x3,%eax
41ba46:	74 4b                	je     0x41ba93
41ba48:	83 e8 01             	sub    $0x1,%eax
41ba4b:	0f 85 21 01 00 00    	jne    0x41bb72
41ba51:	8b 45 e4             	mov    -0x1c(%ebp),%eax
41ba54:	33 c9                	xor    %ecx,%ecx
41ba56:	81 0e 02 04 00 00    	orl    $0x402,(%esi)
41ba5c:	66 39 4c 47 06       	cmp    %cx,0x6(%edi,%eax,2)
41ba61:	0f 84 cf d7 fe ff    	je     0x409236
41ba67:	8b 4d e0             	mov    -0x20(%ebp),%ecx
41ba6a:	6a 2d                	push   $0x2d
41ba6c:	5b                   	pop    %ebx
41ba6d:	33 c0                	xor    %eax,%eax
41ba6f:	66 3b cb             	cmp    %bx,%cx
41ba72:	0f 94 c0             	sete   %al
41ba75:	8d 04 45 04 00 00 00 	lea    0x4(,%eax,2),%eax
41ba7c:	03 c7                	add    %edi,%eax
41ba7e:	50                   	push   %eax
41ba7f:	6a 01                	push   $0x1
41ba81:	68 76 23 00 00       	push   $0x2376
41ba86:	e8 59 be fe ff       	call   0x4078e4
41ba8b:	83 c4 0c             	add    $0xc,%esp
41ba8e:	e9 68 d8 fe ff       	jmp    0x4092fb
41ba93:	8b 4d e0             	mov    -0x20(%ebp),%ecx
41ba96:	6a 2d                	push   $0x2d
41ba98:	5b                   	pop    %ebx
41ba99:	66 3b cb             	cmp    %bx,%cx
41ba9c:	75 08                	jne    0x41baa6
41ba9e:	83 36 04             	xorl   $0x4,(%esi)
41baa1:	e9 0c d8 fe ff       	jmp    0x4092b2
41baa6:	83 0e 04             	orl    $0x4,(%esi)
41baa9:	e9 04 d8 fe ff       	jmp    0x4092b2
41baae:	8b 4d e0             	mov    -0x20(%ebp),%ecx
41bab1:	6a 2d                	push   $0x2d
41bab3:	5b                   	pop    %ebx
41bab4:	66 3b cb             	cmp    %bx,%cx
41bab7:	75 0a                	jne    0x41bac3
41bab9:	33 c0                	xor    %eax,%eax
41babb:	89 46 5c             	mov    %eax,0x5c(%esi)
41babe:	e9 73 d7 fe ff       	jmp    0x409236
41bac3:	8b 45 e4             	mov    -0x1c(%ebp),%eax
41bac6:	8b d6                	mov    %esi,%edx
41bac8:	83 c0 03             	add    $0x3,%eax
41bacb:	8d 0c 47             	lea    (%edi,%eax,2),%ecx
41bace:	e8 6a ea 00 00       	call   0x42a53d
41bad3:	e9 1b d8 fe ff       	jmp    0x4092f3
41bad8:	8b 4d e0             	mov    -0x20(%ebp),%ecx
41badb:	6a 2d                	push   $0x2d
41badd:	5b                   	pop    %ebx
41bade:	66 3b cb             	cmp    %bx,%cx
41bae1:	75 0b                	jne    0x41baee
41bae3:	81 36 00 00 10 00    	xorl   $0x100000,(%esi)
41bae9:	e9 c4 d7 fe ff       	jmp    0x4092b2
41baee:	81 0e 00 00 10 00    	orl    $0x100000,(%esi)
41baf4:	e9 b9 d7 fe ff       	jmp    0x4092b2
41baf9:	8b 4d e0             	mov    -0x20(%ebp),%ecx
41bafc:	6a 2d                	push   $0x2d
41bafe:	5b                   	pop    %ebx
41baff:	66 3b cb             	cmp    %bx,%cx
41bb02:	75 0b                	jne    0x41bb0f
41bb04:	81 36 00 00 04 00    	xorl   $0x40000,(%esi)
41bb0a:	e9 a3 d7 fe ff       	jmp    0x4092b2
41bb0f:	81 0e 00 00 04 00    	orl    $0x40000,(%esi)
41bb15:	e9 98 d7 fe ff       	jmp    0x4092b2
41bb1a:	8b 4d e0             	mov    -0x20(%ebp),%ecx
41bb1d:	6a 2d                	push   $0x2d
41bb1f:	5b                   	pop    %ebx
41bb20:	66 3b cb             	cmp    %bx,%cx
41bb23:	75 08                	jne    0x41bb2d
41bb25:	83 36 08             	xorl   $0x8,(%esi)
41bb28:	e9 85 d7 fe ff       	jmp    0x4092b2
41bb2d:	83 0e 08             	orl    $0x8,(%esi)
41bb30:	e9 7d d7 fe ff       	jmp    0x4092b2
41bb35:	6a 10                	push   $0x10
41bb37:	59                   	pop    %ecx
41bb38:	e8 93 21 ff ff       	call   0x40dcd0
41bb3d:	85 c0                	test   %eax,%eax
41bb3f:	74 68                	je     0x41bba9
41bb41:	89 43 0c             	mov    %eax,0xc(%ebx)
41bb44:	33 c9                	xor    %ecx,%ecx
41bb46:	8b d8                	mov    %eax,%ebx
41bb48:	89 48 0c             	mov    %ecx,0xc(%eax)
41bb4b:	8b 46 48             	mov    0x48(%esi),%eax
41bb4e:	89 5d dc             	mov    %ebx,-0x24(%ebp)
41bb51:	e9 ff d6 fe ff       	jmp    0x409255
41bb56:	33 c0                	xor    %eax,%eax
41bb58:	50                   	push   %eax
41bb59:	68 82 23 00 00       	push   $0x2382
41bb5e:	e8 5a a8 fe ff       	call   0x4063bd
41bb63:	59                   	pop    %ecx
41bb64:	59                   	pop    %ecx
41bb65:	e9 91 d7 fe ff       	jmp    0x4092fb
41bb6a:	8d 47 06             	lea    0x6(%edi),%eax
41bb6d:	e9 0c ff ff ff       	jmp    0x41ba7e
41bb72:	6a 2d                	push   $0x2d
41bb74:	5a                   	pop    %edx
41bb75:	8b 4d e0             	mov    -0x20(%ebp),%ecx
41bb78:	6a 2f                	push   $0x2f
41bb7a:	58                   	pop    %eax
41bb7b:	66 89 45 e8          	mov    %ax,-0x18(%ebp)
41bb7f:	66 8b 47 04          	mov    0x4(%edi),%ax
41bb83:	66 89 45 ea          	mov    %ax,-0x16(%ebp)
41bb87:	33 c0                	xor    %eax,%eax
41bb89:	66 3b ca             	cmp    %dx,%cx
41bb8c:	66 89 45 ec          	mov    %ax,-0x14(%ebp)
41bb90:	0f 94 c0             	sete   %al
41bb93:	8d 04 45 04 00 00 00 	lea    0x4(,%eax,2),%eax
41bb9a:	03 c7                	add    %edi,%eax
41bb9c:	50                   	push   %eax
41bb9d:	6a 01                	push   $0x1
41bb9f:	68 75 23 00 00       	push   $0x2375
41bba4:	e9 dd fe ff ff       	jmp    0x41ba86
41bba9:	e8 74 dd 00 00       	call   0x429922
41bbae:	6a 01                	push   $0x1
41bbb0:	68 30 0a 44 00       	push   $0x440a30
41bbb5:	ff 15 30 a4 44 00    	call   *0x44a430
41bbbb:	cc                   	int3
41bbbc:	8d 95 90 fe ff ff    	lea    -0x170(%ebp),%edx
41bbc2:	e8 10 8d 00 00       	call   0x4248d7
41bbc7:	e9 90 d7 fe ff       	jmp    0x40935c
41bbcc:	e8 7f dd fe ff       	call   0x409950
41bbd1:	83 c4 20             	add    $0x20,%esp
41bbd4:	e9 88 01 00 00       	jmp    0x41bd61
41bbd9:	6a 02                	push   $0x2
41bbdb:	33 ff                	xor    %edi,%edi
41bbdd:	80 3d 55 67 43 00 00 	cmpb   $0x0,0x436755
41bbe4:	5b                   	pop    %ebx
41bbe5:	0f 84 7d 01 00 00    	je     0x41bd68
41bbeb:	89 bd a4 fe ff ff    	mov    %edi,-0x15c(%ebp)
41bbf1:	8d 85 b8 fe ff ff    	lea    -0x148(%ebp),%eax
41bbf7:	8d 7b 7e             	lea    0x7e(%ebx),%edi
41bbfa:	57                   	push   %edi
41bbfb:	50                   	push   %eax
41bbfc:	68 03 10 00 00       	push   $0x1003
41bc01:	e8 8b cb fe ff       	call   0x408791
41bc06:	50                   	push   %eax
41bc07:	ff 15 84 a1 44 00    	call   *0x44a184
41bc0d:	85 c0                	test   %eax,%eax
41bc0f:	75 37                	jne    0x41bc48
41bc11:	8d 8d b8 fe ff ff    	lea    -0x148(%ebp),%ecx
41bc17:	ba fc 39 40 00       	mov    $0x4039fc,%edx
41bc1c:	8b c1                	mov    %ecx,%eax
41bc1e:	2b d0                	sub    %eax,%edx
41bc20:	8d 87 7e ff ff 7f    	lea    0x7fffff7e(%edi),%eax
41bc26:	85 c0                	test   %eax,%eax
41bc28:	74 13                	je     0x41bc3d
41bc2a:	0f b7 04 0a          	movzwl (%edx,%ecx,1),%eax
41bc2e:	66 85 c0             	test   %ax,%ax
41bc31:	74 0a                	je     0x41bc3d
41bc33:	66 89 01             	mov    %ax,(%ecx)
41bc36:	03 cb                	add    %ebx,%ecx
41bc38:	83 ef 01             	sub    $0x1,%edi
41bc3b:	75 e3                	jne    0x41bc20
41bc3d:	85 ff                	test   %edi,%edi
41bc3f:	75 02                	jne    0x41bc43
41bc41:	2b cb                	sub    %ebx,%ecx
41bc43:	33 c0                	xor    %eax,%eax
41bc45:	66 89 01             	mov    %ax,(%ecx)
41bc48:	66 8b 85 b8 fe ff ff 	mov    -0x148(%ebp),%ax
41bc4f:	8d bd b8 fe ff ff    	lea    -0x148(%ebp),%edi
41bc55:	66 85 c0             	test   %ax,%ax
41bc58:	0f 84 b8 00 00 00    	je     0x41bd16
41bc5e:	0f b7 c8             	movzwl %ax,%ecx
41bc61:	33 f6                	xor    %esi,%esi
41bc63:	89 8d 9c fe ff ff    	mov    %ecx,-0x164(%ebp)
41bc69:	66 83 f9 27          	cmp    $0x27,%cx
41bc6d:	75 15                	jne    0x41bc84
41bc6f:	33 c0                	xor    %eax,%eax
41bc71:	03 fb                	add    %ebx,%edi
41bc73:	39 85 a4 fe ff ff    	cmp    %eax,-0x15c(%ebp)
41bc79:	0f 94 c0             	sete   %al
41bc7c:	89 85 a4 fe ff ff    	mov    %eax,-0x15c(%ebp)
41bc82:	eb 76                	jmp    0x41bcfa
41bc84:	39 b5 a4 fe ff ff    	cmp    %esi,-0x15c(%ebp)
41bc8a:	74 04                	je     0x41bc90
41bc8c:	03 fb                	add    %ebx,%edi
41bc8e:	eb 6a                	jmp    0x41bcfa
41bc90:	66 83 f9 68          	cmp    $0x68,%cx
41bc94:	74 0c                	je     0x41bca2
41bc96:	66 83 f9 48          	cmp    $0x48,%cx
41bc9a:	74 06                	je     0x41bca2
41bc9c:	66 83 f9 6d          	cmp    $0x6d,%cx
41bca0:	75 58                	jne    0x41bcfa
41bca2:	8b d6                	mov    %esi,%edx
41bca4:	03 fb                	add    %ebx,%edi
41bca6:	42                   	inc    %edx
41bca7:	66 39 0f             	cmp    %cx,(%edi)
41bcaa:	74 f8                	je     0x41bca4
41bcac:	8b c2                	mov    %edx,%eax
41bcae:	f7 d8                	neg    %eax
41bcb0:	8d 04 47             	lea    (%edi,%eax,2),%eax
41bcb3:	89 85 a0 fe ff ff    	mov    %eax,-0x160(%ebp)
41bcb9:	8d 78 02             	lea    0x2(%eax),%edi
41bcbc:	83 fa 01             	cmp    $0x1,%edx
41bcbf:	75 39                	jne    0x41bcfa
41bcc1:	8b c8                	mov    %eax,%ecx
41bcc3:	8d 51 02             	lea    0x2(%ecx),%edx
41bcc6:	66 8b 01             	mov    (%ecx),%ax
41bcc9:	03 cb                	add    %ebx,%ecx
41bccb:	66 3b c6             	cmp    %si,%ax
41bcce:	75 f6                	jne    0x41bcc6
41bcd0:	2b ca                	sub    %edx,%ecx
41bcd2:	d1 f9                	sar    $1,%ecx
41bcd4:	8d 04 4d 02 00 00 00 	lea    0x2(,%ecx,2),%eax
41bcdb:	50                   	push   %eax
41bcdc:	ff b5 a0 fe ff ff    	push   -0x160(%ebp)
41bce2:	57                   	push   %edi
41bce3:	e8 5a bf ff ff       	call   0x417c42
41bce8:	8b 8d a0 fe ff ff    	mov    -0x160(%ebp),%ecx
41bcee:	83 c4 0c             	add    $0xc,%esp
41bcf1:	8b 85 9c fe ff ff    	mov    -0x164(%ebp),%eax
41bcf7:	66 89 01             	mov    %ax,(%ecx)
41bcfa:	03 fb                	add    %ebx,%edi
41bcfc:	0f b7 07             	movzwl (%edi),%eax
41bcff:	8b c8                	mov    %eax,%ecx
41bd01:	89 8d 9c fe ff ff    	mov    %ecx,-0x164(%ebp)
41bd07:	66 85 c0             	test   %ax,%ax
41bd0a:	0f 85 59 ff ff ff    	jne    0x41bc69
41bd10:	8b b5 98 fe ff ff    	mov    -0x168(%ebp),%esi
41bd16:	6a 20                	push   $0x20
41bd18:	8d 45 b8             	lea    -0x48(%ebp),%eax
41bd1b:	50                   	push   %eax
41bd1c:	8d 85 b8 fe ff ff    	lea    -0x148(%ebp),%eax
41bd22:	50                   	push   %eax
41bd23:	8d 85 a8 fe ff ff    	lea    -0x158(%ebp),%eax
41bd29:	50                   	push   %eax
41bd2a:	53                   	push   %ebx
41bd2b:	e8 61 ca fe ff       	call   0x408791
41bd30:	50                   	push   %eax
41bd31:	ff 15 50 a0 44 00    	call   *0x44a050
41bd37:	85 c0                	test   %eax,%eax
41bd39:	75 04                	jne    0x41bd3f
41bd3b:	66 89 45 b8          	mov    %ax,-0x48(%ebp)
41bd3f:	33 ff                	xor    %edi,%edi
41bd41:	85 f6                	test   %esi,%esi
41bd43:	75 7a                	jne    0x41bdbf
41bd45:	8d 55 b8             	lea    -0x48(%ebp),%edx
41bd48:	8d 4a 02             	lea    0x2(%edx),%ecx
41bd4b:	66 8b 02             	mov    (%edx),%ax
41bd4e:	03 d3                	add    %ebx,%edx
41bd50:	66 3b c7             	cmp    %di,%ax
41bd53:	75 f6                	jne    0x41bd4b
41bd55:	2b d1                	sub    %ecx,%edx
41bd57:	8d 4d b8             	lea    -0x48(%ebp),%ecx
41bd5a:	d1 fa                	sar    $1,%edx
41bd5c:	e8 2c dc fe ff       	call   0x40998d
41bd61:	8b f0                	mov    %eax,%esi
41bd63:	e9 87 d6 fe ff       	jmp    0x4093ef
41bd68:	b8 14 3a 40 00       	mov    $0x403a14,%eax
41bd6d:	0f b7 8d b0 fe ff ff 	movzwl -0x150(%ebp),%ecx
41bd74:	39 3d c4 e0 42 00    	cmp    %edi,0x42e0c4
41bd7a:	74 1a                	je     0x41bd96
41bd7c:	6a 0c                	push   $0xc
41bd7e:	5a                   	pop    %edx
41bd7f:	3b ca                	cmp    %edx,%ecx
41bd81:	72 0b                	jb     0x41bd8e
41bd83:	76 02                	jbe    0x41bd87
41bd85:	2b ca                	sub    %edx,%ecx
41bd87:	b8 18 3a 40 00       	mov    $0x403a18,%eax
41bd8c:	eb 0d                	jmp    0x41bd9b
41bd8e:	85 c9                	test   %ecx,%ecx
41bd90:	75 09                	jne    0x41bd9b
41bd92:	8b ca                	mov    %edx,%ecx
41bd94:	eb 05                	jmp    0x41bd9b
41bd96:	b8 4c 23 40 00       	mov    $0x40234c,%eax
41bd9b:	50                   	push   %eax
41bd9c:	0f b7 85 b2 fe ff ff 	movzwl -0x14e(%ebp),%eax
41bda3:	50                   	push   %eax
41bda4:	68 e0 c9 43 00       	push   $0x43c9e0
41bda9:	51                   	push   %ecx
41bdaa:	68 8c 3a 40 00       	push   $0x403a8c
41bdaf:	8d 45 b8             	lea    -0x48(%ebp),%eax
41bdb2:	6a 20                	push   $0x20
41bdb4:	50                   	push   %eax
41bdb5:	e8 05 dd fe ff       	call   0x409abf
41bdba:	83 c4 1c             	add    $0x1c,%esp
41bdbd:	eb 82                	jmp    0x41bd41
41bdbf:	8b 55 0c             	mov    0xc(%ebp),%edx
41bdc2:	8d 45 b8             	lea    -0x48(%ebp),%eax
41bdc5:	50                   	push   %eax
41bdc6:	8b ce                	mov    %esi,%ecx
41bdc8:	e8 d3 35 ff ff       	call   0x40f3a0
41bdcd:	8d 4e 02             	lea    0x2(%esi),%ecx
41bdd0:	66 8b 06             	mov    (%esi),%ax
41bdd3:	03 f3                	add    %ebx,%esi
41bdd5:	66 3b c7             	cmp    %di,%ax
41bdd8:	75 f6                	jne    0x41bdd0
41bdda:	2b f1                	sub    %ecx,%esi
41bddc:	e9 0c d6 fe ff       	jmp    0x4093ed