40b5cb:	89 5d fc             	mov    %ebx,-0x4(%ebp)
40b5ce:	e8 f6 77 00 00       	call   0x412dc9
40b5d3:	ff 75 fc             	push   -0x4(%ebp)
40b5d6:	8b ce                	mov    %esi,%ecx
40b5d8:	68 06 04 00 00       	push   $0x406
40b5dd:	e8 1a 17 00 00       	call   0x40ccfc
40b5e2:	ff 76 0c             	push   0xc(%esi)
40b5e5:	8b ce                	mov    %esi,%ecx
40b5e7:	68 12 04 00 00       	push   $0x412
40b5ec:	e8 0b 17 00 00       	call   0x40ccfc
40b5f1:	ff 76 0c             	push   0xc(%esi)
40b5f4:	8b ce                	mov    %esi,%ecx
40b5f6:	68 fb 03 00 00       	push   $0x3fb
40b5fb:	e8 6c 16 00 00       	call   0x40cc6c
40b600:	ff 76 0c             	push   0xc(%esi)
40b603:	8b ce                	mov    %esi,%ecx
40b605:	68 fc 03 00 00       	push   $0x3fc
40b60a:	e8 5d 16 00 00       	call   0x40cc6c
40b60f:	33 c0                	xor    %eax,%eax
40b611:	8b ce                	mov    %esi,%ecx
40b613:	39 5e 0c             	cmp    %ebx,0xc(%esi)
40b616:	0f 94 c0             	sete   %al
40b619:	50                   	push   %eax
40b61a:	68 17 04 00 00       	push   $0x417
40b61f:	e8 48 16 00 00       	call   0x40cc6c
40b624:	f6 05 80 93 41 00 40 	testb  $0x40,0x419380
40b62b:	bf 1c 04 00 00       	mov    $0x41c,%edi
40b630:	8b ce                	mov    %esi,%ecx
40b632:	74 15                	je     0x40b649
40b634:	53                   	push   %ebx
40b635:	57                   	push   %edi
40b636:	e8 31 16 00 00       	call   0x40cc6c
40b63b:	53                   	push   %ebx
40b63c:	57                   	push   %edi
40b63d:	8b ce                	mov    %esi,%ecx
40b63f:	e8 b8 16 00 00       	call   0x40ccfc
40b644:	33 c0                	xor    %eax,%eax
40b646:	40                   	inc    %eax
40b647:	eb 1c                	jmp    0x40b665
40b649:	ff 76 0c             	push   0xc(%esi)
40b64c:	57                   	push   %edi
40b64d:	e8 1a 16 00 00       	call   0x40cc6c
40b652:	ff 76 14             	push   0x14(%esi)
40b655:	8b ce                	mov    %esi,%ecx
40b657:	57                   	push   %edi
40b658:	e8 9f 16 00 00       	call   0x40ccfc
40b65d:	33 c0                	xor    %eax,%eax
40b65f:	39 5e 14             	cmp    %ebx,0x14(%esi)
40b662:	0f 94 c0             	sete   %al
40b665:	50                   	push   %eax
40b666:	bf 1d 04 00 00       	mov    $0x41d,%edi
40b66b:	8b ce                	mov    %esi,%ecx
40b66d:	57                   	push   %edi
40b66e:	e8 89 16 00 00       	call   0x40ccfc
40b673:	ff 76 0c             	push   0xc(%esi)
40b676:	8b ce                	mov    %esi,%ecx
40b678:	57                   	push   %edi
40b679:	e8 ee 15 00 00       	call   0x40cc6c
40b67e:	ff 76 10             	push   0x10(%esi)
40b681:	8b ce                	mov    %esi,%ecx
40b683:	68 13 04 00 00       	push   $0x413
40b688:	e8 6f 16 00 00       	call   0x40ccfc
40b68d:	33 c0                	xor    %eax,%eax
40b68f:	8b ce                	mov    %esi,%ecx
40b691:	39 5e 10             	cmp    %ebx,0x10(%esi)
40b694:	0f 94 c0             	sete   %al
40b697:	50                   	push   %eax
40b698:	68 fd 03 00 00       	push   $0x3fd
40b69d:	e8 ca 15 00 00       	call   0x40cc6c
40b6a2:	8b ce                	mov    %esi,%ecx
40b6a4:	e8 c4 02 00 00       	call   0x40b96d
40b6a9:	5f                   	pop    %edi
40b6aa:	5e                   	pop    %esi
40b6ab:	5b                   	pop    %ebx
40b6ac:	c9                   	leave
40b6ad:	c2 04 00             	ret    $0x4
40b6b0:	8b ff                	mov    %edi,%edi
40b6b2:	55                   	push   %ebp
40b6b3:	8b ec                	mov    %esp,%ebp
40b6b5:	8b 45 08             	mov    0x8(%ebp),%eax
40b6b8:	53                   	push   %ebx
40b6b9:	56                   	push   %esi
40b6ba:	8b f1                	mov    %ecx,%esi
40b6bc:	33 db                	xor    %ebx,%ebx
40b6be:	8b c8                	mov    %eax,%ecx
40b6c0:	43                   	inc    %ebx
40b6c1:	0f b7 c0             	movzwl %ax,%eax
40b6c4:	05 08 fc ff ff       	add    $0xfffffc08,%eax
40b6c9:	c1 e9 10             	shr    $0x10,%ecx
40b6cc:	57                   	push   %edi
40b6cd:	83 f8 25             	cmp    $0x25,%eax
40b6d0:	0f 87 e1 01 00 00    	ja     0x40b8b7
40b6d6:	0f b6 80 f0 b8 40 00 	movzbl 0x40b8f0(%eax),%eax
40b6dd:	ff 24 85 c0 b8 40 00 	jmp    *0x40b8c0(,%eax,4)
40b6e4:	33 c0                	xor    %eax,%eax
40b6e6:	66 3b c1             	cmp    %cx,%ax
40b6e9:	0f 85 c8 01 00 00    	jne    0x40b8b7
40b6ef:	68 12 04 00 00       	push   $0x412
40b6f4:	8b ce                	mov    %esi,%ecx
40b6f6:	e8 2d 16 00 00       	call   0x40cd28
40b6fb:	48                   	dec    %eax
40b6fc:	8b ce                	mov    %esi,%ecx
40b6fe:	f7 d8                	neg    %eax
40b700:	1b c0                	sbb    %eax,%eax
40b702:	40                   	inc    %eax
40b703:	50                   	push   %eax
40b704:	68 fb 03 00 00       	push   $0x3fb
40b709:	89 46 0c             	mov    %eax,0xc(%esi)
40b70c:	e8 5b 15 00 00       	call   0x40cc6c
40b711:	ff 76 0c             	push   0xc(%esi)
40b714:	8b ce                	mov    %esi,%ecx
40b716:	68 fc 03 00 00       	push   $0x3fc
40b71b:	e8 4c 15 00 00       	call   0x40cc6c
40b720:	33 c0                	xor    %eax,%eax
40b722:	33 ff                	xor    %edi,%edi
40b724:	39 7e 0c             	cmp    %edi,0xc(%esi)
40b727:	8b ce                	mov    %esi,%ecx
40b729:	0f 94 c0             	sete   %al
40b72c:	50                   	push   %eax
40b72d:	68 17 04 00 00       	push   $0x417
40b732:	e8 35 15 00 00       	call   0x40cc6c
40b737:	f6 05 80 93 41 00 40 	testb  $0x40,0x419380
40b73e:	75 03                	jne    0x40b743
40b740:	8b 7e 0c             	mov    0xc(%esi),%edi
40b743:	57                   	push   %edi
40b744:	68 1c 04 00 00       	push   $0x41c
40b749:	8b ce                	mov    %esi,%ecx
40b74b:	e8 1c 15 00 00       	call   0x40cc6c
40b750:	ff 76 0c             	push   0xc(%esi)
40b753:	68 1d 04 00 00       	push   $0x41d
40b758:	8b ce                	mov    %esi,%ecx
40b75a:	e8 0d 15 00 00       	call   0x40cc6c
40b75f:	e9 53 01 00 00       	jmp    0x40b8b7
40b764:	33 c0                	xor    %eax,%eax
40b766:	66 3b c1             	cmp    %cx,%ax
40b769:	0f 85 48 01 00 00    	jne    0x40b8b7
40b76f:	68 1c 04 00 00       	push   $0x41c
40b774:	8b ce                	mov    %esi,%ecx
40b776:	e8 ad 15 00 00       	call   0x40cd28
40b77b:	48                   	dec    %eax
40b77c:	f7 d8                	neg    %eax
40b77e:	1b c0                	sbb    %eax,%eax
40b780:	40                   	inc    %eax
40b781:	89 46 14             	mov    %eax,0x14(%esi)
40b784:	e9 2e 01 00 00       	jmp    0x40b8b7
40b789:	33 c0                	xor    %eax,%eax
40b78b:	66 3b c1             	cmp    %cx,%ax
40b78e:	0f 85 23 01 00 00    	jne    0x40b8b7
40b794:	68 13 04 00 00       	push   $0x413
40b799:	8b ce                	mov    %esi,%ecx
40b79b:	e8 88 15 00 00       	call   0x40cd28
40b7a0:	8b c8                	mov    %eax,%ecx
40b7a2:	33 c0                	xor    %eax,%eax
40b7a4:	3b cb                	cmp    %ebx,%ecx
40b7a6:	0f 94 c0             	sete   %al
40b7a9:	89 46 10             	mov    %eax,0x10(%esi)
40b7ac:	33 c0                	xor    %eax,%eax
40b7ae:	3b cb                	cmp    %ebx,%ecx
40b7b0:	0f 95 c0             	setne  %al
40b7b3:	50                   	push   %eax
40b7b4:	68 fd 03 00 00       	push   $0x3fd
40b7b9:	eb 9d                	jmp    0x40b758
40b7bb:	33 c0                	xor    %eax,%eax
40b7bd:	66 3b c1             	cmp    %cx,%ax
40b7c0:	0f 85 f1 00 00 00    	jne    0x40b8b7
40b7c6:	8b ce                	mov    %esi,%ecx
40b7c8:	e8 1d 02 00 00       	call   0x40b9ea
40b7cd:	e9 e5 00 00 00       	jmp    0x40b8b7
40b7d2:	33 c0                	xor    %eax,%eax
40b7d4:	66 3b c1             	cmp    %cx,%ax
40b7d7:	0f 85 da 00 00 00    	jne    0x40b8b7
40b7dd:	8b ce                	mov    %esi,%ecx
40b7df:	e8 5d 03 00 00       	call   0x40bb41
40b7e4:	e9 ce 00 00 00       	jmp    0x40b8b7
40b7e9:	33 c0                	xor    %eax,%eax
40b7eb:	66 3b c1             	cmp    %cx,%ax
40b7ee:	0f 85 c3 00 00 00    	jne    0x40b8b7
40b7f4:	53                   	push   %ebx
40b7f5:	51                   	push   %ecx
40b7f6:	8b 4e 04             	mov    0x4(%esi),%ecx
40b7f9:	6a 06                	push   $0x6
40b7fb:	5a                   	pop    %edx
40b7fc:	e8 ea 45 00 00       	call   0x40fdeb
40b801:	3b c3                	cmp    %ebx,%eax
40b803:	0f 85 ae 00 00 00    	jne    0x40b8b7
40b809:	83 3d 48 50 41 00 00 	cmpl   $0x0,0x415048
40b810:	0f 84 a1 00 00 00    	je     0x40b8b7
40b816:	6a 00                	push   $0x0
40b818:	51                   	push   %ecx
40b819:	6a 02                	push   $0x2
40b81b:	e8 a3 76 00 00       	call   0x412ec3
40b820:	e9 92 00 00 00       	jmp    0x40b8b7
40b825:	33 c0                	xor    %eax,%eax
40b827:	66 3b c1             	cmp    %cx,%ax
40b82a:	0f 85 87 00 00 00    	jne    0x40b8b7
40b830:	53                   	push   %ebx
40b831:	51                   	push   %ecx
40b832:	8b 4e 04             	mov    0x4(%esi),%ecx
40b835:	6a 29                	push   $0x29
40b837:	5a                   	pop    %edx
40b838:	e8 ae 45 00 00       	call   0x40fdeb
40b83d:	3b c3                	cmp    %ebx,%eax
40b83f:	75 76                	jne    0x40b8b7
40b841:	83 3d 48 50 41 00 00 	cmpl   $0x0,0x415048
40b848:	74 6d                	je     0x40b8b7
40b84a:	6a 00                	push   $0x0
40b84c:	51                   	push   %ecx
40b84d:	53                   	push   %ebx
40b84e:	eb cb                	jmp    0x40b81b
40b850:	33 c0                	xor    %eax,%eax
40b852:	66 3b c1             	cmp    %cx,%ax
40b855:	75 60                	jne    0x40b8b7
40b857:	53                   	push   %ebx
40b858:	51                   	push   %ecx
40b859:	8b 4e 04             	mov    0x4(%esi),%ecx
40b85c:	6a 1d                	push   $0x1d
40b85e:	5a                   	pop    %edx
40b85f:	e8 87 45 00 00       	call   0x40fdeb
40b864:	3b c3                	cmp    %ebx,%eax
40b866:	75 4f                	jne    0x40b8b7
40b868:	33 ff                	xor    %edi,%edi
40b86a:	39 3d 48 50 41 00    	cmp    %edi,0x415048
40b870:	74 0c                	je     0x40b87e
40b872:	57                   	push   %edi
40b873:	51                   	push   %ecx
40b874:	57                   	push   %edi
40b875:	e8 49 76 00 00       	call   0x412ec3
40b87a:	85 c0                	test   %eax,%eax
40b87c:	79 39                	jns    0x40b8b7
40b87e:	57                   	push   %edi
40b87f:	51                   	push   %ecx
40b880:	8b 4e 04             	mov    0x4(%esi),%ecx
40b883:	6a 45                	push   $0x45
40b885:	5a                   	pop    %edx
40b886:	e8 60 45 00 00       	call   0x40fdeb
40b88b:	eb 2a                	jmp    0x40b8b7
40b88d:	33 c0                	xor    %eax,%eax
40b88f:	66 3b c1             	cmp    %cx,%ax
40b892:	75 23                	jne    0x40b8b7
40b894:	8b ce                	mov    %esi,%ecx
40b896:	e8 d2 00 00 00       	call   0x40b96d
40b89b:	eb 1a                	jmp    0x40b8b7
40b89d:	33 c0                	xor    %eax,%eax
40b89f:	66 3b c1             	cmp    %cx,%ax
40b8a2:	75 13                	jne    0x40b8b7
40b8a4:	e8 90 cc ff ff       	call   0x408539
40b8a9:	eb 0c                	jmp    0x40b8b7
40b8ab:	33 d2                	xor    %edx,%edx
40b8ad:	66 3b d1             	cmp    %cx,%dx
40b8b0:	75 05                	jne    0x40b8b7
40b8b2:	e8 90 cb ff ff       	call   0x408447
40b8b7:	5f                   	pop    %edi
40b8b8:	5e                   	pop    %esi
40b8b9:	8b c3                	mov    %ebx,%eax
40b8bb:	5b                   	pop    %ebx
40b8bc:	5d                   	pop    %ebp
40b8bd:	c2 08 00             	ret    $0x8
40b8c0:	9d                   	popf
40b8c1:	b8 40 00 bb b7       	mov    $0xb7bb0040,%eax
40b8c6:	40                   	inc    %eax
40b8c7:	00 d2                	add    %dl,%dl
40b8c9:	b7 40                	mov    $0x40,%bh
40b8cb:	00 25 b8 40 00 8d    	add    %ah,0x8d0040b8
40b8d1:	b8 40 00 50 b8       	mov    $0xb8500040,%eax
40b8d6:	40                   	inc    %eax
40b8d7:	00 ab b8 40 00 e4    	add    %ch,-0x1bffbf48(%ebx)
40b8dd:	b6 40                	mov    $0x40,%dh
40b8df:	00 89 b7 40 00 e9    	add    %cl,-0x16ffbf49(%ecx)
40b8e5:	b7 40                	mov    $0x40,%bh
40b8e7:	00 64 b7 40          	add    %ah,0x40(%edi,%esi,4)
40b8eb:	00 b7 b8 40 00 00    	add    %dh,0x40b8(%edi)
40b8f1:	0b 0b                	or     (%ebx),%ecx
40b8f3:	01 02                	add    %eax,(%edx)
40b8f5:	03 0b                	add    (%ebx),%ecx
40b8f7:	0b 0b                	or     (%ebx),%ecx
40b8f9:	0b 0b                	or     (%ebx),%ecx
40b8fb:	0b 0b                	or     (%ebx),%ecx
40b8fd:	0b 04 0b             	or     (%ebx,%ecx,1),%eax
40b900:	0b 0b                	or     (%ebx),%ecx
40b902:	0b 0b                	or     (%ebx),%ecx
40b904:	05 0b 0b 0b 06       	add    $0x60b0b0b,%eax
40b909:	0b 07                	or     (%edi),%eax
40b90b:	08 0b                	or     %cl,(%ebx)
40b90d:	0b 0b                	or     (%ebx),%ecx
40b90f:	09 0b                	or     %ecx,(%ebx)
40b911:	0b 0b                	or     (%ebx),%ecx
40b913:	0b 0a                	or     (%edx),%ecx
40b915:	0a cc                	or     %ah,%cl
40b917:	cc                   	int3
40b918:	cc                   	int3
40b919:	cc                   	int3
40b91a:	cc                   	int3
40b91b:	cc                   	int3
40b91c:	cc                   	int3
40b91d:	cc                   	int3
40b91e:	cc                   	int3
40b91f:	cc                   	int3
40b920:	8b ff                	mov    %edi,%edi
40b922:	56                   	push   %esi
40b923:	68 06 04 00 00       	push   $0x406
40b928:	8b f1                	mov    %ecx,%esi
40b92a:	e8 f9 13 00 00       	call   0x40cd28
40b92f:	48                   	dec    %eax
40b930:	f7 d8                	neg    %eax
40b932:	1b c0                	sbb    %eax,%eax
40b934:	40                   	inc    %eax
40b935:	50                   	push   %eax
40b936:	68 04 01 00 00       	push   $0x104
40b93b:	e8 bb 74 00 00       	call   0x412dfb
40b940:	ff 76 0c             	push   0xc(%esi)
40b943:	68 23 01 00 00       	push   $0x123
40b948:	e8 ae 74 00 00       	call   0x412dfb
40b94d:	ff 76 14             	push   0x14(%esi)
40b950:	68 3b 01 00 00       	push   $0x13b
40b955:	e8 a1 74 00 00       	call   0x412dfb
40b95a:	ff 76 10             	push   0x10(%esi)
40b95d:	68 01 01 00 00       	push   $0x101
40b962:	e8 94 74 00 00       	call   0x412dfb
40b967:	33 c0                	xor    %eax,%eax
40b969:	5e                   	pop    %esi
40b96a:	c2 04 00             	ret    $0x4
40b96d:	a1 18 98 41 00       	mov    0x419818,%eax
40b972:	53                   	push   %ebx
40b973:	56                   	push   %esi
40b974:	33 f6                	xor    %esi,%esi
40b976:	8b d9                	mov    %ecx,%ebx
40b978:	46                   	inc    %esi
40b979:	57                   	push   %edi
40b97a:	3d 22 00 10 00       	cmp    $0x100022,%eax
40b97f:	74 12                	je     0x40b993
40b981:	3d 23 00 10 00       	cmp    $0x100023,%eax
40b986:	74 0b                	je     0x40b993
40b988:	3d 24 00 10 00       	cmp    $0x100024,%eax
40b98d:	74 04                	je     0x40b993
40b98f:	8b fe                	mov    %esi,%edi
40b991:	eb 02                	jmp    0x40b995
40b993:	33 ff                	xor    %edi,%edi
40b995:	68 06 04 00 00       	push   $0x406
40b99a:	e8 89 13 00 00       	call   0x40cd28
40b99f:	3b c6                	cmp    %esi,%eax
40b9a1:	74 04                	je     0x40b9a7
40b9a3:	33 ff                	xor    %edi,%edi
40b9a5:	eb 02                	jmp    0x40b9a9
40b9a7:	33 f6                	xor    %esi,%esi
40b9a9:	56                   	push   %esi
40b9aa:	68 0c 04 00 00       	push   $0x40c
40b9af:	8b cb                	mov    %ebx,%ecx
40b9b1:	e8 b6 12 00 00       	call   0x40cc6c
40b9b6:	57                   	push   %edi
40b9b7:	68 f8 03 00 00       	push   $0x3f8