409786:	8b 4e 10             	mov    0x10(%esi),%ecx
409789:	ba 10 34 40 00       	mov    $0x403410,%edx
40978e:	e8 81 db ff ff       	call   0x407314
409793:	8d 45 d0             	lea    -0x30(%ebp),%eax
409796:	50                   	push   %eax
409797:	8d 45 bc             	lea    -0x44(%ebp),%eax
40979a:	50                   	push   %eax
40979b:	51                   	push   %ecx
40979c:	6a 10                	push   $0x10
40979e:	5a                   	pop    %edx
40979f:	8b cb                	mov    %ebx,%ecx
4097a1:	e8 bf e8 ff ff       	call   0x408065
4097a6:	85 c0                	test   %eax,%eax
4097a8:	74 0a                	je     0x4097b4
4097aa:	68 5c 29 40 00       	push   $0x40295c
4097af:	e9 8e 0a 00 00       	jmp    0x40a242
4097b4:	8b 4d d0             	mov    -0x30(%ebp),%ecx
4097b7:	8b 41 0c             	mov    0xc(%ecx),%eax
4097ba:	85 c0                	test   %eax,%eax
4097bc:	74 23                	je     0x4097e1
4097be:	83 f8 02             	cmp    $0x2,%eax
4097c1:	74 0a                	je     0x4097cd
4097c3:	68 5c 29 40 00       	push   $0x40295c
4097c8:	e9 2b fc ff ff       	jmp    0x4093f8
4097cd:	85 c0                	test   %eax,%eax
4097cf:	74 10                	je     0x4097e1
4097d1:	ff 31                	push   (%ecx)
4097d3:	68 30 34 40 00       	push   $0x403430
4097d8:	56                   	push   %esi
4097d9:	e8 6a eb ff ff       	call   0x408348
4097de:	83 c4 0c             	add    $0xc,%esp
4097e1:	8b 4e 10             	mov    0x10(%esi),%ecx
4097e4:	ba 70 34 40 00       	mov    $0x403470,%edx
4097e9:	e8 26 db ff ff       	call   0x407314
4097ee:	8b 4e 10             	mov    0x10(%esi),%ecx
4097f1:	ba 98 34 40 00       	mov    $0x403498,%edx
4097f6:	e8 19 db ff ff       	call   0x407314
4097fb:	8d 45 d0             	lea    -0x30(%ebp),%eax
4097fe:	50                   	push   %eax
4097ff:	8d 45 bc             	lea    -0x44(%ebp),%eax
409802:	50                   	push   %eax
409803:	51                   	push   %ecx
409804:	6a 09                	push   $0x9
409806:	5a                   	pop    %edx
409807:	8b cb                	mov    %ebx,%ecx
409809:	e8 57 e8 ff ff       	call   0x408065
40980e:	85 c0                	test   %eax,%eax
409810:	74 0a                	je     0x40981c
409812:	68 b0 29 40 00       	push   $0x4029b0
409817:	e9 26 0a 00 00       	jmp    0x40a242
40981c:	8b 7d d0             	mov    -0x30(%ebp),%edi
40981f:	8b 47 0c             	mov    0xc(%edi),%eax
409822:	85 c0                	test   %eax,%eax
409824:	0f 84 85 00 00 00    	je     0x4098af
40982a:	83 f8 03             	cmp    $0x3,%eax
40982d:	74 0a                	je     0x409839
40982f:	68 b0 29 40 00       	push   $0x4029b0
409834:	e9 bf fb ff ff       	jmp    0x4093f8
409839:	85 c0                	test   %eax,%eax
40983b:	74 72                	je     0x4098af
40983d:	33 c0                	xor    %eax,%eax
40983f:	c7 45 e8 07 00 00 00 	movl   $0x7,-0x18(%ebp)
409846:	89 45 e4             	mov    %eax,-0x1c(%ebp)
409849:	66 89 45 d4          	mov    %ax,-0x2c(%ebp)
40984d:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
409851:	b1 20                	mov    $0x20,%cl
409853:	8b 07                	mov    (%edi),%eax
409855:	8b 57 04             	mov    0x4(%edi),%edx
409858:	e8 d3 53 00 00       	call   0x40ec30
40985d:	89 45 b0             	mov    %eax,-0x50(%ebp)
409860:	8d 55 d4             	lea    -0x2c(%ebp),%edx
409863:	8b 07                	mov    (%edi),%eax
409865:	8d 4d ac             	lea    -0x54(%ebp),%ecx
409868:	89 45 ac             	mov    %eax,-0x54(%ebp)
40986b:	e8 e3 45 00 00       	call   0x40de53
409870:	8b 4e 10             	mov    0x10(%esi),%ecx
409873:	ba b8 34 40 00       	mov    $0x4034b8,%edx
409878:	e8 97 da ff ff       	call   0x407314
40987d:	83 7d e8 08          	cmpl   $0x8,-0x18(%ebp)
409881:	8b 45 d4             	mov    -0x2c(%ebp),%eax
409884:	73 03                	jae    0x409889
409886:	8d 45 d4             	lea    -0x2c(%ebp),%eax
409889:	50                   	push   %eax
40988a:	8b ce                	mov    %esi,%ecx
40988c:	e8 02 ec ff ff       	call   0x408493
409891:	8b 4e 10             	mov    0x10(%esi),%ecx
409894:	ba d0 34 40 00       	mov    $0x4034d0,%edx
409899:	e8 76 da ff ff       	call   0x407314
40989e:	33 c0                	xor    %eax,%eax
4098a0:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
4098a4:	50                   	push   %eax
4098a5:	6a 01                	push   $0x1
4098a7:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
4098aa:	e8 41 cc ff ff       	call   0x4064f0
4098af:	8d 45 d0             	lea    -0x30(%ebp),%eax
4098b2:	50                   	push   %eax
4098b3:	8d 45 bc             	lea    -0x44(%ebp),%eax
4098b6:	50                   	push   %eax
4098b7:	51                   	push   %ecx
4098b8:	6a 0a                	push   $0xa
4098ba:	5a                   	pop    %edx
4098bb:	8b cb                	mov    %ebx,%ecx
4098bd:	e8 a3 e7 ff ff       	call   0x408065
4098c2:	85 c0                	test   %eax,%eax
4098c4:	74 0a                	je     0x4098d0
4098c6:	68 dc 29 40 00       	push   $0x4029dc
4098cb:	e9 72 09 00 00       	jmp    0x40a242
4098d0:	8b 7d d0             	mov    -0x30(%ebp),%edi
4098d3:	8b 47 0c             	mov    0xc(%edi),%eax
4098d6:	85 c0                	test   %eax,%eax
4098d8:	74 3b                	je     0x409915
4098da:	83 f8 04             	cmp    $0x4,%eax
4098dd:	74 0a                	je     0x4098e9
4098df:	68 dc 29 40 00       	push   $0x4029dc
4098e4:	e9 0f fb ff ff       	jmp    0x4093f8
4098e9:	85 c0                	test   %eax,%eax
4098eb:	74 28                	je     0x409915
4098ed:	8b 4e 10             	mov    0x10(%esi),%ecx
4098f0:	ba ec 34 40 00       	mov    $0x4034ec,%edx
4098f5:	e8 1a da ff ff       	call   0x407314
4098fa:	8b 17                	mov    (%edi),%edx
4098fc:	85 d2                	test   %edx,%edx
4098fe:	74 08                	je     0x409908
409900:	8b 4e 10             	mov    0x10(%esi),%ecx
409903:	e8 0c da ff ff       	call   0x407314
409908:	8b 4e 10             	mov    0x10(%esi),%ecx
40990b:	ba 1c 35 40 00       	mov    $0x40351c,%edx
409910:	e8 ff d9 ff ff       	call   0x407314
409915:	8d 45 d0             	lea    -0x30(%ebp),%eax
409918:	50                   	push   %eax
409919:	8d 45 bc             	lea    -0x44(%ebp),%eax
40991c:	50                   	push   %eax
40991d:	51                   	push   %ecx
40991e:	6a 1a                	push   $0x1a
409920:	5a                   	pop    %edx
409921:	8b cb                	mov    %ebx,%ecx
409923:	e8 3d e7 ff ff       	call   0x408065
409928:	85 c0                	test   %eax,%eax
40992a:	74 0a                	je     0x409936
40992c:	68 00 2a 40 00       	push   $0x402a00
409931:	e9 0c 09 00 00       	jmp    0x40a242
409936:	8b 7d d0             	mov    -0x30(%ebp),%edi
409939:	8b 47 0c             	mov    0xc(%edi),%eax
40993c:	85 c0                	test   %eax,%eax
40993e:	74 36                	je     0x409976
409940:	83 f8 04             	cmp    $0x4,%eax
409943:	74 0a                	je     0x40994f
409945:	68 00 2a 40 00       	push   $0x402a00
40994a:	e9 a9 fa ff ff       	jmp    0x4093f8
40994f:	85 c0                	test   %eax,%eax
409951:	74 23                	je     0x409976
409953:	8b 4e 10             	mov    0x10(%esi),%ecx
409956:	ba 48 35 40 00       	mov    $0x403548,%edx
40995b:	e8 b4 d9 ff ff       	call   0x407314
409960:	ff 37                	push   (%edi)
409962:	8b ce                	mov    %esi,%ecx
409964:	e8 2a eb ff ff       	call   0x408493
409969:	8b 4e 10             	mov    0x10(%esi),%ecx
40996c:	ba 60 35 40 00       	mov    $0x403560,%edx
409971:	e8 9e d9 ff ff       	call   0x407314
409976:	8d 45 d0             	lea    -0x30(%ebp),%eax
409979:	50                   	push   %eax
40997a:	8d 45 bc             	lea    -0x44(%ebp),%eax
40997d:	50                   	push   %eax
40997e:	51                   	push   %ecx
40997f:	6a 19                	push   $0x19
409981:	5a                   	pop    %edx
409982:	8b cb                	mov    %ebx,%ecx
409984:	e8 dc e6 ff ff       	call   0x408065
409989:	85 c0                	test   %eax,%eax
40998b:	74 0a                	je     0x409997
40998d:	68 2c 2a 40 00       	push   $0x402a2c
409992:	e9 ab 08 00 00       	jmp    0x40a242
409997:	8b 7d d0             	mov    -0x30(%ebp),%edi
40999a:	8b 47 0c             	mov    0xc(%edi),%eax
40999d:	85 c0                	test   %eax,%eax
40999f:	74 45                	je     0x4099e6
4099a1:	83 f8 01             	cmp    $0x1,%eax
4099a4:	74 0a                	je     0x4099b0
4099a6:	68 2c 2a 40 00       	push   $0x402a2c
4099ab:	e9 48 fa ff ff       	jmp    0x4093f8
4099b0:	85 c0                	test   %eax,%eax
4099b2:	74 32                	je     0x4099e6
4099b4:	8b 4e 10             	mov    0x10(%esi),%ecx
4099b7:	ba 7c 35 40 00       	mov    $0x40357c,%edx
4099bc:	e8 53 d9 ff ff       	call   0x407314
4099c1:	33 c0                	xor    %eax,%eax
4099c3:	ba 80 24 40 00       	mov    $0x402480,%edx
4099c8:	39 07                	cmp    %eax,(%edi)
4099ca:	75 05                	jne    0x4099d1
4099cc:	ba 8c 24 40 00       	mov    $0x40248c,%edx
4099d1:	8b 4e 10             	mov    0x10(%esi),%ecx
4099d4:	e8 3b d9 ff ff       	call   0x407314
4099d9:	8b 4e 10             	mov    0x10(%esi),%ecx
4099dc:	ba a8 35 40 00       	mov    $0x4035a8,%edx
4099e1:	e8 2e d9 ff ff       	call   0x407314
4099e6:	8d 45 d0             	lea    -0x30(%ebp),%eax
4099e9:	50                   	push   %eax
4099ea:	8d 45 bc             	lea    -0x44(%ebp),%eax
4099ed:	50                   	push   %eax
4099ee:	51                   	push   %ecx
4099ef:	6a 0b                	push   $0xb
4099f1:	5a                   	pop    %edx
4099f2:	8b cb                	mov    %ebx,%ecx
4099f4:	e8 6c e6 ff ff       	call   0x408065
4099f9:	85 c0                	test   %eax,%eax
4099fb:	74 0a                	je     0x409a07
4099fd:	68 88 2a 40 00       	push   $0x402a88
409a02:	e9 3b 08 00 00       	jmp    0x40a242
409a07:	8b 7d d0             	mov    -0x30(%ebp),%edi
409a0a:	8b 47 0c             	mov    0xc(%edi),%eax
409a0d:	85 c0                	test   %eax,%eax
409a0f:	0f 84 8a 00 00 00    	je     0x409a9f
409a15:	83 f8 04             	cmp    $0x4,%eax
409a18:	74 0a                	je     0x409a24
409a1a:	68 88 2a 40 00       	push   $0x402a88
409a1f:	e9 d4 f9 ff ff       	jmp    0x4093f8
409a24:	85 c0                	test   %eax,%eax
409a26:	74 77                	je     0x409a9f
409a28:	8b 4e 10             	mov    0x10(%esi),%ecx
409a2b:	ba d8 35 40 00       	mov    $0x4035d8,%edx
409a30:	e8 df d8 ff ff       	call   0x407314
409a35:	ff 37                	push   (%edi)
409a37:	8b ce                	mov    %esi,%ecx
409a39:	e8 55 ea ff ff       	call   0x408493
409a3e:	8b 4e 10             	mov    0x10(%esi),%ecx
409a41:	ba fc 35 40 00       	mov    $0x4035fc,%edx
409a46:	e8 c9 d8 ff ff       	call   0x407314
409a4b:	83 7d c8 01          	cmpl   $0x1,-0x38(%ebp)
409a4f:	75 4e                	jne    0x409a9f
409a51:	8d 45 d0             	lea    -0x30(%ebp),%eax
409a54:	50                   	push   %eax
409a55:	8d 45 bc             	lea    -0x44(%ebp),%eax
409a58:	50                   	push   %eax
409a59:	51                   	push   %ecx
409a5a:	6a 0c                	push   $0xc
409a5c:	5a                   	pop    %edx
409a5d:	8b cb                	mov    %ebx,%ecx
409a5f:	e8 01 e6 ff ff       	call   0x408065
409a64:	85 c0                	test   %eax,%eax
409a66:	74 0a                	je     0x409a72
409a68:	68 cc 2a 40 00       	push   $0x402acc
409a6d:	e9 d0 07 00 00       	jmp    0x40a242
409a72:	8b 4d d0             	mov    -0x30(%ebp),%ecx
409a75:	8b 41 0c             	mov    0xc(%ecx),%eax
409a78:	85 c0                	test   %eax,%eax
409a7a:	74 23                	je     0x409a9f
409a7c:	83 f8 02             	cmp    $0x2,%eax
409a7f:	74 0a                	je     0x409a8b
409a81:	68 cc 2a 40 00       	push   $0x402acc
409a86:	e9 6d f9 ff ff       	jmp    0x4093f8
409a8b:	85 c0                	test   %eax,%eax
409a8d:	74 10                	je     0x409a9f
409a8f:	ff 31                	push   (%ecx)
409a91:	68 28 36 40 00       	push   $0x403628
409a96:	56                   	push   %esi
409a97:	e8 ac e8 ff ff       	call   0x408348
409a9c:	83 c4 0c             	add    $0xc,%esp
409a9f:	8d 45 d0             	lea    -0x30(%ebp),%eax
409aa2:	50                   	push   %eax
409aa3:	8d 45 bc             	lea    -0x44(%ebp),%eax
409aa6:	50                   	push   %eax
409aa7:	51                   	push   %ecx
409aa8:	6a 12                	push   $0x12
409aaa:	5a                   	pop    %edx
409aab:	8b cb                	mov    %ebx,%ecx
409aad:	e8 b3 e5 ff ff       	call   0x408065
409ab2:	85 c0                	test   %eax,%eax
409ab4:	74 0a                	je     0x409ac0
409ab6:	68 10 2b 40 00       	push   $0x402b10
409abb:	e9 82 07 00 00       	jmp    0x40a242
409ac0:	8b 7d d0             	mov    -0x30(%ebp),%edi
409ac3:	8b 47 0c             	mov    0xc(%edi),%eax
409ac6:	85 c0                	test   %eax,%eax
409ac8:	74 52                	je     0x409b1c
409aca:	83 f8 02             	cmp    $0x2,%eax
409acd:	74 0a                	je     0x409ad9
409acf:	68 10 2b 40 00       	push   $0x402b10
409ad4:	e9 1f f9 ff ff       	jmp    0x4093f8
409ad9:	85 c0                	test   %eax,%eax
409adb:	74 3f                	je     0x409b1c
409add:	8b 17                	mov    (%edi),%edx
409adf:	b9 a0 11 41 00       	mov    $0x4111a0,%ecx
409ae4:	e8 76 40 00 00       	call   0x40db5f
409ae9:	89 45 c8             	mov    %eax,-0x38(%ebp)
409aec:	85 c0                	test   %eax,%eax
409aee:	75 08                	jne    0x409af8
409af0:	52                   	push   %edx
409af1:	6a 14                	push   $0x14
409af3:	e9 02 f9 ff ff       	jmp    0x4093fa
409af8:	8b 4e 10             	mov    0x10(%esi),%ecx
409afb:	ba 74 36 40 00       	mov    $0x403674,%edx
409b00:	e8 0f d8 ff ff       	call   0x407314
409b05:	ff 75 c8             	push   -0x38(%ebp)
409b08:	8b ce                	mov    %esi,%ecx
409b0a:	e8 84 e9 ff ff       	call   0x408493
409b0f:	8b 4e 10             	mov    0x10(%esi),%ecx
409b12:	ba 98 36 40 00       	mov    $0x403698,%edx
409b17:	e8 f8 d7 ff ff       	call   0x407314
409b1c:	8d 45 d0             	lea    -0x30(%ebp),%eax
409b1f:	50                   	push   %eax
409b20:	8d 45 bc             	lea    -0x44(%ebp),%eax
409b23:	50                   	push   %eax
409b24:	51                   	push   %ecx
409b25:	6a 11                	push   $0x11
409b27:	5a                   	pop    %edx
409b28:	8b cb                	mov    %ebx,%ecx
409b2a:	e8 36 e5 ff ff       	call   0x408065
409b2f:	85 c0                	test   %eax,%eax
409b31:	74 0a                	je     0x409b3d
409b33:	68 54 2b 40 00       	push   $0x402b54
409b38:	e9 05 07 00 00       	jmp    0x40a242
409b3d:	8b 7d d0             	mov    -0x30(%ebp),%edi
409b40:	8b 47 0c             	mov    0xc(%edi),%eax
409b43:	85 c0                	test   %eax,%eax
409b45:	74 36                	je     0x409b7d
409b47:	83 f8 04             	cmp    $0x4,%eax
409b4a:	74 0a                	je     0x409b56
409b4c:	68 54 2b 40 00       	push   $0x402b54
409b51:	e9 a2 f8 ff ff       	jmp    0x4093f8
409b56:	85 c0                	test   %eax,%eax
409b58:	74 23                	je     0x409b7d
409b5a:	8b 4e 10             	mov    0x10(%esi),%ecx
409b5d:	ba c0 36 40 00       	mov    $0x4036c0,%edx
409b62:	e8 ad d7 ff ff       	call   0x407314
409b67:	ff 37                	push   (%edi)
409b69:	8b ce                	mov    %esi,%ecx
409b6b:	e8 23 e9 ff ff       	call   0x408493
409b70:	8b 4e 10             	mov    0x10(%esi),%ecx
409b73:	ba e8 36 40 00       	mov    $0x4036e8,%edx
409b78:	e8 97 d7 ff ff       	call   0x407314
409b7d:	8d 45 d0             	lea    -0x30(%ebp),%eax
409b80:	50                   	push   %eax
409b81:	8d 45 bc             	lea    -0x44(%ebp),%eax
409b84:	50                   	push   %eax
409b85:	51                   	push   %ecx
409b86:	6a 13                	push   $0x13
409b88:	5a                   	pop    %edx
409b89:	8b cb                	mov    %ebx,%ecx
409b8b:	e8 d5 e4 ff ff       	call   0x408065
409b90:	85 c0                	test   %eax,%eax
409b92:	74 0a                	je     0x409b9e
409b94:	68 80 2b 40 00       	push   $0x402b80
409b99:	e9 a4 06 00 00       	jmp    0x40a242
409b9e:	8b 7d d0             	mov    -0x30(%ebp),%edi
409ba1:	8b 47 0c             	mov    0xc(%edi),%eax
409ba4:	85 c0                	test   %eax,%eax
409ba6:	74 36                	je     0x409bde
409ba8:	83 f8 04             	cmp    $0x4,%eax
409bab:	74 0a                	je     0x409bb7